วิธีการเลือกเซิร์ฟเวอร์ IoT น้ำหนักเบาแบบง่ายสำหรับการพัฒนา


13

เรากำลังสำรวจกรณีและวิธีการใช้ IoT ที่แตกต่างกัน เพื่ออำนวยความสะดวกในการสำรวจทดลองออกแบบพัฒนาและทดสอบโซลูชันที่เป็นไปได้ฉันกำลังตรวจสอบความเป็นไปได้ของการตั้งค่าเซิร์ฟเวอร์ IoT แบบง่าย ๆ

ดังนั้นฉันต้องการที่จะเข้าใจสถาปัตยกรรมพื้นฐานของเซิร์ฟเวอร์ที่ให้บริการอุปกรณ์ IoT อุปกรณ์ IoT ที่พูดอย่างกว้างขวางจะเชื่อมต่อบริการที่ให้บริการข้อมูลและทำให้ข้อมูลพร้อมใช้งานโดยอุปกรณ์อื่น ๆ ตรงนี้ค่อนข้างตรงไปตรงมา

ตอนนี้อุปกรณ์ IoT edge ที่เป็นไปได้จะใช้ Wi-Fi แต่วางแผนที่จะโยกย้ายไปยังอัตราการส่งข้อมูลต่ำโพรโทคอลพลังงานต่ำเช่น ZigBee, BLE หรืออาจเป็น Z-Wave ณ จุดนี้ฉันจะต้องใช้ฮับบางประเภท . ข้อมูลที่รับส่งข้อมูลจะอยู่ที่ประมาณ 100 ไบต์สูงสุดที่การส่งข้อมูลอาจสูงถึงหนึ่งธุรกรรมต่อนาที อุปกรณ์ขอบ IoT ส่วนใหญ่จะอัปโหลดข้อมูลพร้อมการดาวน์โหลดไปยังอุปกรณ์เป็นครั้งคราว

มีคนแนะนำว่าฉันดูเป็นMQTTและRabbitMQเป็นตัวเลือกที่เป็นไปได้ นอกจากนี้ฉันยังถูกนำไปยัง "การแสดงข้อความ MQTT ในเบราว์เซอร์แบบเรียลไทม์ " ซึ่งฉันกำลังดูในเวลาที่เขียน

นี่คือคำถามสองสามข้อที่ฉันเชื่อว่าเกี่ยวข้องกัน:

  • อะไรที่ทำให้เซิร์ฟเวอร์ IoT แตกต่างจากเว็บเซิร์ฟเวอร์, เซิร์ฟเวอร์จดหมายหรือเซิร์ฟเวอร์ FTP?
  • สถาปัตยกรรมพื้นฐานของเซิร์ฟเวอร์ IoT พื้นฐานคืออะไร?
  • คุณลักษณะใดมีความสำคัญเมื่อพิจารณาเซิร์ฟเวอร์ IoT แบบง่ายและน้ำหนักเบา

คำตอบ:


6

ฉันจะตอบคำถามแรกของคุณ ฉันคิดว่ามันจะดีกว่าถ้าถามคำถามเดียวต่อ ... คำถาม :)

อะไรที่ทำให้เซิร์ฟเวอร์ IoT แตกต่างจากเว็บเซิร์ฟเวอร์, เซิร์ฟเวอร์จดหมายหรือเซิร์ฟเวอร์ FTP?

  • เว็บเซิร์ฟเวอร์พูดถึง HTTP เพื่อให้หน้าเว็บ
  • เซิร์ฟเวอร์อีเมลพูดถึง POP / IMAP / SMTP เพื่อแลกเปลี่ยนอีเมล
  • เซิร์ฟเวอร์ FTP พูดถึงโปรโตคอล FTP สำหรับการถ่ายโอนไฟล์

โดยพื้นฐานแล้วมันเป็นเพียงวิธีถ่ายโอนข้อมูลระหว่างไคลเอนต์และเซิร์ฟเวอร์ เซิร์ฟเวอร์ IoT ไม่แตกต่างกันเพียงแค่พูดถึงโปรโตคอล 'IoT' เพื่อสื่อสารระหว่างไคลเอนต์และเซิร์ฟเวอร์ ข้อมูลที่ส่งผ่านไม่ใช่หน้าเว็บอีเมลหรือไฟล์เป็นข้อความเช่น "อุณหภูมิปัจจุบันคือ 20C" โปรโตคอลตัวอย่าง IOT มีและMQTTCoAP


ตัวอย่างเช่นเซิร์ฟเวอร์ "IoT" ของคุณอาจเป็น "MQTT Broker" และนั่นจะทำให้เป็นเซิร์ฟเวอร์ IoT หากคุณใช้ MQTT เพื่อส่งผ่านข้อมูลไปยังอุปกรณ์ต่างๆในโครงสร้างพื้นฐาน IoT ของคุณ
m4l490n

5

อะไรที่ทำให้เซิร์ฟเวอร์ IoT แตกต่างจากเว็บเซิร์ฟเวอร์, เซิร์ฟเวอร์จดหมายหรือเซิร์ฟเวอร์ FTP?

ตามที่ @ralight ชี้ให้เห็นเซิร์ฟเวอร์ IoT ทำงานกับ IoT โปรโตคอลสแต็ค นี่ไม่ได้ จำกัด เพียงแค่เลเยอร์ OSI หนึ่งชั้นจริงๆแล้วทุก ๆ ขั้นตอนคือหรือสามารถปรับให้เหมาะสมสำหรับการใช้ IoT และแน่นอนว่าต้องมีโปรโตคอลใหม่

นอกจากนี้ยังเป็นไปได้ว่าฮาร์ดแวร์นั้นผิดปกติ: ในอุปกรณ์ตัวรวบรวมข้อมูลการตั้งค่าเล็กน้อยเช่น Raspberry PI สามารถเก็บงานของเซิร์ฟเวอร์ทั้งหมดหรือบางส่วน

บางส่วนหมายถึงการประมวลผลแบบฟอลต์โดยที่ข้อมูลถูกประมวลผลซึ่งถูกรวบรวมและผลลัพธ์ที่ได้จะไปยังเซิร์ฟเวอร์หลักเท่านั้น

สถาปัตยกรรมพื้นฐานของเซิร์ฟเวอร์ IoT พื้นฐานคืออะไร?

จากเว็บไซต์นี้รายละเอียดฮาร์ดแวร์บางอย่าง:

ในสมมุติฐานกรณีของคุณสมมุติว่าลูกค้า 300 คนเปิดอยู่พร้อมกันบนเซิร์ฟเวอร์และลูกค้าแต่ละคนส่ง 10 msgs / วินาทีคิดเป็น 3,000 ข้อความต่อวินาที เชื่อฉันสิแม้แต่นายหน้าที่โฮสต์ด้วยดูอัลคอร์ที่มี RAM 2 GB จะไม่สิ้นเปลืองมากนัก

ดังนั้นฮาร์ดแวร์เซิร์ฟเวอร์ขั้นพื้นฐาน

คุณลักษณะใดมีความสำคัญเมื่อพิจารณาเซิร์ฟเวอร์ IoT แบบง่ายและน้ำหนักเบา

ฉันไม่ค่อยเข้าใจเรื่องนี้มากนัก แต่ฉันก็สนใจที่จะรู้ว่าราสเบอร์รี่ PI นั้นเพียงพอสำหรับเซิร์ฟเวอร์ MQTT หรือไม่ ฉันอ่านที่ไหนสักแห่งใน Quora ที่ Esp8266 ไม่ได้ แต่ฉันเห็นเดสก์ท็อปธรรมดาที่ทำงานบน RPI ดังนั้นทำไมมันไม่สามารถทำหน้าที่เป็นเซิร์ฟเวอร์ได้

สิ่งที่ควรพิจารณาก่อนลองใช้ Raspberry คือข้อกำหนดของฮาร์ดแวร์ของ Service stack ที่เลือก ด้วยฮาร์ดแวร์เซิร์ฟเวอร์ปกติจำนวนหน่วยความจำในปัจจุบันสูงมากจนไม่มีปัญหา

กล่าวถึง 3000msg / วินาทีค่อนข้างสูงเมื่อเทียบกับกรณีทดสอบ IoT และ RPI3 มี RAM 1G นั่นคือครึ่งดังนั้นมันขึ้นอยู่กับข้อความที่เติมหน่วยความจำในกรณีนั้นหรือเท่าไหร่ MQTT เปล่าต้องการ นั่นส่งผลต่อความเหมาะสมของมัน


1
ดูเหมือนว่าไม่มีปัญหากับ RPI ในฐานะเซิร์ฟเวอร์: iot.stackexchange.com/questions/1858/…
mico
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.