問題タブ [nfs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1509 参照

php - PHPを使用してNFSに解凍するときの速度が遅いのですが、どうすれば速度を上げることができますか?

NFSの速度とPHPのアップロードを向上させる方法を見つけようとしています。

  1. ファイルはWebサーバーのローカルtmpディレクトリにアップロードされます

  2. PHPを使用して、ファイルuserxxx.zipをNFSにコピーします

  3. PHPを使用して、NFSのuserxxx.zipをNFSの別のディレクトリに抽出します。

私が見つけたのは、ファイルがステップ3にあり、ファイルがWebサーバーによってNFSを介して読み取られ、Webサーバーによって処理され、NFSを介してアップロードされていることです。

予想通りの速度は非常に遅いです。

考えられる解決策は、ファイルサーバーにzipを抽出させることでしょうか?a)WebサーバーがファイルをNFSにコピーしますb)Webサーバーがファイルサーバーに対してWebサービス呼び出しを行いますc)ファイルサーバーがファイルをローカルのように解凍できるようになり、速度が大幅に向上するはずです。

人々がこの問題にどのように取り組んだか、誰かに提案をいただければ幸いです。

(php ZipArchive()は非常に遅いことを認識しており、Javaまたはphp exec unzipを使用して高速化する可能性があります)

ありがとう

0 投票する
1 に答える
532 参照

linux - nfsを介したtclスクリプトでのsqliteの使用(または.. nfsを介して実行できるスタンドアロンのsqlite3の作成方法)

sqlite データベースを既存の tcl アプリケーション (フラット ファイルから移行) に埋め込みたいと考えています。

現在; 私たちの Tcl インタープリターはネットワーク上の場所から実行されます。<nfs share>/bin/tclsh8.3

$PATHすべてのユーザーに対して実行可能ファイルの nfsを既に設定しています。そこにスタンドアロンの sqlite3 実行可能ファイルを配置できると想定しています。ただし、ローカルの lib に依存しない sqlite をコンパイルする簡単な方法はまだ見つかっていません... (すべての Linux クライアントで、red Hat 9 から ubuntu 10.04 までのすべてを実行しています)

nfs tcl インストールで使用できる sqlite3 スタンドアロン バイナリを構築する際に、正しい方向に私を突き刺すことができる人はいますか?

0 投票する
4 に答える
965 参照

java - 単一の場所からのプロパティファイルの共有

JavaEnterpriseアプリケーションを複数のサーバーにデプロイしています。負荷分散するために同じアプリケーションを実行している複製サーバーがあります(それらをJ2EEサーバーと呼びましょう)。これはクラスター化されていないことに注意してください。

すべてのアプリケーションに関連するすべてのプロパティファイルをホストする共通サーバー(propsサーバーと呼びましょう)があります。プロパティファイルを含むフォルダーは、他のすべてのJ2EEサーバー間で共有されるNFSです。問題は、propsサーバーが単一障害点であることがわかることです。それが起動しなかった場合、またはNFS共有が破損した場合、他のサーバーはプロパティをロードできません。

この厳しい依存関係を回避するためのオプションは何ですか?プロパティファイルをすべてのサーバーに複製したくないという制約があります。

0 投票する
1 に答える
3297 参照

java - NFS ドライブ上の Java ファイルの削除

NFS ドライブ上のファイルを削除しようとしています。

ファイルの移動など、リモートドライブ上のファイルを操作する際に他の問題が発生しましたが、従来の方法、つまりrenameFileを使用せずに、代わりに入力ストリームと出力ストリームを適切に使用することで回避しました。

ただし、 File.delete() を使用すると false が返され、apache commons io FileUtils クラスの使用に関する提案を聞いたことがありますが、IO 例外がスローされるだけです。

javaを使用してネットワークにマウントされたドライブ上のファイルを削除する方法について、誰か提案はありますか?

0 投票する
2 に答える
4827 参照

python - Python スクリプトで NFS 共有がマウントされているかどうかを確認する

特定の NFS 共有が利用可能であることに依存する Python スクリプトを作成しました。NFS 共有がマウントされていない場合、ファイルはマウントされるべきローカル パスにコピーされますが、後で NFS サーバー上に作成されたファイルをコピーしようとすると失敗します。

このエラーを具体的にキャッチして、このスクリプトのユーザーに何をしなければならないかを伝える有用なエラー メッセージを出力できるようにしたいと思います。

私の最初のアイデアは、サブプロセスを使用してマウントを実行し、この nfs 共有の出力を確認することです。しかし、それを行うためのより適切で堅牢な方法がないかどうか疑問に思っています。

0 投票する
1 に答える
4461 参照

java - VM障害を引き起こすJavaマップ/nio/ NFSの問題:「コンパイルされたJavaコードでの最近の安全でないメモリアクセス操作で障害が発生しました」

java.nioのMappedByteBufferを使用してそれぞれ数GBのファイルを読み取る特定のバイナリ形式(興味がある場合はnfdump )のパーサークラスを作成しました。バイナリ形式は、一連のヘッダーとほとんどが固定サイズのバイナリレコードであり、nextRecord()を呼び出すことによって呼び出されたものにフィードされます。nextRecord()は、ステートマシンをプッシュし、完了するとnullを返します。それはうまく機能します。開発マシンで動作します。

私の本番ホストでは、数分または数時間実行できますが、常に「java.lang.InternalError:コンパイルされたJavaコードでの最近の安全でないメモリアクセス操作で障害が発生しました」をスローし、Map.getIntの1つを指しています。 、getShortメソッド、つまりマップの読み取り操作。

マップを設定する議論の余地のない(?)コードは次のとおりです。

次に、さまざまなmap.get *メソッドを使用して、ファイルの終わりに到達してマップを閉じる前に、shorts、ints、longs、およびその他のバイトシーケンスを読み取ります。

開発ホストで例外がスローされるのを見たことがありません。しかし、私の本番ホストと開発の違いの重要な点は、前者では、NFSを介してこれらのファイルのシーケンスを読み取っているということです(おそらく最終的には6〜8 TB、まだ成長しています)。私の開発マシンでは、ローカルでこれらのファイルの選択肢が少なくなっています(60GB)が、本番ホストで爆発した場合、通常は60GBのデータに到達するかなり前です。

両方のマシンはjava1.6.0_20-b02を実行していますが、本番ホストはDebian / lennyを実行していますが、開発ホストはUbuntu/karmicです。それが違いを生むとは思いません。どちらのマシンにも16GBのRAMが搭載されており、同じJavaヒープ設定で実行されています。

私のコードにバグがある場合、JVMには十分なバグがあり、適切な例外をスローしないと考えています。しかし、これは、NFSとmmapの間の相互作用による、特定のJVM実装のバグであり、公式に修正された6244515の再発である可能性があります。

私はすでに「load」呼び出しを追加して、MappedByteBufferにその内容をRAMにロードするように強制しようとしました。これは、私が行った1回のテスト実行でエラーを遅らせるように見えましたが、それを防ぐことはできませんでした。または、クラッシュする前に最も長くかかったのは偶然かもしれません!

これまで読んだことがあり、以前にjava.nioでこの種のことを行ったことがある場合、あなたの本能は何でしょうか?今のところ私のものはnioなしでそれを書き直すことです:)

0 投票する
2 に答える
406 参照

macos - root を必要とせずに Snow Leopard でファイル サーバー (おそらく NFSD) を起動しますか?

OS X アプリでループバック デバイスを介してファイルを共有したい。ユーザーのホームディレクトリをいじることなく、頻繁に変更される読み取り専用ファイルのディレクトリをアプリで作成できるように、これを行いたいと考えています。ファイルは Application Support ディレクトリから切り離されますが、ユーザーはこれを気にする必要はありません。

Apple は、これを行うために NFS サーバーを使用することを推奨しています (この Q&A の「代替手段」セクションを参照してください)。

http://developer.apple.com/mac/library/qa/qa2001/qa1242.html

私が知る限りnfsd、ルートとして実行する必要がありますが、これは避けたいと思います (アプリが起動するたびにユーザーにパスワードを要求するのは、ひどい UX になります)。

nfsdroot なしでインスタンスを起動することはできますか?

アプリに含めることができる代替 NFS サーバーはありますか? (どれも見つけられませんでした)

使用できる代替サーバーはありますか? (これらは Finder がマウントできるプロトコルであるため、サーバーは AFP、SMB、または WebDAV である必要があります。そのようなサーバーは見つかりませんでした)。

0 投票する
3 に答える
17949 参照

c - クライアント上のファイルの状態が NFS サーバーと同期していることを確認する

NFS クライアントで古いデータを処理する適切な方法を見つけようとしています。次のシナリオを検討してください。

  • 2 台のサーバーが同じ NFS 共有ストレージをファイル数とともにマウントします
  • 1 台のサーバー上のクライアント アプリケーションが一部のファイルを削除する
  • 2 台のサーバー上のクライアント アプリケーションが削除されたファイルにアクセスしようとすると、次のエラーで失敗します: 古い NFS ファイル ハンドル (何もおかしくない、エラーが予想されます)

(また、パフォーマンス上の理由から、両方のサーバーでキャッシュ マウント オプションがかなり高いことを知っておくと役立つ場合があります)。

私が理解しようとしているのは次のとおりです。

  • ファイルが存在することを確認する信頼できる方法はありますか? 上記のシナリオでは、ファイルの lstat は成功を返し、アプリケーションはファイルを移動しようとした後にのみ失敗します。
  • クライアント上のディレクトリの内容をサーバーと手動で同期するにはどうすればよいですか?
  • NFS の場合に信頼性の高いファイル管理コードを作成する方法に関する一般的なアドバイスはありますか?

ありがとう。

0 投票する
1 に答える
299 参照

unix - NFS ホーム / .profile / UNIX の 3 つのフレーバー: ベスト プラクティス?

UNIX の 3 つのフレーバー: Linux、Solaris、IRIX... 1 つの NFS マウント ホーム ディレクトリ。

接続している OS に基づいて (少し) 異なる .profile 動作をしたいと思います。一緒に何かをハックすることはできますが、必要がなければ車輪の再発明はしたくありません。

オペレーティング システムに基づいて .profiles セクションを分割するためのベスト プラクティスはありますか?

0 投票する
1 に答える
357 参照

linux - How to write reliable file management code on NFS

Please give me some general advises on how to write reliable file management code using NFS. How to avoid or handle ESTALE errors? Programming language doesn't really matter.

Thanks.