Redis

طبقة وصول فائقة السرعة لتقليل حمل واجهات IDM وتحسين زمن الاستجابة.

إعادة تصميم بقالب NCGR Abufai 2026-06-20
واجهة حضرية من العرض الأصلي

الفهرس

يعرض هذا التسلسل منطق الانتقال من تعريف Redis إلى المشكلة الحالية ثم الحل والأثر المتوقع.

01

مقدمة

تعريف Redis وخصائصه الأساسية.

02

حالات الاستخدام

أين يقدم Redis قيمة تشغيلية واضحة.

03

تعريف المشكلة

حمل IDM الحالي وأبرز فرص التحسين.

04

الحل

إدخال Redis كطبقة وصول فائقة السرعة.

05

الأثر المتوقع

تحسين الأداء والاستقرار والأمان.

مقدمة

ما هو Redis؟ ولماذا يناسب سيناريوهات الأداء العالي؟

ما هو Redis؟

Redis هو مخزن بيانات عالي السرعة يعمل داخل الذاكرة، ويوفر أداءً فورياً وقابلاً للتوسع للتطبيقات.

أداء يقاس بالأجزاء من الملي ثانية

وصول فائق السرعة للبيانات المتكررة.

تخزين Key-value داخل الذاكرة

البيانات تستقر في RAM لضمان السرعة القصوى.

هياكل بيانات غنية

دعم القوائم، المجموعات، Hashes، وStreams.

توافرية عالية وتجميع

Clustering وانتقال تلقائي عند الفشل.

حالات الاستخدام

أين يصبح Redis طبقة مساندة مؤثرة للتطبيقات والخدمات.

حالات استخدام Redis

التخزين المؤقت

تسريع التطبيقات وتقليل الحمل على قواعد البيانات الأساسية.

إدارة الجلسات

تخزين جلسات المستخدمين باستجابة فائقة السرعة وقابلية توسع عالية.

تخزين رموز المصادقة

تخزين والتحقق من Access Tokens وJWTs وبيانات المصادقة الوصفية.

وسيط الرسائل

دعم المهام غير المتزامنة وتدفق الأحداث والمراسلة بين الخدمات المصغرة.

حالات الاستخدام المقترحة

تركز المقترحات على نقاط يتكرر فيها طلب البيانات أو التحقق من حالة المستخدم، وهي نقاط مناسبة لطبقة Redis.

01

Cache للاستعلامات المتكررة

تقليل الاستدعاء المباشر لقواعد البيانات والأنظمة الخلفية.

02

جلسات المستخدم

حفظ حالة الجلسة بسرعة وبتكلفة تشغيلية أقل.

03

رموز المصادقة

تسريع التحقق من الرموز والبيانات الوصفية المرتبطة بها.

04

المهام غير المتزامنة

تمكين تدفق الأحداث والرسائل بين الخدمات المصغرة.

تعريف المشكلة

لماذا يؤدي الاستدعاء المباشر والمتكرر إلى حمل ومخاطر تشغيلية؟

نظرة عامة على العملية الحالية

تقوم التطبيقات الخارجية باستدعاء IDM مباشرة للحصول على بيانات الهوية والوكالات، مما يتسبب في حمل متكرر وثقيل على النظام.

استدعاء مباشر مع كل طلب من التطبيقات الخارجية.
استرداد متكرر لتفاصيل المستخدم والوكالة من قاعدة البيانات الأساسية.
غياب طبقة وصول مشتركة يعيد جلب نفس البيانات بشكل غير فعال.
مخاطر تشغيلية وتكلفة متزايدة مع نمو الحركة بشكل خطي.
مخطط العملية الحالية
الوضع الحالي

حجم استدعاءات واجهة برمجة تطبيقات الـ IDM

واجهات وخدمات مختارة ولّدت أكثر من 642 ألف استدعاء خلال يوم واحد فقط.

/connect/userinfo
357,478
/api/Agency/GetAgencyLogo
284,662
agencyDetailsService
927

المصدر: بيانات الرسم البياني المضمنة في العرض الأصلي.

متوسط زمن استجابة استدعاءات واجهات IDM

متوسط زمن الاستجابة يعكس الأداء الحالي ويحدد الأولويات الفنية للتحسين.

/api/Agency/GetAgencyLogo
17 ms
/connect/userinfo
129 ms

أفضل الفرص لتحسين واجهات IDM باستخدام Redis

إلى جانب نقاط الاتصال عالية الاستهلاك، تعد الواجهات التالية مرشحة قوية لتقليل الضغط عبر Redis.

api/common/getusersbyrolesname
api/common/getusersbasicinfo
api/common/getusers
api/common/getallgovagencies
api/common/getagencybyid
api/oauth/getclaimsuserinfowithoptionalagency
api/oauth/getuserinfo
api/oauth/getuserinfo/lc

من المشكلة إلى الحل

بعد تحديد الحمل المتكرر وفرص التحسين، ينتقل العرض إلى طبقة Redis المقترحة.

الحل

Redis كطبقة وصول فائقة السرعة بين التطبيقات وبيانات IDM المتكررة.

Redis كطبقة وصول فائقة السرعة

تقديم Redis لتخزين استجابات IDM المتكررة، مما يقلل الحمل بشكل جذري ويحسن الأداء.

بدلاً من استدعاء IDM وقاعدة البيانات في كل مرة، تُخدم البيانات المتكررة من Redis بسرعة أعلى وبحمل أقل على الأنظمة الأساسية.
مخطط قبل وبعد استخدام Redis cache
الحل المقترح

تحسين أداء API من خلال Redis cache

استبدال الاستدعاءات الخارجية المتكررة بطبقة Redis يقلل زمن الاستجابة ويخفف الحمل على IDM.

GetAgencyLogo

قبل
17ms
بعد
10ms

userinfo

قبل
129ms
بعد
10ms

المصدر: بيانات الرسم البياني المضمنة في العرض الأصلي.

إبطال الجلسات المركزية باستخدام Redis

تسجيل الخروج من أي نظام يؤدي إلى إبطال جلسة المستخدم فوراً عبر جميع الأنظمة المتصلة.

  • فرض تسجيل الخروج الشامل.
  • سد الثغرات الأمنية وتقليل مخاطر إعادة استخدام الرموز.
  • اتساق حالة الجلسة بين الأنظمة.
  • تخفيف حمل التحقق عن IDM مع قابلية توسع أعلى.
مخطط تسجيل الخروج الموحد
إبطال الجلسات المركزية

أثر حل Redis المقترح

يقضي Redis على حركة مرور البيانات غير الضرورية، ويسرّع الاستجابات، ويحمي IDM من الأحمال الزائدة.

تخفيف حمل البيانات

استجابة فورية للطلبات المتكررة.

سرعة أعلى

استجابات بأجزاء من الملي ثانية بدلاً من قفزات متعددة.

استقرار أكبر

تقليل خطر تحول IDM إلى عنق زجاجة.

أمان وتحكم

تحكم مركزي يقلل مخاطر تسجيل الخروج الجزئي.

قابلية التوسع

استيعاب طفرات الحركة عبر Redis لا IDM.

NCGR

شكـــــرًا

NCGR.gov.sa