URLConnectionのDNSキャッシュ
URLConnectionを使用したプログラムは良く見かけますが、
使うにあたりDNSについてがあまりなかった。
ちょうど、ネットワークの不調でURLConnectionが
ずっとTimeoutになっていたので調べてみた。
// DNS検索に成功した場合のキャッシュしておく秒数
Security.setProperty("networkaddress.cache.ttl","60");
// DNS検索に失敗した場合のキャッシュしておく秒数
Security.setProperty("networkaddress.cache.negative.ttl","10");
上記コードを組み込んだのはいいが、うまく制御できない・・・
う〜ん、Systemとかに設定しても一緒だった。
と小一時間ほど悩んで、java.securityの存在を思い出した。
%JAVA_HOME%/jre/lib/security/java.security
↑これで設定したばっちりうまくいった。
調子にのり、コマンドオプションでも一応試した。
ちなみに、コマンドオプションの場合は、
・networkaddress.cache.ttl ⇒ sun.net.inetaddr.ttl
・networkaddress.cache.negative.ttl ⇒ sun.net.inetaddr.negative.ttl
にキーを変更しないと駄目。
ってことで、
$root>java -Dsun.net.inetaddr.ttl=60
成功!GJ!
しかし、デフォルトでDNS検索成功時のキャッシュが無限ってどうなんだ・・・
拡張プラグイン一覧
会社、自宅でほとんど同じプラグインを入れているが、
とりあえずメモとして残しておく。
有効拡張機能: [27]
- BBCode 0.4.1.3
- BetterSearch 1.12
- CustomizeGoogle 0.49
- DOM Inspector 1.8.0.4
- FireBug 0.4
- Firefox Extension Backup Extension (FEBE) 2.0.1
- Firefox Showcase 0.5.8.2
- FireFoxMenuButtons 1.5.0
- GCalQuickTab 0.3.1
- Google Browser Sync 1.0.0.0
- Google Calendar Quick Add 1.5.6
- Google Notebook 1.0.0.5
- Greasemonkey 0.6.4
- IE Tab 1.0.9.5
- LinkPreview 2.1
- Linky 2.7.1
- Mouse Gestures 1.5
- MR Tech Local Install 5.0.4
- ScrapBook 1.0.6
- Tab X 0.9.2
- Tabbrowser Preferences 1.2.8.9
- Talkback 1.5.0.4
- Translate 0.6.0.9
- User Agent Switcher 0.6.8
- Viamatic foXpose 0.3
- ViewSourceWith 0.0.8
- Web Developer 1.0.2
無効拡張機能: [2]
- LiveHTTPHeaders 0.9
- SessionSaver .2 0.2.1.031
拡張機能の合計: 29
インストールテーマ: [3]
- Firefox (default)
- Mostly Crystal 1.5.0.16
- Noia 2.0 (eXtreme) 3.12
インストールプラグイン: (11)
- Adobe Acrobat
- Adobe ESD Manager Plugin
- Google Updater
- Java(TM) 2 Platform Standard Edition 5.0 Update 4
- MicrosoftR DRM
- Mozilla Default Plug-in
- PCMan's IE Tab Plug-in for Mozilla/Firefox
- QuickTime Plug-in 7.0.4
- Shockwave Flash
- Shockwave for Director
- Windows Media Player Plug-in Dynamic Link Library
気になったエントリー
■火星の人類学者―脳神経科医と7人の奇妙な患者
共感覚者の驚くべき日常―形を味わう人、色を聴く人 っていう本は読んだ
ことあるんだけど、本当に脳(神経系)は不思議ですね。
(ネタ元:情報考学 Passion For The Future)
■変わったアイコン
アイコン1つでイメージもがらっと違っていいね。
(ネタ元:.fav)
■Yahoo! Japan版SNS「Yahoo! 360°」ベータ版開始
どこもかしこもSNSですね。mixiやってるけど、2回/月くらいだし・・・
(ネタ元:オレンジニュース)
■Winnyで流出された陸上自衛隊ハンドブック「昆虫の食べ方」
小さい頃、ザリガニなら食べたことあるけど。
(ネタ元:オレンジニュース)
日付インスタンス生成の効率
毎日の日課として覗かせて頂いている、オレンジニュースに
Calendarを10万回getInstanceするよりも、Dateを10万回newする方が10〜30倍早い
なんてのが載っていました。
それで、とりあえず自分でも試してみました。
結果が以下です。
[1回]
new Date()=0 (ms)
Calendar.getInstance()=31 (ms)
new DateTime()=188 (ms)
[10回]
new Date()=0 (ms)
Calendar.getInstance()=16 (ms)
new DateTime()=0 (ms)
[100回]
new Date()=0 (ms)
Calendar.getInstance()=0 (ms)
new DateTime()=0 (ms)
[1000回]
new Date()=0 (ms)
Calendar.getInstance()=15 (ms)
new DateTime()=0 (ms)
[10000回]
new Date()=0 (ms)
Calendar.getInstance()=47 (ms)
new DateTime()=0 (ms)
[100000回]
new Date()=31 (ms)
Calendar.getInstance()=266 (ms)
new DateTime()=47 (ms)
[1000000回]
new Date()=250 (ms)
Calendar.getInstance()=2531 (ms)
new DateTime()=469 (ms)
[10000000回]
new Date()=2374 (ms)
Calendar.getInstance()=25390 (ms)
new DateTime()=4546 (ms)
[100000000回]
new Date()=24452 (ms)
Calendar.getInstance()=274375 (ms)
new DateTime()=45154 (ms)
eclipseでテストしましたが、1回は起動初回の為か
意外に時間かかってました。
それ以降は、10万回超えたあたりから差が出始めていますね。
ってことは、連続10万回くらい呼び出されない限り
ほとんど差はないってことでいいんでしょうかね?
DateTimeってのが、JODAのAPIです。
連続(多少差異があったとしても)で10万回なんて呼ばれる
ケースは少ないので、気にしなくていいのかも。
ただ、ものすごくシビアにパフォーマンス改善を求められているなら、
リファクタリングしてもいいかな・・・
感動するCM
いつも覗かせてもらってるえけけ-面白ねたオンラインマガジンに
すこし前だけど、とても良い話のCMがあったので紹介しておきます。
内容はまぁ〜見てもらえれば分かります。
※もとサイトに迷惑かかると嫌だったので、勝手に画像とMovieを保存してリンク貼っております。
問題あれば、連絡おねがいします。
グッジョブ
TV買いました。
そう、液晶TVです。はい。
SHARP LC-20K1
PC接続も可な液晶ですが、だTVとしてしか使ってません。
価格.comでの最低価格が\66,000なわけですが、
オークションで買った割には\67,000でした。
ただし、送料とかがほとんど無料だったので
こっちの方が少し安くついたかな♪
いや〜やっぱAQUOS いい(≧∇≦)b です。