メンバーが増え続けるメンバーシップ テーブルがありますが、新しいメンバーが追加されるたびに、以前のメンバーに対するボーナスが一定のルールに従って計算されます。とにかくメンバーが増えると、その数も増えていきます。メンバーを追加すると、ますます遅くなります (より多くの計算が必要になります)。このシナリオにどう対処するか。
我想大声告诉你2017-05-16 13:06:25
最初にメンバーを追加すると、月曜日に決済し、紹介テーブルを作成し、先週の関連情報を記録し、ボーナスを計算するスクリプトを一度実行するなど、特定の時間範囲に従ってボーナスが計算されます。一週間。
巴扎黑2017-05-16 13:06:25
1. この決済は登録ステップ中に行われますか?その場合は、決済ステップを取り出し、テーブルまたはメッセージキューに書き込んで、登録プロセスを実行するだけです
2. しかし、毎日の決済に関する上記のコメントを見ると、ステップ 1 が完了し、今日参加したすべてのメンバーに対して決済プロセス全体が実行される必要があります (たとえば、午前 1 時)。 )決済が完了していれば大丈夫です。
天蓬老师2017-05-16 13:06:25
決済を取り出して個別に実行します。計画されたタスクを作成し、毎日実行します。または、新規ユーザーの最初のログイン時に決済を書き込むこともできます。
曾经蜡笔没有小新2017-05-16 13:06:25
この要件のために、メッセージキューを実行できます。
メンバー利益分配計算メッセージは、まずメッセージキューにプッシュされ、次にメッセージを受信するためのphpスクリプトが作成されてキャッシュにスローされ、毎日の営業時間外にデータベースに保存されます