KimuraTweetこんにちは。リスペクトの木村です。「synced_folder」の話をお送りします。http://docs.vagrantup.com/v2/synced-folders/index.html簡単に説明すると、ローカルのフォルダを仮想環境の任意のパスにマウントする機能です。いちいち転送する必要がなくなり、スムーズに直接確認することが出来ます。してマウントされます。設定する事で、それとは別に任意でマウントさせる事が可能です。時にマウントされるようになります。場合、ローカルのパスの¥マーク(ディレクトリの区切り文字)を2重にする必要があるので注意が必要です。C:\\hogehoge\\hugahuga更に下記のようなオプションが指定でき、権限回りの設定などが変更できます。すると、マウント先が存在しない場合は作成します。するとマウントしません。マウントするファイル/フォルダの所有グループ名を設定できます。コマンドのオプションを指定できます。マウントするファイル/フォルダの所有グループ名を設定できます。マウントに使用するタイプを指定します。有効にする場合はこんな感じで指定します。タイプオプションの一覧表にあった「type」をもう少し詳しく掘り下げたいと思います。オプションを指定すると、ファイルのやりとりに使用するタイプを変更できます。時点では使用できるタイプが4種類存在しますので、それぞれの特徴を紹介します。(カッコ内は利用可能なOSです。共有フォルダ機能を使用してやりとりを行います。導入されている必要があります。)にしている場合は、この方式がデフォルトで使用されます。最小限の設定のみで使えるのですが、他に比べて遅いというデメリットがあります。マウント先を設定している場合など、頻繁に読み書きが発生する環境下ではその影響が現れやすいです。サーバ経由でファイルを確認すると更新されていないように見える場合があるため、事前に下記の設定をサーバのコンフィグファイルに記述しておく必要があります。大まかに言うと「サーバからファイルを送信するときに、ファイルが更新されていなければキャッシュから送信する」機能です。なっていると、ファイルが更新されたという通知が行き渡らないため、そのままキャッシュの内容を送信してしまう、という現象が発生します。デフォルトでは有効(on)になっているので、明示的に無効にするよう指定します。ファイルへ直接読み書きする頻度が増えますが、開発環境であれば気にならないレベルだと思います。“/hogehoge/hugahuga”※固有のオプションは存在しません。)の仕組みを利用して通信します。遅いという場合の解決策としてよく取り上げられています。デフォルトで使用されます。Windows.と、ドキュメントにありますので利用できません。設定しても無視され、デフォルトのタイプが利用されます。ついての知識が無いと設定に苦労すると思います。場合もデフォルトでは有効になっていないため、nfsdの起動/自動起動の設定や/etc/exportsを作成しておく必要があります。いくつか設定を追加する事で回避できます。“nfs”NFSの場合、次のオプションが利用できます。設定を書き込みません。すると、UDPを使用して通信します。NFSのプロトコルバージョンを指定できます。)を利用してファイルをやりとりします。実行したタイミングでフォルダの内容が同期されます。いうコマンドを実行する事で自動で同期してくれます。設定により、自動同期からファイルやフォルダを除外する事も可能です。実行していない限り自動的に同期しないという所があります。設定を解除して再度起動すると、同期先には同期した内容がそのまま残っています。導入が推奨されています。次の記述を追記しないとエラーになります。利用している」となるように変更します。場合、次のオプションが利用できます。他と違ってアンダースコア(_)が2つあります。コマンドに渡すオプションを指定できます。監視対象から除外されます。よる所有者の変更を行いません。同期から除外するファイルやフォルダを指定できます。)を利用して通信します。パフォーマンスは良くなります。ログイン情報だけという手軽さですが、他の方法に比べて通信が不安定という重大な欠点も・・・。マウントするには次の条件が必要です。)」を別途インストールする必要があります。2.2管理者として実行するには、スタートメニューから実行する時に、右クリックから「管理者として実行」を選択して起動します。管理者ではない状態で起動すると、起動途中で次のようにエラー表示になります。場合、次のオプションが利用できます。アドレスを指定できます。マウントに使用するアカウントのパスワードを指定します。マウントに使用するアカウントのユーザー名を指定します。どちらか一方でも指定されていない場合は、起動の度にユーザー名とパスワードを入力する必要があります。ユーザー名にスペースが含まれている場合はちょっとした工夫が必要です。Kimura”‘」と、シングルクオーテーションで括って更にダブルクオーテーションで括る必要があります。Kimura”」のように、ダブルクオーテーションで括るように入力します。コマンドに渡しているようなので、スペースが含まれているとエラーになります。そのため、ダブルクオーテーションで囲って回避する必要があります。パフォーマンス比較では、設定する方式によってパフォーマンスにどれぐらい差が出るのか実際に計測してみます。除く3種類(VirtualBox/rsync/SMB)で比較します。使用できないため除外)今回は以下のような環境で検証しています。http://localhost/」で、同時ユーザー数30・5リクエスト・1分間の連続負荷、という条件です。実行すると、以下のような結果になりました。siegeの最後に出力される実行結果を、種別・項目ごとに表にしてまとめました。早いのがよく分かります。比べてみると倍以上の差がありますので圧倒的です。rsyncの場合はローカルを参照しているので早いのは当たり前ですが、予想以上に差が開きました。近い値を示しているのでパフォーマンスは良いです。86%ほどと不安定さがよく現れています。ステータスコードを返していました。GETアクセスするタイミングによって、毎度リソースが読み込めたり読み込めなかったり・・・ということが起こっているようです。アプリケーションのマウント先としてはあまり向かなそうです。使う上で一番現実的な移行先ではないかと思います。導入が若干大変ですが・・・。不安定さが足を引っ張ってしまい、残念ながら今の所は出番は無さそうです・・・。今後の改善に期待したいと思います。探し、より快適な環境を目指してみてはいかがでしょうか。navigation【導入決定!】PHP7で実装されるスカラー型宣言とは?メール回りのテストやデバッグには「MailCatcher」が便利ですぞ株式会社リスペクトという、仙台・東京に拠点を持つ会社のシステム部門のブログです。プログラミングやシステム運用のノウハウなどを公開していきます。