目次: 自宅サーバー
以前、コメントが書き込めなくなって(2014年1月7日の日記参照)しまい、応急処置で切り抜けましたが2か月経たないうちに再発しました。年単位ならまだしも1〜2か月で再発するようじゃ、もう駄目だろということで真面目に調査開始しました。
白いページが出る原因は、PHPプロセスのクラッシュによるものでした。具体的には、コメントの承認待ちデータの肥大化により、承認待ちデータをロードした際にPHPスクリプトを実行するプロセスがクラッシュして、何も応答を返せなかったためです。大体50MB overくらいで発生するようです。
また、コメントの承認待ちデータが肥大する原因は、この日記システムの設計が悪かったためです。コメントの承認待ちデータは下記の仕組みで、追加、および、削除が行われていました。
設計の大きなミスとしてコメントを承認しないと、コメントの承認待ちデータを削除する処理が絶対に動作しない点です。コメントを承認しない限り、コメントの承認待ちデータが際限なく追記されてしまいます。
対策として、コメントの承認待ちデータを「追記」する際に、同時に時間切れのモノを「削除」する処理を追加しました。これにより、時間切れと判定する時間内(現在は300秒)に、50MB分のスパムを送りつけられない限り、今回の問題は発生しないはずです。
承認待ちデータの大きさは、名前+コメント+約600バイトです。だいぶ長いスパムでも、せいぜい数KB程度なので、33回/秒の勢いで300秒間連続で投稿されない限り、パンクは免れるはずです。
ただし、今は名前やコメントに長さの制限がないため、50MB超のコメントを送信されると、一撃でコメントが書き込めなくなります。
やられたらそのときまた考えますけど、できればやらんで欲しいですな…。
1人で問題を解決する奴は、スゴイと思う。
1人じゃ無理だけど周りに呼びかけて解決まで導く奴は、偉いと思う。
問題を指摘するだけで逃げる奴は、居ても居なくても良いと思う。
「何だアイツ熱くなって…」ってバカにして何もしない奴らは、居ない方が良いと思う。
メモ: 技術系?の話はFacebookから転記しておくことにした。
日記表示の際のアクセス解析をやめました。カウンターを表示しないブラウザ、Web Botなどからのアクセスはカウントしなくなります。
最近見つかる未知のエージェントは、従来ブラウザのバージョンアップ物か、人間からのアクセスではなかろうBotやクローラばかりで、そんなもん分類してもつまらんのですよ。
2歳となったRaspberry Piの販売台数は250万台超。さらなるオープン化にむけた1万ドルコンテストを開催
Raspberry PiのSoCと同じグラフィクスコアのドライバーがオープンソースになったみたいです。
そのうちRaspberry Piでも完全オープンのドライバが動くようになるんだろうなあ。さすがだな…。
メモ: 技術系?の話はFacebookから転記しておくことにした。
AQUOS PHONE ZETA(SH-01F) は「余裕で3日使えるスマホ」という宣伝文句でしたが、我が家のSH-01Fは1日以上稼働したことがありません。アプリの履歴を消し忘れるとまず1日持たないし、消していても「メディアサーバ」さんが、電池を50%近く消費してくれたりして、結局電池が持ちません。
消し忘れたアプリや、メディアサーバさんが頑張ってると思しきときは、スマホの上部がかなり熱くなります。冬でも相当熱くなるので、夏ともなればスマホが熱でぶっ壊れるんじゃないか?と嫌な気分になります。うーん、何でだろうな…。
< | 2014 | > | ||||
<< | < | 03 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | - | - | - | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 | - | - | - | - | - |
合計:
本日: