APIレート制限を効率的に管理することが重要です。 Laravelは、Redis::throttle
レバレッジ Redis::throttle
laravel's
Redis::throttle
このミドルウェアは、メール通知システムに適用されます:
最後に、これをコントローラーに統合します:
<?php namespace App\Http\Middleware; use Closure; use Illuminate\Support\Facades\Redis; class EmailRateLimit { public function handle($job, Closure $next) { Redis::throttle('email-throttle') ->allow(10) ->every(2) ->block(2) // Wait 2 seconds if throttled ->then(function () use ($job, $next) { $next($job); }, function () use ($job) { $job->release(30); // Release after 30 seconds }); } }
この包括的なアプローチにより、AWS SESまたは互換性のある電子メールサービスプロバイダーを介して効率的な電子メール配信を維持しながら、アプリケーションがAPIレートの制限を尊重します。 ミドルウェアの使用は、レート制限ロジックをコアアプリケーションコードからきれいに分離します。
以上がジョブスロットリングを通じて、LaravelのAPIレート制限の管理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。