No.6ベストアンサー
- 回答日時:
No.5
- 回答日時:
DNSをローカルで持ちましょう。
トラフィック処理力の有るDNSを探しましょう。
一通枚に処理するのではプロセスの起動のオーバーヘッドがデカイので100通やら1000通など効率の良い固まりの大きさを探しましょう。
メモリが大きなルータを使いましょう。
SQLを見直しましょう。
サブクエリなどを必要とする複雑な処理なら結果を先にどこかに保存してからまとめてやりましょう。
はやいコンコンピュータを使いましょう。
DBとのコネクションプーリング、高速な接続方法の検討などDB接続の基本を見直しましょう。
困るだけじゃだめです、何か自分で考えて試しましょう。
#試行錯誤すればするほど懐が深くなるものです。
No.4
- 回答日時:
1分で数千通っていうのは、現実的には難しいでしょうね。
工夫を重ねれば出るスピードだと思いますが、とにかくメールを大量に速く送信するノウハウは、プログラムだけでなくサーバーのセットアップやMTAの設定によるところも大きいです。僕も商売でメルマガ発行システムなど手がけていますが、そのノウハウはちょっとここには書けません(^^;。商売のネタだからというのもありますが、書ききれる内容じゃないんです。10人に送って1通1秒というのは遅すぎかなとは思いますが、スクリプト自体はすぐに終わりますか?スクリプト自体が1ループ1秒かかってるとしたら、どこで時間が掛かっているのかをスクリプトの随所で時間を表示させるようにして(できればマイクロ秒まで)どこが遅いのか突き止めましょう。
あとPHPからmailコマンド等でsendmailにメールを渡しているのだと思いますが、ここから先が遅いようでしたらそれはスクリプトの問題ではありません。MTAの設定が悪いのか、サーバーの負荷自体が高いのか、queueが溜まりまくっていて遅いのか、など調べる事は山のようにあります。
MTAはsendmailですか?POSTFIXにするだけで何割かは速くなると思います。一般論ですが。
一度一番単純なメール送信スクリプト、10人なら10コのアドレスを配列に入れてループさせて送るだけのものを書いてみて、それでテストしてみたらどうですか?
No.3
- 回答日時:
SENDMAILが遅いのかもしれません。
どのように送っているのかは不明ですが。
予想ですがPHPの問題ではないような気がします・・・
ためしにメールを送らないで、メールアドレスを表示するだけにしてみたときと比較すればメール送信にかかる時間がどの程度かが分かると思います。
時間指定が出来るメールで、15分単位で自動的にPHPを自動で動かすようにしています。
自動で動かすときにコマンドプロンプトが立ち上がるのですが、結構時間がかかってるみたいなのでどうにか早くならないものかと質問しました。
プログラムはデータベース内に「システム時間>送信したい時間メール」のものを抽出しメールを送信するものです。
今度メールを送らないで試してみます。
No.2
- 回答日時:
メール数が大量の場合、メーリングリストを使うと便利です。
DB → 転送 → メーリングリストのメンバー更新 と
1)メンバーをDBに保存。
2)DBからデータ送信し、メーリングリストのメンバー更新。
3)メール送信。
メーリングリストは、管理者のみが送信出来るようにしておけば
良いと思います。
この環境で、5000~6000人宛のメール送信をしています。
この回答への補足
ありがとうございます。
メーリングリストが大量にメールを送るには一番いい方法だとは思うのですが、色んな種類のメンバがいるのでたくさんのメーリングリストを作成しなければならないのでなるべくPHPのみでやりたいと思っています。
No.1
- 回答日時:
一度に何通位送るんですか?メールを速く、大量に送るというのはPHPの問題だけじゃなく色々なポイントがあります。
ひと言で遅いと言っても、PHPの問題なのか他の問題なのかわかりませんので、まずはボトルネックを探しましょう。・一度に何通位送るんですか?
・遅いと言うのはどの位遅いんですか?
・求める速さはどの位ですか?
・遅いと思われる原因は推測できませんか?
この回答への補足
・一度に何通位送るんですか?
数十通から数千通くらいです
・遅いと言うのはどの位遅いんですか?
テストで10人くらいに送ったんですが、1人1秒程度かかりました
・求める速さはどの位ですか?
数千通になると数千秒くらいかかる計算になるので、数千通でも1分くらいで送れるといいのですが・・・
・遅いと思われる原因は推測できませんか?
PCのスペックもあると思うのですが、プログラムの記述も効率の悪い書き方をしているような気がします
細かい内容は覚えてないんですが、データベースからメールアドレスをループで呼び出しその中で1アドレスずつメール送信しています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- iPhone(アイフォーン) iPhoneが14Proと初代SEがあります。 二台並べてたら、これに登録してる回答つきましたメール 1 2022/10/29 17:19
- Yahoo!メール yahooメールですが、同時発信メールで送信しようとしても、送信できない 2 2022/05/06 17:30
- Yahoo!メール メルカリのパスワード再設定メールが届きません。 1 2023/07/14 09:34
- Android(アンドロイド) コスモ石油のアプリの機種変後の再登録ができません。 利用しているスタンドからお知らせは来るのでメアド 1 2023/02/02 19:48
- 求人情報・採用情報 今日、ホテルのアルバイトに、タウンワークから応募しました。 すると、会社からGメールが届き、事前登録 1 2022/03/31 23:40
- 病院・検査 木下グループ新型コロナPCR検査キットを購入して月曜日にポスト投函しました ですが、その際に会員登録 1 2023/01/20 21:36
- その他(メールソフト・メールサービス) 複数のメールを送信した順と受信した順が違うのは何故? 4 2023/02/22 09:58
- その他(暮らし・生活・行事) 顕正会 脱会 いつ送る 顕正会に内容証明郵便で脱会届を送ろうと思っているのですが、それは、いつ送った 3 2022/05/30 04:19
- au(KDDI) AUメールが受信できなくなった件 1 2022/08/16 10:35
- Outlook(アウトルック) outlookのメール設定で困っています 3 2023/05/26 09:57
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・【穴埋めお題】恐竜の新説
- ・我がまちの「給食」自慢を聞かせてっ!
- ・冬の健康法を教えて!
- ・一番好きな「クリスマスソング」は?
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・【大喜利】【投稿~12/6】 西暦2100年、小学生のなりたい職業ランキング
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・遅刻の「言い訳」選手権
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HPの更新をしたら自動でメール...
-
問い合わせ完了ページでの二重...
-
メールアドレスの存在確認はで...
-
VB.NETでフリーメールアドレス...
-
この文字化け文字を解読できますか
-
ループの中で mailItemObj.Disp...
-
コマンドプロンプトで添付ファ...
-
mb_send_mailで複数宛てにtoで送信
-
ジオプラスでメールフォームをP...
-
PHPのif文でその処理を途中で抜...
-
フォントの色を変えるには?
-
PHPで、エラーがない場合のみ画...
-
phpでgifアニメかどうかチェッ...
-
3つ以上の論理積は利用可能なの...
-
ボタンのクリック数を合計保存...
-
PHPの変わった閉じタグの必要性...
-
VBSの「MsgBox」について
-
mail関数の587ポート対応に関して
-
.phpファイルが、表示されない
-
正規表現で「チルダ(~)」をマッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB6にてメールを送信する方法
-
存在しないメールアドレスかど...
-
VBでメールを送る時のSMT...
-
HPの更新をしたら自動でメール...
-
コマンドプロンプトで添付ファ...
-
ループの中で mailItemObj.Disp...
-
Bookを閉じて保存した時のみ実...
-
submitボタンの二重送信について
-
PHPでメール送信する際の送信数...
-
<HTML>~入る タグ が無いから ...
-
PostMail
-
ランダムな文字列を生成しその...
-
powerbuilderのメール機能について
-
フォームから同じドメイン宛て...
-
一定時間毎に同じ動作を繰り返...
-
ジオプラスでメールフォームをP...
-
UWSCにつきまして
-
空メールの作り方教えて欲しい...
-
mb_send_mailで複数宛てにtoで送信
-
【追加】ファイルを閉じてダイ...
おすすめ情報