[前][次][番号順一覧][スレッド一覧]

mysql:3882

From: Akihiko Shinohara <Akihiko Shinohara <sino@xxxxxxxxxx>>
Date: Wed, 04 Jul 2001 10:48:21 +0900
Subject: [mysql 03882] Re: メール配信の工夫

篠原です。

From: moeru@xxxxxxxxxx (moeru)
Subject: [mysql 03879] メール配信の工夫
Date: Tue, 03 Jul 2001 23:57:54 +0900
Message-ID: <20010703235754moeru@xxxxxxxxxx>

> 1万通とか配信するメールマガジンの場合、MySQL+fmlで構築したのですが

この場合、メールのキューに貯まるデータは、1通で済みますが、
> 
> 1000通とかの場合、単純にfor{}で回してみたら
> HDDが唸りっぱなしで怖くなりました(^^;

この場合は、1000通のデータがキューに貯まる事になるのと、
1000回のsendmailコマンドをfork()するコストと
受信する為に、smtpのプログラムがfork()されるコスト
があるので、負荷が高くなります。

あと、PHPで会話的に処理する場合に、1000回の処理が終わらないうちに
利用者が「停止」ボタンなどで接続を切断した場合にも、
最後まで処理されるかの確認が必要だと思います。

> 
> こういう場合、みなさんはプログラムでどのような工夫をしていますか?
> メールを配信する部分だけ、バックグラウンドのプログラムにして

こうしています。

> sleep とかでHDDをおやすみさせるとかですか?

新しくコネクションを開始するまでには時間がかかるので、その時間を
考えれば、I/Oの負荷はそうは高くならないのではないかと
思います。しばらく、ハードディスクはアクセスされたままになりますが。

自分がロールのSMTPサーバに送ったと同時に、外部への送信も始まるので
その分の負荷もあります。
qmailは、qmail同士の独自の転送をもっているので、
メールサーバを、外部に送信する専用のサーバを立てるとかした
ほうがいいのかもしれません。


リストに対してメールを送る方法は、postfix+MySQLのようにMTAが
直接リストにアクセスできて送信する仕組みがいいと思います。
# qmail でも 出来るかもしれないけど。
これだと、最小限のコストでメールを送信できると思います。
ただ、あまりこなれていないようなので、テストしてから使う
必要があると思いますが。
  ___________________________________________
 / Akihiko Shinohara  /Hoct*Systems.Co.,Ltd /
/               http://www.hoctsystem.co.jp/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


[前][次][番号順一覧][スレッド一覧]

      3879 2001-07-03 23:57 [<moeru@xxxxxxxxxx>  ] メール配信の工夫                        
->    3882 2001-07-04 10:48 ┗[Akihiko Shinohara <s]                                       
      3886 2001-07-04 14:47  ┗[<moeru@xxxxxxxxxx>  ]                                     
      3887 2001-07-04 14:55   ┣[<shima@xxxxxxxxxx>  ]                                   
      3889 2001-07-04 16:43   ┗[Akihiko Shinohara <s]                                   
      3890 2001-07-04 18:06    ┗[<moeru@xxxxxxxxxx>  ]                                 
      3893 2001-07-05 00:01     ┗[とみたまさひろ <tomm]                               
      3895 2001-07-05 00:29      ┗[<moeru@xxxxxxxxxx>  ]                             
      3896 2001-07-05 01:09       ┗[tateyan <tateyan@xxx]                           
      3915 2001-07-06 04:31        ┗[<moeru@xxxxxxxxxx>  ]                         
      3916 2001-07-06 14:21         ┣["Ryo.Isozaki" <Ryo.I] 外部 Key              
      3917 2001-07-06 15:02         ┃┗[Akihiko Shinohara <s]                     
      3919 2001-07-06 15:25         ┃ ┗["Ryo.Isozaki" <Ryo.I]                   
      3923 2001-07-08 02:13         ┗[tateyan <tateyan@xxx]                       
      3924 2001-07-08 20:06          ┗[<moeru@xxxxxxxxxx>  ]                     
      3926 2001-07-08 20:26           ┣[shigetoshi hirano <s]                   
      3933 2001-07-09 16:39           ┃┗[<moeru@xxxxxxxxxx>  ]                 
      3935 2001-07-09 17:55           ┃ ┣[Akihiko Shinohara <s]               
      3938 2001-07-09 19:27           ┃ ┃┗[<moeru@xxxxxxxxxx>  ]             
      3936 2001-07-09 19:12           ┃ ┗[Seiji Tateyama <tate]               
      3927 2001-07-08 20:39           ┣[とみたまさひろ <tomm]                   
      3928 2001-07-08 21:58           ┣[tateyan <tateyan@xxx]                   
      3934 2001-07-09 17:33           ┗["Y. Tsutsui" <tutui@]                   
      3937 2001-07-09 19:22            ┗[<moeru@xxxxxxxxxx>  ]                 
      3943 2001-07-10 10:06             ┣["Y. Tsutsui" <tutui@]               
      3944 2001-07-10 10:10             ┗[Tatsuhiko Miyagawa <]               
      3945 2001-07-10 10:18              ┗["Y. Tsutsui" <tutui@]             
      3958 2001-07-10 19:10               ┗[<moeru@xxxxxxxxxx>  ]