RomExやThreadEx、したらばBPのサーバーサイドのサービスを
Amazon EC2からGAE/J(Google App EngineのJava実行環境)に少し前に移行しました。
それからしばらくして気付いたのですが、
データがどこかでキャッシュされているらしく、取得先のデータが更新されても、
その最新データを取得できるようになるまでに時差がある事に気付きました。
Amazon EC2の時はhttpclientを使ってデータを取得していましたが、
GAE/Jではそれが使えないので、HttpURLConnectionを使ってデータを取得するように変更していました。
最初はそのせいなのかなと思い、setUseCaches(false)を設定して取得するように修正しましたが、
相変わらずキャッシュされてるっぽい少し古いデータが帰ってきます。
そこで、同じソースでローカルサーバやAmazon EC2でも動かしてみましたが、
それらでは常に最新データが返ってきます。
これでキャッシュされたデータが返ってくるのはGAE/Jだけと分かったので、
リクエストするURLの最後に「”?” + HHmmss(時分秒)」を付与してリクエストするように修正してみました。
そしたらやっと常に最新のデータがすぐに取得できるようになりました。
その辺の情報ってどこかにあるんですかね?
キャッシュするとかしないとか、するならどれくらいの時間なのかとか、
設定できるならその方がいいんですが。
まぁ、結果オーライです。
と言う事で、RomEx、ThreadEx、したらばBPのサーバーサイドサービスは最新データがすぐに取得出来るように更新しました。
と思っていたら、どうやらFlash Playerのバグらしいです。
対策方法を↓で見つけました。
・マウスホイールのイベントがFirefoxで2倍になる件
http://deko.junka.net/2009/02/firefox2.html
これは全てのアプリに適用しなければ・・・。
今しばらくお待ち下さい。
ちなみにMacのFlash Playerではマウスホイールでスクロール自体しないらしい(持っていないから検証できない)のですが、
それは一応対策済みです。
参照:http://www.riaservice.com/?p=117
しかし、スレッド表示欄に使用しているTextAreaではスクロールできないらしいです。(未確認情報)
ごめんなさい。
その代わりに[↑]キーと[↓]キーでスクロールするようにしてあるので、それで代用して頂ければと思います。
RomExとThreadExには、その内、したらばBPのように[一番上]、[一番下]、[更新]のそれぞれのボタンアイコンを付ける予定です。
気長にお待ち下さい。。。
お気づきの点、ご質問、ご要望などありましたら、お気軽に書き込んで下さい。
但し、必ずしも、ご質問・ご要望などにお答え出来るかどうかは分かりませんので、
ご了承をお願いします。
「Flash Player 10.1」発表、携帯端末でもFlashがフルに動作
http://internet.watch.impress.co.jp/docs/news/20091005_319703.html
アドビ、「Flash Player 10.1」を発表–スマートフォンやネットブックに対応
http://japan.zdnet.com/news/software/story/0,2000056195,20401073,00.htm
これでFlexで開発したPC向けのアプリが、そのままスマートフォンやテレビなどのデジタル家電で動くようになるのかな?
AppleのiPhoneはまだ決まってないみたいなので、残念。