タグ

ブックマーク / qiita.com/momotaro98 (2)

  • なぜGo言語の正規表現は遅いと言われるの? - Qiita

    はじめに Goの正規表現は遅いと言われていることが以前から疑問だったので調査してみました。 こちらの記事やこちらの記事を拝見する限り ① 現実的なユースケース(例えばURLのパースなど)ではGo言語の正規表現は使うべきではなく、stringsパッケージの標準の関数を利用した方がパフォーマンスとしては良い。 ② Go言語で正規表現を利用するために必要な"正規表現オブジェクト"を並行にアクセスするにはパフォーマンスが問題になるので注意が必要。 とあります。その理由は、それぞれ以下に集約できるようです。 ① Go言語標準の正規表現ライブラリは、正規表現と検査文字列の長さに対して常に$O(n^2)$のオーダーで計算量が増加する安定したアルゴリズムを採用している。 ② "正規表現オブジェクト"を用いたマッチング処理には排他制御が行われている。 調べてみる Go言語のpkg/regexpの公式ドキュメ

    なぜGo言語の正規表現は遅いと言われるの? - Qiita
  • VagrantのプロビジョニングにAnsibleを利用する設定手順 - Qiita

    はじめに Ansible実行をVagrantから行うための設定方法のメモです 参考: Vagrant公式ドキュメント 分けて起動する場合 $ vagrant up $ ansible-playbook -i hosts site.yml --sudo -k ※ -i: Inventoryファイルを指定する ※ hosts: Inventoryファイル ※ site.yml: play-bookファイル ※ -kオプション: SSH のパスワードを尋ねる(プロンプトが出る) Vagrantから直接プロビジョニングする場合 Ansible用プロビジョニング設定をVagrantfileへ Vagrant.configure(2) do |config| config.vm.define "web" do |node| node.vm.box = "centos/7" node.vm.hostna

    VagrantのプロビジョニングにAnsibleを利用する設定手順 - Qiita
  • 1