Parse Error

sugizou is Parse Error
<< ひさしぶりに覗いてみたら | main | XMLRPC::Lite使ってのテスト >>
スポンサーサイト

一定期間更新がないため広告を表示しています

| - | | - | - | pookmark |
tiarraでコネクション切れまくる
自分の所有するサーバにtiarraを入れて、IRCに繋いでるわけですが、よく


*** The connection has been broken between freenode.

とかが出て、コネクションがプチプチ切れて、その間のログが取れなかったりとかで困ってたわけです。

恐らくPING/PONG周りでなんかあって、接続がtimeoutしちゃってるんだろうと思い、owataさんに相談した結果ここ変えたらいいんじゃね?って話になりました。

main/RunLoop.pm L806-L814

806 # 3分毎に全ての鯖とクライアントにPINGを送るタイマーをインストール。
807 # これはtcp接続の切断に気付かない事があるため。
808 # 応答のPONGは捨てる。このためにPONG破棄カウンタをインクリメントする。
809 # PONG破棄カウンタはIrcIO::Serverのremarkで、キーは'pong-drop-counter'
810 Timer->new(
811 Interval => 3 * 60,
812 Code => sub {
813 foreach my $network ($this->networks_list) {
814 $network->send_message(
:
:

ここのL811にある"Interval => 3 * 60"を"Interval => 1 * 60"に変えて実験。
すると全然切れることなく通常運用できることとなりました。

これは苦肉の策で、他にもっといい方法があればいいんだけどなーと、今思案してる最中。
つか本当にここが原因なのかねぇ。
| 開発 | 00:40 | comments(0) | trackbacks(0) | pookmark |
スポンサーサイト
| - | 00:40 | - | - | pookmark |
コメント
コメントする









この記事のトラックバックURL
http://sugizou.jugem.jp/trackback/110
トラックバック
CALENDAR
S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
31      
<< December 2017 >>
SELECTED ENTRIES
CATEGORIES
ARCHIVES
モバイル
qrcode
LINKS
PROFILE