وسیله د کور د روټر تر شا ده، نه د پورټ لېږد شته او نه عامه پته، او بیا هم باید په څو ثانیو کې ترتیبات ترلاسه کړي. چل د فایر وال په کې یو سوری نه دی. دا هغه اړیکه ده چې وسیله بهر ته د هغه بروکر په لور پرانیزي چې کولای شي ورته ورسیږي، او هغه بیا پیغامونه په همدې ټینګه لاره بېرته لېږي. هر هغه ځانګړتیا چې خلک یې په دې ډیزاین کې خوښوي، او هر تله چې پکې ده، له همدې سرچپه کیدو څخه راځي.

په رښتیا NAT ته څه تېریږي

کله چې وسیله بروکر ته د TCP اړیکه پرانیزي، د کور روټر یو نقشه جوړوي او د بهیر تر ژونده یې ژوندی ساتي. په هغه بهیر باندې ځوابونه وسیلې ته بېرته راځي ځکه نقشه لا دمخه شته. بروکر هیڅکله کور ته د څه پیل نه کوي، نو د روټر لپاره د ردولو وړ نا غوښتل شوې راتلونکې بسته نشته. دا ټول شبکه ای استدلال دی، او له همدې کبله دا طریقه په هغو شبکو کې کار کوي چې تاسو یې نه کنټرولوئ.

وسیله باید اړیکه ژوندې وساتي یا یې بیا ټینګه کړي، او کله چې معماري ټینګه شي دا د باور وړتیا پوښتنه کیږي.

بروکر موضوعات لارښوونه کوي، HTTP پروکسي نه کوي

MQTT د خپرولو او ګډون تبادلې تعریفوي: وسیله د هغه موضوع فلټر ګډون کوي چې لوستلو اجازه یې لري، او مجاز کنټرولر په سمون خورا موضوع خپروي. بروکر خپرونې له ګډونونو سره سمون خوري او کاپي رسول کوي. هغه نه پوهیږي چې د براوزر غوښتنه څه ده، او د وسیلې ویب سرور ته به HTTP GET ونه لېږي. که موجوده فرم ویره یوازې HTTP وایي، د بروکر ډیزاین ته د اپلیکیشن بدلون یا په قصد جوړ شوی ژباړنې برخه اړینه ده.

د موضوعاتو نومونه هم اجازه نه ده. ډیری بروکران د هر کلاینټ لپاره د لاسرسي کنټرول لیستونه ملاتړ کوي، او وسایل باید د یو نړیوال نوم تشه شریکولو پرځای خپلو خپرولو او ګډون ونو ته محدود شي.

د وسیلې سرچینې د TLS بڼه ټاکي

ESP8266 محدوده RAM لري، او TLS لاس ورکول تر ټولو ګران کار دی چې کوي یې. Arduino هسته BearSSL په همدې محدودیت خاطر وړاندې کوي، او د CA تصدیق کول او د ګوتې نښې ټینګول ترمنځ انتخاب هم د حافظې نښه او هم هغه څه بدلوي چې د بل نوم لپاره معتبر سند لرونکی بریدګر کولای شي. کله چې هپ اجازه ورکړي د بروکر CA تصدیق کول پیاوړی انتخاب دی. د بار اندازه هم مهمه ده: MQTT کلاینټ بفر ساتي، او له هغې لوی پیغامونه په خاموشۍ پرې کیږي پرته له دې چې بفر په قصد لوی شي.

Keepalive او د ساکټ وخت پایونه د همدې بودیجې برخه دي، ځکه هغه کلاینټ چې مړه اړیکه هیڅکله نه ویني، پرته له دې چې تېروتنه راپور کړي، د حکمونو منل بندوي.

هغه پیغام معنا چې چیچل کوي

ساتل شوی پیغام بروکر ذخیره کوي او وروسته سمون خورو ګډونوالو ته رسوي، دا د اوسني حالت لپاره ډېر ښه او د یو ځلي حکمونو لپاره خطرناک دی: هغه وسیله چې بیا نښلیږي کولای شي د پرون حکم د نوي په څېر ترلاسه کړي. QoS 1 لږ تر لږه یو ځل رسول تضمینوي، نو کاپي نورماله ده او اپلیکیشن باید د تکرار په وړاندې خوندي وي، په غوره توګه د داسې پیژندونکي یا وخت نښې سره چې رد کولای شي. وروستۍ وصیت تاسو ته د حالت سیګنال درکوي کله چې وسیله ورلوېږي، مګر یوازې هغه وخت چې اړیکه واقعاً ناکامه شي نه دا چې ځوړند پاتې شي.

د پاکې ناستې چلند ټاکي چې بروکر ستاسو ګډونونه هغه وخت چې تاسو نه یاست ساتي که نه، او په دې کې تېروتنه کول هغه لامل دی چې ځینې وسایل له هر بیا نښلېدو وروسته لومړنی پیغام له لاسه ورکوي.

TLS بروکر ته رسېدونکې برخه ساتي. دا د بروکر چلوونکي په وړاندې د بار له سره تر سره کوډ کول نه دي، هغه کولای شي هر هغه څه ولولي چې تاسو یې د هغه له لارې خپروئ.

د ژوند دوره محدوده کړئ او د بې ضرره معلوماتو سره یې وازموئ

بیا نښلېدل د کلکې بیا هڅې لوپ پرځای د بېرته تګ سره پلان کړئ، که ناسته دوامداره نه ده په څرګنده توګه بیا ګډون وکړئ، او د اړیکې پایله ولیکئ ترڅو خاموشه افلاین وسیله شاهد پریږدي. د بیا نښلېدو لاره د داسې نمونه بارونو سره وازموئ چې هیڅ نه کوي، ځکه د حکم چینل لومړنی تولیدي ازموینه باید ریښتینی حکم نه وي. بیا تایید کړئ چې زوړ ساتل شوی پیغام د بیا نښلېدو پر مهال څه کوي، او پریکړه وکړئ چې ایا دا چلند د هر موضوع لپاره منونکی دی.

په دې توګه، ډیزاین یوه راتلونکې شبکه ای اړتیا لرې کوي او د وسیلې سافټویر، د بروکر پالیسي او د پیغام معنا د پټو انګیرنو پرځای د لیدلو وړ کار په توګه پریږدي.

اړوندې مقالې