愛知県の岡崎市立図書館のホームページに集中的にアクセスし、閲覧しにくくしたとして、愛知県警は25日、ホームページ作成会社社長中川圭右(けいすけ)容疑者(38)=同県知立市東長篠1丁目=を業務妨害の疑いで逮捕し、発表した。
(中略)
同課によると、中川容疑者は1回ボタンを押すだけで、1秒に1回程度の速度でアクセスを繰り返せるプログラムを作っていたという。
ソフトウェアの作りが悪いと逮捕されてしまうという、他人事とは思えない事件です。
今回のプログラムの問題点は「1秒に1回程度の速度でアクセスを繰り返せる」という点にあると思います。
レスポンスが1秒以内に返ってくれば問題ないのですが、もし1秒以上かかると、図書館のサーバーの負荷がどんどんとたまっていくことになるからです。
図書館のサーバーは、最初のリクエストを1秒以内にレスポンスを返さないと、次の2秒目では最初のリクエストと2件目のリクエストに対して、処理を行わなくてはなりません。
2件目のレスポンスは1件目のレスポンスよりサーバーに負荷がかかるため、レスポンスを返すのに時間がかかります。
2件目のレスポンスを返す前に3件目のリクエストが届きます。
そのうちにだんだんとレスポンスを返せないリクエストがたまり、最後にはサーバーがダウンしてしまいます。
さて、拙作の「図書館蔵書検索ソフト SearchLibrary」について説明します。
「図書館蔵書検索ソフト SearchLibrary」では、図書館サーバーに対して1件ずつリクエストを送信します。
図書館のサーバーからレスポンスが返ってきてから、次のリクエストを送るようにしています。
図書館のサーバーは常に1件ずつ、自分のペースでリクエストを処理すればいいわけです。
仮にサーバーの負荷が高まりレスポンスが遅れたとしても、「図書館蔵書検索ソフト SearchLibrary」はサーバーからのレスポンスが届くまでちゃんと待機しています。
ですから、図書館のサーバーにリクエストが集中して負荷がかかり、ダウンしてしまうような状況を引き起こすことはありません。
安心して、ご利用いただければと思います。
追記
岡崎市立中央図書館HP大量アクセス事件で逮捕された方がホームページを開設されました。
当事者が書いた貴重な情報源です。
このページを読んで、一番の問題だと思っていたサーバーの負荷対策について、ちゃんと考えられていることがわかりました。
この方はむすびのページで配慮が足らなかったとおっしゃっています。
しかし、ごく一般的なプログラムであるように思います。
この事件について、データベースの視点から鋭い指摘が以下のページでありました。
たしかに問題のプログラムがアクセスしていた岡崎市立中央図書館の新着図書のページはすぐに表示されます。
サーバーの負荷はわずかなものです。
一方、蔵書検索はとてつもなく遅い。
サーバーにも相当の負荷がかかっているのではないかと思います。
マスコミの報道では、岡崎市立中央図書館のホームページを閲覧しにくい状態にしたということでした。
今回逮捕された方のプログラムがサーバーにかけた負荷は少なく、これが原因だとは考えにくい。
岡崎市立中央図書館に電話で問い合わせた方が、その内容を掲載しています。
2.管理会社の調査で、外部からの攻撃が判明
…