التحدّي
احتاج مقدّمو الرعاية الذين يستخدمون المنصة إلى تنبيهات في اللحظة التي تتجاوز فيها قياسات المريض الحدّ المقرّر. كان مسار الاستيعاب القديم يستخدم نموذج استطلاع (polling) يرفع زمن استجابة التنبيه إلى نطاق 10-30 ثانية خلال ساعات الذروة — وهو أبطأ بكثير من اتفاقيات مستوى الخدمة السريرية التي تبيع المنصة على أساسها.
المنهجية
- استبدلنا الاستيعاب القائم على الاستطلاع بخط معالجة قائم على الأحداث (RabbitMQ + أسطول من العمّال).
- جهّزنا المسار بأكمله بأدوات قياس عبر Grafana، مع تنبيهات اصطناعية تلتقط حالات التراجع قبل أن تصل إلى حركة الإنتاج.
- تحقّقنا من زمن استجابة للتنبيه أقل من ثانية عند الشريحة المئوية 95 تحت حمل واقعي باستخدام حركة الظل (shadow traffic).
- رحّلنا العملاء الحاليين على مراحل دون أي توقّف.
النتيجة
- زمن استجابة التنبيه: <1 ثانية من طرف إلى طرف (كان 10-30 ثانية)
- معدّل المعالجة: +40% مقارنةً بالبنية السابقة
- صفر توقّف أثناء التحويل
- سجلّات تدقيق لكل مسار تنبيه — تلبّي متطلبات الامتثال السريري
الحزمة التقنية
Python · FastAPI · PostgreSQL · RabbitMQ · Redis · AWS · Grafana · Sentry