1

Milton WebDav を使用して、最終的には IaaS としてクラウド環境 (ほとんどの場合 Azure) にデプロイされる Web アプリケーションでファイルを転送したいと考えています。これで、WebDAV 標準はステートレスであるため、クラウド ロード バランサーで問題が発生することはないはずですが、Milton については不明であり、いくつか質問があります。

1.) Milton は WebDAV をそのまま実装していますか? すべての通信はステートレスのままですか? すべてのリクエストで認証トークンを渡すと思いますが、トークンがサーバーのどこに保存されているかわかりませんか? それはデータベースまたは何らかのキャッシュなどに保存されますか?

2.) 負荷分散が使用され、負荷を処理するサーバーが 5 ~ 6 台ある場合、ロック メカニズムは正常に機能しますか? Milton サーバーは Lock Token をどこに保存しますか?

4

2 に答える 2

1

コメントが遅れて申し訳ありません。ロード バランシングに影響を与える webdav の 2 つの最も重要な側面は、ダイジェスト認証トークン (ノンス値) とロック トークンです。

リソースの実装者として、これらの両方を制御できます。ロック トークンは通常、データベースに格納されます (永続化を行う LockableResource にメソッドを実装する必要があります)。サーバー間で共有されますが、メモリ ベースのロック トークンを使用することは珍しくありません。その情報をサーバー間で共有します。

ダイジェストナンスは、DigestResource を実装している場合にのみ考慮する必要があります。デフォルトの NonceProvider は単純な HashMap を使用するため、これはサーバー間で共有されません。ただし、インターフェイスは簡単なので、データベース ストアを簡単に実装できます。負荷分散ソリューションがスティッキー セッションを使用する場合、クライアントは nonce を持つサーバーにアクセスするため、問題にはなりません。

webdav クライアントは通常 Cookie をサポートしていないため、Tomcat セッション レプリケーションは上記の問題には役立たないことに注意してください。そのため、サーブレット セッションはありません。

于 2012-06-07T00:33:25.043 に答える
0

これまで Milton WebDAV を使用したことはありませんが、その外観から、サーバー上のファイルを変更および編集するために使用されます。

ただし、Azure のローカル ストレージは共有されません。各インスタンスは完全に独立したサーバーです。1 つのサーバーでファイルを変更しても、次のサーバーには複製されません。

Azure は、デプロイ パッケージをアップロードすることで機能します。新しいインスタンスを起動する必要がある場合、展開パッケージを使用して完全に新しいサーバーを起動します。

あなたの観点から、彼らは共通点を共有していません。このため、どのサーバーにアクセスしているのかわかりません。

背後に共有ファイル ストレージ システムがある場合は、話が異なる可能性があります。ただし、そのシナリオは Azure を使用していると奇妙に見えます。ただし、共有 EBS を備えた Amazon EC2 はそれを行う可能性があります。

于 2012-04-07T13:09:36.413 に答える