1

こんにちは皆さん、いくつか質問したいことがあります。私は共有サーバーでホスティングしているホストゲーターのビジネス プラン ホスティングを使用しており、制限について話し合ったところ、メール送信の制限は 1 時間あたり 500 であると言われました (おそらく 1000 だと思いますが、そうではありません)。問題。)そして、私の仕事がライブになると問題が発生すると思うので、送信メールを監視するスクリプト(PHP)を作成して、350通のメールを送信し、残りを保留にすることを考えています。時間が経過するまで、その後さらに 350 などを送信します。そして、エンジン用の XML RPC を使用して更新システムを構築し、リモート サーバーと通信することを計画しています。利用可能な更新がある場合は、それらの読み取りとシステムへの適用を開始します。CRONによってトリガーされます。それが私が今質問したかった情報でした:

1. メールモニター:
1.1送信されたメールの量を取得するには?
1.2 CRON をどのようにセットアップすればよいですか? (5 分未満で CRON をセットアップすると、削除されると思います。) または、代替手段を使用する必要がありますか?
1.3スクリプトの例を教えてください。
2. XML RPC アップデーター:
2.1最適な作成方法は?
2.2「チェック」→「応答[true|false]」→「更新内容を読む」→「更新内容を書き込む」以外の方法は?
2.3そのようなシステムを作るのは良い考えですか? また、それを作る最も安全な方法は何ですか?

4

1 に答える 1

1

特定の日に送信された電子メールの数を設定するテーブルをデータベースにいつでも作成できます。UPDATE email_count SET emails = emails + 1 WHERE date = $current_datePHP クエリで使用できます ( $current_datePHP がタイムスタンプから取得する変数です)。電子メールを送信する前に、SELECTクエリを使用してこの値を確認します。

もちろん、あなたが望むものを決める必要があります。制限に達した場合は、電子メールの送信を禁止する (ユーザーの登録確認メールを例に挙げます) か、単にそれらを抑制 (延期) します。を禁止する場合の作業は簡単です。金額がすでに制限に達している場合は、登録フォームを無効にするだけです。

スロットルすることにした場合、非常に複雑な解決策を必要とする非常に複雑な問題が発生します。電子メールを (作成済みのテキスト形式、または変数の内容として) 生成し、To:値と共にデータベースに保存する必要があります。次の 1 時間で、前の 1 時間の「置き去りにされた」電子メールcronを最初に解析できるように、正確さとセットアップも必要になります。

しかし、前日に非常に多くの電子メールが生成され、その 1 つだけでなく、その後の 1 時間も「詰まった」場合はどうなるでしょうか。サイトの使用状況を測定してモデル化し、最良の例を得る必要があります。スロットリングのパターンを設定するのに役立つ方程式がいくつかあるかもしれません。制限の半分は、取り残された可能性のある電子メール用に 1 時間ごとに予約されていますか? いくつかの人口統計手法を考慮に入れていますか? さまざまなオプションがあります。

サーバーに CLI PHP がインストールされている場合は、cronPHP スクリプトも実行できることに注意してください。ファイルシステムのどこかにファイルの出力を保存するように cron を設定できるため、cron-ran ファイルの出力がプレーンテキストのレポート ファイルにより適した方法で生成されることを確認してください。

00 * * * * /usr/local/bin/php /home/john/myscript.php

リモート更新を取得するには、悪意のあるデータを防ぐように注意する必要があります。更新情報を圧縮コンテナー (gzip?) にカプセル化し、チェックサムを計算してみてください。メソッドは次のようにする必要があります。

  • リモートサーバーに問い合わせる
  • リモートサーバーで差分確認・更新
  • 応答を取得する (違いがあった場合)
  • いくつかのサニタイズとハッシュを使用して、ローカルで違いを確認します
  • 取得した更新をマージ

リモート サーバーのシステム (XML-RPC が応答として送信するもの) もセットアップする場合は、十分なセキュリティ チェックを備えた信頼できる方法を実装してみます。ただし、時期尚早の最適化とやり過ぎを防ぐようにしてください。

ただし、リモート サーバーとの通信に使用できるラッパーは他にもあります。例としてcURLを取り上げます。

于 2012-08-07T12:22:51.440 に答える