Ahmed Aljaberi
Ahmed Aljaberi

@ahmed_aljabri

4 تغريدة 4 قراءة Dec 23, 2022
ايام الmainframe و الClient Server كانت ميزتها في الاتصال الStateful (وجود اتصال دائم ) لكن مع الويب اتجه الناس الى الStateless ( يعرف العميل عن نفسه مع كل طلب Request ) تقنية Microsoft Blazor Server اعادت الStateful. بخادم 16 جيجابايت رام يمكنك خدمة 20 الف يوزر Concurrent.
يتبع
اذا احتجت خدمة 100 الف Concurrent User تحتاج ل5 خوادم بنفس المواصفات لكن تظهر مشكلة مع الLoad balancer وهي انك تحتاج الى ان يكون Sticky session او عليك استخدام خدمة Azure SignalR وهذا عيب حيث انه يربطك مع Azure برباط دائم.
يتبع
الامر لا يتوقف هنا في التحديات. فانت بحاجة الى التفكير بطريقة مختلفة حتى فيما يخص الEF لحل مشكلة الConcurrency وذلك باستخدام DbContext pooling او على الاقل الFactory مع كل اتصال او لكلComponent.
يتبع
يمكن زيادة الCapacity ليخدم اضعاف هذا العدد من المستخدمين بعمليات Tunning بسيطة لحجم الداتا المنتقلة او باستخدام تقنية Orleans وهنا تستغني عن Event Architecture او عن استخدام كاش خارجي كـRedis.
انتهى.

جاري تحميل الاقتراحات...