إنشاء نظام الصحة عن بعد على Azure

Azure Database for PostgreSQL
Azure Functions
Azure Kubernetes Service (AKS)
Azure Storage
Azure Traffic Manager

توضح هذه المقالة كيفية إنشاء نظام الصحة عن بعد باستخدام النظام الأساسي السحابي Azure.

بناء الأنظمة

نظرة عامة على البنية لمكونات Azure المضمنة في نظام الصحة عن بعد.

قم بتنزيل ملف Visio لهذه البنية.

‏‏سير العمل‬

تم بناء الحل على أربع ركائز، بما في ذلك:

  • العملاء
  • مكونات الاتصال
  • واجهات برمجة التطبيقات ومنطق العمل
  • خدمات التخزين والبنية التحتية

على الجانب الأيسر من الرسم التخطيطي المعماري، هناك عملاء في مجموعتين، أخصائي الرعاية الصحية والمريض. يستخدم أخصائي الرعاية الصحية برامج التركيب وعملاء مدخل الويب للتواصل مع مرضاهم. من ناحية أخرى، يستخدم المرضى تطبيقًا للأجهزة المحمولة مرتبطا بالجهاز الطبي عبر اتصال Bluetooth. يتم تحقيق هذا الاتصال ذهابًا وإيابًا باستخدام خدمات الواجهة الخلفية:

  • واجهات برمجة التطبيقات العامة
  • الخدمات المصغرة الداخلية المسؤولة عن مهام سير العمل مثل مكالمات الفيديو من خلال Web RTC أو الاتصال من عميل إلى عميل باستخدام Signal. الإشارة هي مكتبة برامج لـMicrosoft ASP.NET تسمح للتعليمات البرمجية للخادم بإرسال إعلامات غير متزامنة إلى تطبيقات الويب من جانب العميل.

تستمر حالة هذه الخدمات في العديد من خدمات Azure (على الجانب الأيسر من الرسم التخطيطي) مثل قاعدة بيانات Azure لـPostgreSQL. يتم حفظ ملفات الوسائط في حسابات تخزين Azure. يتم جمع جميع السجلات من جميع الخدمات في حل تسجيل مركزي يستخدم Azure Application Insights. وأخيرًا، يمكن تحقيق اتصال غير متزامن بين العملاء من خلال الإعلامات المؤقتة باستخدام مساعدة Azure Notification Hub.

تم إعداد الحل بهذه الطريقة من أجل:

  • الاستفادة من قابلية توسع الخدمات السحابية التي تعمل في الخلفية.

  • زيادة استقلالية الفرق في بناء الحل. يشرف كل فريق على المجالات الوظيفية ويدفع تطور مكوناته. نظرًا لأن المجالات الوظيفية لا تتداخل، يمكن لكل فريق الابتكار بسرعته الخاصة. أيضًا، نظرًا لأن قواعد التعليمات البرمجية للخدمات مستقلة، يتم تبسيط البنية الأساسية لبرنامج ربط العمليات التجارية CI/CD للحل بأكمله.

  • بناء آلية الاتصال والتنسيق بين الخدمات التي يتطلبها توزيع الوظائف عبر الخدمات المصغرة. يستخدم الحل الموضح في هذا المستند ذاكرة التخزين المؤقت Azure لـRedis لإنجاز هذه المهمة.

  • تحقيق المراقبة المركزية وتعزيز القدرة على استكشاف أخطاء الحل وإصلاحها.

  • إدارة مبسطة للبيانات السرية وبيانات الاعتماد والشهادات والمفاتيح التي تستفيد من الهويات المدارة لتأمين الاتصال بين الخدمات.

المكونات

  • تخزن قاعدة بيانات Azure لـPostgreSQL المستخدم (أخصائي الرعاية الصحية والمريض) والبيانات المتعلقة بالجهاز. تم اختيار الخدمة لأنها مستقرة وخفيفة الوزن ولا تحتوي على تأمين مورد.
  • تستضيف خدمة Azure Kubernetes منطق عمل التطبيق وتوفر سهولة النشر والمرونة للتخصيص. كما تجرد الخدمة الحل من الأجهزة الفعلية المستخدمة تحتها.
  • يستضيف Azure Cache for Redis البيانات المؤقتة المستخدمة لبيانات داخل الخدمة (البيانات المشتركة). يمكن إعادة إنشاء الخدمة من قاعدة البيانات في حالة انتهاء صلاحية البيانات من ذاكرة التخزين المؤقت
  • يقوم Azure Notification Hub بإعلام المريض بالمحتوى الوارد: الدردشة ومكالمات الفيديو وإعدادات تكوين الجهاز.
  • تقوم Azure Functions بجدولة المهام. على سبيل المثال، الاتصالات الواسعة لمجموعة كبيرة من المستخدمين، وتنسيق عمل التحليلات في الخلفية (التجميعات...).
  • يقوم Azure Application Insights بمركزية الإشارات/الأحداث من النظام (السجلات وبيانات تتبع الاستخدام من السجلات من الخدمات المصغرة والواجهة الأمامية والأجهزة) لأغراض استكشاف الأخطاء وإصلاحها.
  • تستخدم Azure Content Delivery Network (CDN) للصيانة والتحديثات (تسليم ملف البرامج النصية لـjava) إلى مدخل الويب ولتسليم ملفات الوسائط (مقاطع الفيديو والصور) من خلال المدخل. يتم تخزين كل هذا المحتوى في حسابات تخزين Azure في الخلفية.
  • أرصدة تحميل Azure Traffic Manager بين المواقع الجغرافية.
  • يسمح Azure SignalR للتعليمات البرمجية للخادم بإرسال إعلامات غير متزامنة إلى تطبيقات الويب من جانب العميل. يمكن تكوين أجهزة المستخدم النهائي إما في الوضع القياسي أو الوضع المتقدم.

البدائل

على جانب قاعدة البيانات، يمكن استخدام أي خدمات أخرى لقاعدة بيانات PaaS. عند استضافة منطق التطبيق، بدلا من استخدام Azure Kubernetes Service، يمكنك التفكير في استخدام Azure App Service.

تفاصيل السيناريو

تستند التفاصيل إلى تنفيذ حقيقي للعملاء يربط مؤسسة رعاية صحية مهنية بمرضاها عن بعد. وفي حين أن هناك طرقًا أخرى لبناء مثل هذا النظام، فقد نجح الحل الموصوف في تمكين الاتصال بين المرضى ومقدمي الرعاية عن بعد، فضلًا عن ضبط الأجهزة الطبية التي يحملها المرضى عن بعد.

هناك حوالي 700 مليون شخص يعانون من إعاقات سمعية. ومع ذلك، فإن 10٪ فقط منهم يستخدمون أجهزة مساعدة سمعية لتحسين حياتهم. في بعض المناطق الجغرافية أو المواقف، من المستحيل على المريض الحصول على مساعدة مباشرة عند الحاجة. على سبيل المثال، ضع في اعتبارك المرضى الذين:

  • تحتاج إلى مساعدة في حالة سمع محددة (على سبيل المثال، أثناء المشي في الحديقة أو حضور حفلة أو التواجد في المنزل)، والتي لا يمكن إعادة إنتاجها في مكتب أخصائي الرعاية السمعية.
  • لديهم مشاكل في التنقل أو يقيمون لمسافات طويلة من أخصائي الرعاية السمعية لديهم.
  • العيش في بلد/منطقة ناشئة لديها عدد محدود من المتخصصين في مجال الرعاية السمعية.

للتغلب على هذه الصعوبات، من المهم أن يكون لديك القدرة على توفير خدمات الرعاية السمعية عن بعد. في هذه الحالة، يستخدم أخصائي الرعاية الصحية الاتصال بالدردشة أو الفيديو للتفاعل مع مرضاهم عن بعد. يستخدم الأشخاص الذين يعانون من صعوبة في السمع الهاتف الذكي للسماح بالوصول إلى جهاز المساعدة على السمع في أثناء الجلسة عن بعد. يشهد المريض على الفور تحسين السمع حيث يقوم أخصائي الرعاية السمعية بنشر التغييرات على تكوين جهاز المساعدة على السمع في الوقت الفعلي.

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

هذا الحل مثالي لصناعة الرعاية الصحية. حالات الاستخدام الإضافية التالية لها أنماط تصميم مماثلة:

  • يمكن الوصول إلى أي جهاز ممكن Bluetooth وضبطه عن بعد باستخدام مثل هذا الحل.
  • التواصل (النص أو الصوت أو الفيديو) أو تبادل المعرفة (التعليم، استطلاعات الرضا) في إعداد/سياق بعيد.
  • إدارة محتوى الويب الموزعة عالميًا.
  • إنترنت الأشياء (IoT)

الأوضاع

الوضع القياسي

في الوضع القياسي، يقوم البرنامج المناسب بإعداد إعلام، والذي يحتوي على بعض ملفات JSON للتكوين أو المحتوى للجهاز. ثم يتم تمرير الإعلام إلى Azure Notification Hub، والذي يدفع الإعلام إلى هاتف المستخدم.

الوضع المتقدم

في الوضع المتقدم، يستخدم أخصائي المساعدة السمعية البرنامج المناسب لدفع التكوين التفصيلي إلى الجهاز. يتطلب هذا اتصالًا مستقرًا وموثوقًا به بين الخلفية والجهاز، والذي يحققه SignalR باستخدام WebSockets. هاتف المستخدم النهائي على الطرف المتلقي لهذه القناة. من الهاتف، ينشئ اتصال Bluetooth رابط الاتصال النهائي مع الجهاز.

الاعتبارات

تنفذ هذه الاعتبارات ركائز Azure Well-Architected Framework، وهو عبارة عن مجموعة من المبادئ التوجيهية التي يمكن استخدامها لتحسين جودة حمل العمل. لمزيد من المعلومات، يرجى مراجعةMicrosoft Azure Well-Architected Framework.

نوصي باستخدام مدير نسبة استخدام الشبكة أمام المجموعات المختلفة لتحسين زمن الانتقال بين المناطق وكآلية احتياطية في حالة عدم توفر المجموعات. بالنسبة لقواعد البيانات، نوصي باستخدام النسخ المتماثلة للقراءة فقط للاستعلامات التي تتطلب تحميل وتجميع كمية كبيرة من البيانات. نوصي بتسليم ملفات ويب ثابتة (.html .js والصور وما إلى ذلك) عالميًا باستخدام شبكة تسليم المحتوى (CDN) لتحسين السرعة من خلال التخزين المؤقت.

التوزيع

أهم جانب يجب مراعاته عند نشر هذا السيناريو هو تنسيق عمليات التوزيع عبر الخلفية المستندة إلى السحابة والواجهة الأمامية (الهواتف/الأجهزة). ضع في اعتبارك استخدام مفهوم علامة الميزة لتحقيق ذلك.

الإدارة

لمحاذاة أفضل لفكرة التعامل مع كل مجال وظيفي باستخدام خدمة مصغرة محددة، على المدى الطويل، هناك فرصة لتقسيم قاعدة البيانات إلى عدة قواعد بيانات أصغر. سيؤدي القيام بذلك إلى تمكين العزلة المبدئية والاستقلالية للتدفق المتعلق بكل خدمة مصغرة بدلًا من تركيز البيانات المتعلقة بجميع الخدمات في قاعدة بيانات واحدة. سيتطلب تحقيق هذا الهدف أتمتة توفير وإدارة قواعد البيانات هذه، وهي واحدة من القدرات الأساسية لخدمة قاعدة بيانات PaaS في السحابة. وينبغي دمج طبقة إدارة قاعدة البيانات هذه في الحل وكذلك في حل المراقبة الموحد.

مراقبة‬

من المهم مراقبة كل مستوى من المستويات، ويجب توحيد كل واجهة مراقبة في مستودع واحد في السحابة. من المهم تمكين ارتباط جميع هذه السجلات ونقاط بيانات تتبع الاستخدام لضمان رؤى شاملة عبر المكونات والطبقات.

اليوم، تتضمن الطبقات المراقبة ما يلي:

  • تطبيق Windows (برنامج ملائم على سطح مكتب أخصائي الرعاية السمعية)
  • منطق التطبيق المستضاف
  • الخدمات السحابية

تغيير الحجم والتحجيم

تأكد من تحسين تكوين مجموعات Azure Kubernetes لمطابقة متطلبات المقياس التي تتقلب مع وقت اليوم أو الأنماط الإقليمية. ضع في اعتبارك إلغاء تحميل أحمال عمل القراءة (مثل تجميع الاستعلامات) باستخدام قراءة النسخ المتماثلة في قاعدة بيانات Azure لـPostgreSQL.

سيؤدي استخدام ملحق TimescaleDB لـPostgreSQL إلى تمكين معالجة أكثر كفاءة للبيانات المتعلقة بالوقت الواردة من الأجهزة الطبية. ضع في اعتبارك استخدام حل توسيع النطاق مثل قاعدة بيانات Azure لـPostgreSQL – Hyperscale (Citus) للوصول إلى النطاق العالمي عن طريق توفير عقد قاعدة بيانات متعددة.

الأمان والامتثال

ويوفر عامل الأمان ضمانات للحماية من الهجمات المتعمدة واستغلال البيانات والأنظمة القيمة الخاصة بك. للمزيد من المعلومات، يرجى الرجوع إلى نظرة عامة على ركيزة الأمان.

يعالج هذا الحل بيانات PHI والبيانات الشخصية. على هذا النحو، من المهم استخدام الخدمات المعتمدة للتطبيقات الطبية (شهادات HIPAA، ليس فقط للبيانات التي تبقى في قاعدة البيانات ولكن أيضًا السجلات وبيانات تتبع الاستخدام). للحصول على التفاصيل، يرجى الرجوع إلى قسم HIPAA في مركز توثيق Microsoft.

يجب استخدام الهوية المدارة على جميع خدمات Azure التي تدعم هذا النوع من المصادقة بدون كلمة مرور لتبسيط إدارة كلمة المرور: AKS وPostgreSQL وRedis Cache ومركز الإعلام وAzure Key Vault وAzure Functions. راجع جميع الخدمات التي تدعم الهويات المدارة لموارد Azure.

تحسين التكلفة

يركز تحسين التكلفة على البحث عن طرق للحد من النفقات غير الضرورية وتحسين الكفاءة التشغيلية. لمزيد من المعلومات، راجع نظرة عامة على ركيزة تحسين التكلفة.

للنشر في منطقة واحدة، تتوفر معلومات التسعير على سبيل المثال في حاسبة التسعير

المساهمون

تحتفظ Microsoft بهذه المقالة. وهي مكتوبة في الأصل من قبل المساهمين التاليين.

الكتاب الرئيسيون:

الخطوات التالية

للبدء في تنفيذ بنية قابلة للمقارنة لعملك، ضع في اعتبارك بناء المهارات حول خدمات الويب وقواعد البيانات مثل قاعدة بيانات Azure ل PostgreSQL وتقنيات وتقنيات تطوير تطبيقات المحمول مثل .NET MAUI.

وثائق المنتج:

الاتصالات في الوقت الحقيقي:

يتوفر المزيد من المعلومات حول كيفية توفير WebRTC لقدرات الاتصال في الوقت الحقيقي لتطبيقات الهاتف المحمول على موقع مشروع WebRTC.

تشغيل الخوادم:

استخدم مكتبة عميل مثل Icelink (التي تم تحميلها بواسطة التطبيق على الهاتف ومن قبل البرنامج المناسب لسطح المكتب لمتخصصي المساعدة السمعية) لإدارة الخوادم المتحولة* وأنواع الاتصال (tcp، udp، p2p) بين العميلين (البرنامج المناسب والتطبيق على الهاتف). مكتبة العميل:

  • إنشاء قناة الدفق
  • إنشاء الاتصالات
  • يدير الاتصال في حالة وجود أخطاء، وحزم البيانات المفقودة، ويضبط التدفق تلقائيا إلى تباينات النطاق الترددي
  • ترميز/فك ترميز المكالمات (الصوت و/أو الفيديو) في أثناء المكالمات

*تحويل الخوادم هي كيانات شبكة مسؤولة عن ترحيل الوسائط في البروتوكولات ذات الصلة بـ VoIP. في هذا الحل تتم استضافتها من قبل https://xirsys.com/ في العديد من مراكز البيانات في جميع أنحاء العالم. تأسيس اتصال مباشر بين عميلين ضمن نفس الجلسة.