2013-02-23

リクエストはキャンセルできない

基本的なことを知らなかった。


<?php
$fp = fopen('/var/tmp/hoge.txt', 'wb');
for ($i = 0; $i < 1000; $i++) {
    //  カウンタをファイルへ出力
    fwrite($fp, "{$i}\n");
    //  1秒待機
    sleep(1);
}



千秒カウントし、カウンタをファイルに出力するPGを作ってみた。

このPGへブラウザからアクセスして、途中で [ Esc ] キーでキャンセルした。



つもりだった。



で、サーバー上のファイルを less コマンドで開いて [Shift] + G で何気に表示を更新していたら、ファイルにカウンタが出力され続けていた。



・・・一度受け付けたリクエストは、サーバー上で処理が終わるか、サービスが再起動されるまで処理され続けることがわかった。





知らなかったおれ、恥ずかしい・・・

0 件のコメント:

コメントを投稿

そもそも添付ファイル名の規約ってRFCでどうなってるの?

Outlookから送ったメールの添付ファイル名が、iPhoneで「 =?utf-8?Q?...?= 」と無残に文字化けしてしまう現象。その元凶を紐解くと、1990年代から続く 「RFC規格のねじれ」 と、Microsoftによる 「独自の割り切り」 という深い闇に突き当...