العودة إلى الدورة

تحديد معدل الطلبات للحماية

لغة Go (Golang) للخدمات المصغرة السحابية (Cloud-Native Microservices)

منع الإساءة

يحمي تحديد معدل الطلبات (Rate limiting) خدمتك المصغرة من هجمات القوة الغاشمة (brute-force) أو العملاء الذين يحتوي كودهم على أخطاء.

باستخدام x/time/rate:

يوفر مستودع Go الفرعي الرسمي محدد معدل بنمط Token Bucket. go limiter := rate.NewLimiter(1, 5) // طلب واحد في الثانية، مع سماح بـ 5 طلبات مفاجئة

if !limiter.Allow() { http.Error(w, "Too Many Requests", 429) return }