- - PR -
Tomcat or Apache DNSのキャッシュ機能
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-10-20 11:19
はじめまして、こんにちは。
プラットフォームはRedHat Linux8でApache2系とTomcat5系でwwwサーバを構築しています。 外部ファイルで定義しているホスト名をJavaで取得して、別のホストからリソースを取得していたのですが、DNS上の該当ホストのIPアドレスを一時的に変更した際、自動的に新しい参照先へ切り替えることができませんでした。 尚、hostsファイルには参照先は存在していません。 Linux上でnslookupコマンドを実行したところ正常に検索できました。 そこで質問なのですが、TomcatもしくはApacheにホスト名とIPをマッピングするキャッシュ機能みたいなものは存在するのでしょうか? | ||||
|
投稿日時: 2006-10-20 12:36
これは同じホスト名宛にアクセスしに行ったらタイムアウトしたということでしょうか?。 | ||||
|
投稿日時: 2006-10-20 15:49
>これは同じホスト名宛にアクセスしに行ったらタイムアウトしたということでしょうか?
その通りです。 同じホスト名宛てにアクセスしにいったら、変更する前のIPアドレスを参照しているようでした。 何かご存知でしたらご教授ください。 | ||||
|
投稿日時: 2006-10-20 17:35
・初めにIPアドレスを取得した値をそのまま使っている
・初めに接続したホストとコネクションを張りっぱなしにして使っている とかの可能性はどうですかね。繋ぎに行く度にソケットとかの接続から やっているのならばそういったことは無いと思うんですけど。 ところで、外部ファイルで定義しているホスト名を使って通信しているのは、 サーブレット上から?それとも普通のJavaプログラムから?のどちらなんで しょうかね。サーブレットからかなとも思いますが・・・。 | ||||
|
投稿日時: 2006-10-20 18:52
JREのプロパティで「networkaddress.cache.ttl」をいじってみては如何でしょうか。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/net/properties.html | ||||
|
投稿日時: 2006-10-20 19:18
networkaddress.cache.ttl networkaddress.cache.negative.ttl これは知らなかった、勉強になりました。 | ||||
|
投稿日時: 2006-10-23 15:27
小僧さん、poittoさん、大変参考になるレス本当にありがとうございました。
まだ、検証はできていないのですが、貴重なご意見を参考にしてもう一度原因を探ってみたいと思います。 >・初めにIPアドレスを取得した値をそのまま使っている >・初めに接続したホストとコネクションを張りっぱなしにして使っている DNS上の該当ホストのIPアドレスを一時的に変更した際、 Tomcat(Webアプリ)も再起動をしているのでコネクションを張りっぱなしはないと思われます。。 >ところで、外部ファイルで定義しているホスト名を使って通信しているのは、 >サーブレット上から?それとも普通のJavaプログラムから?のどちらなんで >しょうかね。サーブレットからかなとも思いますが・・・。 サーブレット上からです。 ちなみに外部ファイルはプロパティファイルです。 >JREのプロパティで「networkaddress.cache.ttl」をいじってみては如何でしょうか。 同じく大変勉強になります。 可能性として高いので早速試してみたいと思います。 |
1