كيفية اختيار منصة إنترنت الأشياء الخاصة بك - هل يجب أن تكون مفتوحة المصدر؟

الأرقام تتحدث عن ذاتها…

في مقالتي السابقة "هل يجب استخدام Serverless Architecture لحلول إنترنت الأشياء الخاص بك؟" لقد راجعت منهج DataArt لبناء حل إنترنت الأشياء بدون خادم من نقطة الصفر ، إيجابيات وسلبيات ، والتكاليف ، والعوامل التي يجب مراعاتها قبل الالتزام بهذا النهج.

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

تقوم الشركات السحابية ، بما في ذلك AWS و Azure و IBM و Google ، باستثمارات كبيرة في خدماتها السحابية ، مما يجعلها فعالة من حيث التكلفة ومريحة وقابلة للتطوير وتحمل الأخطاء. منصة إنترنت الأشياء المخصصة للاختيار لا ينبغي أن تكون مختلفة.

بصفتي رئيسًا لممارسة IoT في DataArt ، التي تدير DeviceHive ، كان علي التعامل مع العديد من التحديات التي تواجهها جميع منصات IoT. لقد ساعدني ذلك في التوصل إلى قائمة المعايير لتقييم منصة إنترنت الأشياء على مستوى الإنتاج:

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

إذا كنت معتادًا على هذه المعايير ، يمكنك تخطي القسم التالي والانتقال مباشرةً إلى التحليل / الحسابات.

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

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

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

الموثوقية

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

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

التخصيص

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

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

عمليات

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

من المزايا المهمة أيضًا لوحة المعلومات التي تعرض إحصائيات النظام والمعلومات الصحية العامة ، وحالة كل وحدة أو خدمة معينة ، مع وجود خيار للإشعارات في حالة الطوارئ.

بروتوكولات

يجدر التفكير مقدمًا في البروتوكولات التي يدعمها حل IoT المخصص. إذا كان هناك عدم يقين بشأن البقاء مع منصة IoT معينة في المستقبل ، فإنني أوصي بالتحقق مما إذا كانت تدعم MQTT ، وهو البروتوكول الأكثر استخدامًا على نطاق واسع والذي تم اختراعه منذ حوالي 20 عامًا ومعيارًا فعليًا في IoT.

إنه يوفر فرصة للانتقال بسلاسة تقريبًا إلى منصة IoT أخرى ، وذلك باستبدال وسيط MQTT الأساسي الخاص به مع منصة IoT أخرى تدعم MQTT. علاوة على ذلك ، تم اعتماد هذا البروتوكول على نطاق واسع من قبل معظم مزودي السحابة IoT ، بما في ذلك AWS و Azure و IBM Watson.

تكتسب مرونة إضافية إذا كان حل إنترنت الأشياء يدعم واجهة برمجة التطبيقات عبر WebSockets و REST و CoAP.

الأجهزة الملحد

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

ومع ذلك ، مع الأجهزة المنخفضة ، يتم تقييد أحدهما من قِبل ذاكرته وقوته الحاسوبية ، ويجب أن تكون التطبيقات فعالة للغاية في استهلاك الموارد. قبل اختيار النظام الأساسي لـ IoT ، يجدر التحقق من الأجهزة التي يدعمها ، سواء كان لديها تطبيقات أصلية للأجهزة المنخفضة النهاية ، أو إذا كان يدعم بروتوكولات الاتصالات خفيفة الوزن (MQTT أو CoAP) التي يمكن تشغيلها على الأجهزة المنخفضة النهاية.

سحابة الملحد

في معظم الحالات ، عند النظر في منصة إنترنت الأشياء مخصصة أو مفتوحة المصدر ، من المهم أن تتذكر أن نشرها وعملياتها وصيانتها هي أيضًا جزء من المعادلة.

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

الدعم

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

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

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

الهندسة المعمارية والتكنولوجيا المكدس

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

يجب أن تستخدم المنصة الأطر والأدوات واللغات المدعومة جيدًا من حيث الإنتاج ، مع الحد من تنوعها من أجل تقليل الحاجة للمطورين ذوي مجموعات المهارات المعنية.

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

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

الأمان

الأمن في إنترنت الأشياء هو أحد أهم الموضوعات. المشكلة الأساسية هي عدم وجود معايير الصناعة. بينما يتعلق الأمان بكل مكون من عناصر النظام البيئي IoT - الأجهزة والأنظمة الأساسية والتطبيقات - تركز هذه المقالة على أمان النظام الأساسي.

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

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

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

كلفة

يوفر مطورو نظام إنترنت الأشياء المختلفون نماذج تسعير مختلفة. في معظم الحالات ، يمكن استخدام نظام أساسي مفتوح المصدر مجانًا. فيما يلي نماذج التسعير الأكثر شيوعًا لـ IoT:

  • الدفع لكل عقدة / سنة
  • الدفع لكل جهاز نشط
  • الدفع لكل رسالة
  • ادفع مقابل الميزات المميزة (اختياري)
  • دفع مقابل الدعم (اختياري)

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

التحليل / الحسابات

سنقارن تكاليف استخدام إنترنت الأشياء دون استخدام الخادم وإنترنت الأشياء مفتوحة المصدر في السحابة. من أجل البساطة ، سنفترض أن نظام إنترنت الأشياء مفتوح المصدر يحتوي على السمات التالية:

  1. يتم تحجيمها خطيًا ويمكن التنبؤ به - يمكن لكل عقدة إضافية التعامل مع عدد ثابت من الرسائل في الثانية الواحدة ؛
  2. يتم توزيع الطلبات بالتساوي مع مرور الوقت دون أي طفرات ؛
  3. تعمل المنصة في وضع تسليم رسالة مضمون ؛
  4. حجم الرسالة هو 1 كيلو بايت ؛
  5. يمكن لمثيل عقدة واحدة معالجة 5000 مللي ثانية / ثانية مع زمن انتقال معقول أقل أو يساوي 200 مللي ثانية.

بادئ ذي بدء ، دعونا نقارن تكاليف البنية التحتية الخام. للتأكد من قيامنا بمقارنة التفاح مع التفاح ، سنقوم بتحليل AWS IoT بدون خادم وحل IoT مفتوح المصدر المستضاف على بنية AWS التحتية.

سيكون حجم مرجعنا لحل IoT مفتوح المصدر هو c4.xlarge مع SSD للأغراض العامة سعة 500 جيجابايت ومساحة احتياطية تبلغ 500 جيجابايت لكل مو لكل عقدة. بالإضافة إلى ذلك ، سنقوم بحساب تكاليف عنوان IP مرن واحد ، وموازن تحميل واحد لأغراض الكتلة وحركة المرور الصادرة بناءً على 1 كيلوبايت لكل رسالة. بالنسبة إلى إنترنت الأشياء بدون خادم ، سننظر في إعداد من مقالتي السابقة ونحسب فقط AWS IoT نفسها وخدمات DynamoDB.

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

لنفترض أن هناك جهازًا واحدًا يرسل رسالة واحدة في الثانية إلى السحابة. وسوف تولد 2.628 مليون رسالة شهريا ، أكثر من 730 ساعة في المتوسط ​​شهريا.

تكلف AWS IoT 5 دولارات لكل 1 مليون طلب ، وتكلف DynamoDB 0.0065 دولار لكل عشرة طلبات يتم تقديمها في الثانية ، بينما تحصل نفس التكلفة على كل 50 طلبًا في الثانية.

نرى فاتورة شهرية ميسورة التكلفة بحوالي 22 دولار.

من خلال حلول إنترنت الأشياء المفتوحة المصدر المستضافة على البنية التحتية AWS ، سنحصل على فاتورة قريبة من 225 دولار.

ومع ذلك ، إذا كان لدينا عشرة أجهزة ترسل 26.2 مليون رسالة شهريًا ، فسنحمل 140 دولارًا على AWS IoT ومازلنا 225 دولارًا للنظام الأساسي المفتوح المصدر.

دعنا نلقي نظرة على المخططات أدناه لمعرفة التكلفة الشهرية وتكلفة كل رسالة ترتبط بعدد من الرسائل المرسلة في الثانية.

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

دعنا ننظر إلى أعداد أكبر. ماذا يحدث إذا كان لدينا 10000 جهاز؟ نحصل على 136،000 دولار شهريًا لـ AWS IoT مقابل 3،300 دولار للمصدر المفتوح! هذا أمر مثير للإعجاب حقًا ، وإذا كان التحول إلى نظام أساسي آخر لم يكن جذابًا من قبل ، فقد أصبح الآن أمرًا لا بد منه. كلما زاد عدد المراسلات لديك ، كلما قلت تكلفة استخدام الإنترنت (IoT) دون الخادم ، وأكثر يمكنك التوفير مع نظام أساسي آخر.

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

وأخيرًا ، إليك مخطط التكلفة الشهرية لنظام إنترنت الأشياء المحمّل للغاية. يمكنك جعل الاستنتاجات الخاصة بك.

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

الاستنتاجات

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

إذا لم يكن من المتوقع أن تنمو الأعمال بسرعة ، أو للتحقق من صحة مفهوم العمل ، فإن الحل المستند إلى مجموعة النظراء هو الأفضل. خلاف ذلك ، إذا كانت منصة IoT تتوافق مع معظم المعايير المذكورة أعلاه ، فحينئذٍ نصيحتي - اذهب مع حل مفتوح المصدر.

كتبها ايجور إيلونين ، رئيس إنترنت الأشياء في DataArt.

هل تريد إرسال جميع أحدث التطورات والأخبار التقنية مباشرةً إلى صندوق الوارد الخاص بك؟