同期について - Printable Version +- Curl Global Community (https://communities.curl.com) +-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1) +--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2) +--- Thread: 同期について (/showthread.php?tid=958) |
同期について - okm - 08-21-2013 こんにちは。 Curlの同期制御(キャッシュ)について、2点質問があります! 1. resync-as-of に設定した日付をその日付より過去に戻しても再同期されるか 現在、start.curlに以下のように同期の処理を記述しています。 {applet manifest = "manifest.mcurl", resync-as-of = {utc-date-time "2020-12-31"} } これで基本的にすべてのファイルをキャッシュと比較し、新しいファイルは同期すると思っています。 このresync-as-ofの日付を、一旦"2013-08-22" とかに変更(つまり未来日付指定でデプロイしたファイルをその日付より過去日指定で再デプロイする)したとしても、 "2013-08-22" までは、すべての新しいファイルを再同期しますよね? あくまで、resync-as-of に指定した日付にクライアントのキャッシュ日付が追いつくまではすべてのファイルをキャッシュと比較、ということですよね? 2.resync-as-ofの指定に時間がない場合でも、ファイルのタイムスタンプまで確認して再同期するか クライアントのキャッシュの日付が 2013/08/12/17:10:00 だとします。 サーバ上のファイルのタイムスタンプが 2013/08/12/17:20:00 だとします。 resync-as-ofの指定は"2020-12-31" と日付のみの指定で時間まで指定がなかった場合でも、きちんと時間をみてサーバ上のファイルをDLしてくれますよね? つらつらと書き連ねました。わかりにくかったら申し訳ありません。 IDEドキュメントをみると、おそらく未来日付にする使い方は推奨外なのでしょうか・・。 RE: 同期について - twada - 08-29-2013 okmさん こんにちは。私のほうで実際に試してみました。 1. resync-as-of に設定した日付をその日付より過去に戻しても再同期されるか 同期されるようです。ただしドキュメントにもあるように、http://xxx/start.curl で起動した場合は、start.curl自体が HTTPキャッシュされているため、変更したら、たとえばIEならばインターネットオプションでインターネット一時ファイルを削除しないと 変更は有効にならないようですね。 > 1. HTTP キャッシュ は、HTTP プロトコル (たとえば、プレフィックスが "http:" や "https:" の URL) を使用してダウ >ンロードされたすべてのコンテンツに影響します。 (省略) Windows では、Curl RTE は Internet Explorer と同じ >HTTP キャッシュを使用し (アプレットが Mozilla Firefox などの異なるブラウザでロードされる場合であっても)、 >コントロール パネルの [インターネットのプロパティ] でユーザーが設定したインターネット一時ファイルの設定の影響を受けます。 2.resync-as-ofの指定に時間がない場合でも、ファイルのタイムスタンプまで確認して再同期するか resync-as-of の指定が時間まで指定していなくても更新されました。 ドキュメントには、resync-as-of については以下のように記述があるので、 > 同期の制御に resync-as-of コマンドの使用は推奨しません。 何故なら、これは更新が難しく、クライアントとサーバー > 間の時刻の差に 適合できないからです。遠い将来の日付を設定することで、常にアプレットの 同期を強制するような場 > 合には、便利です。 常に同期を強制したい場合に使うのがよいのでしょうね。 RE: 同期について - okm - 08-30-2013 twadaさま ありがとうございます。 外出先でCurlを利用する環境で、どのようにすれば 通信負担が少なくなるのか検討しているのです。 通常利用であれば、更新ファイルを必ず更新できるように未来日付を指定しているのですが やはり更新ファイルだけチェックさせるためには、更新ファイルのタイムスタンプと同じにした方がよさそうですね。 ありがとうございました。 |