SignalR คืออะไร ?
SignalR คือ library หนึ่ง ของ ASP.NET ที่เอาไว้จัดการงานแบบ Realtime โดยเขียน Code ไว้ในส่วนกลางแล้ว มี Client มา Connect Register ลงทะเบียนเอาไว้ แล้วเมื่อมี User มาแจ้ง update ข้อมูล Code ที่ถูกเขียนไว้ในส่วนกลางจะทำหน้าที่รับและกระจายข้อมูลไปยัง ทุกๆ Client ที่ได้มีการลงทะเบียนไว้
SignalR เหมาะสำหรับงานประเภทไหน โดยส่วนตัวแล้วผู้เขียนคิดว่า SignalR เหมาะสำรับงานแบบที่ต้องการความ Realtime ในการ display data ยกตัวอย่าง เช่น
- งานประเภท logistics ในการรับข้อมูลพิกัด lat long แล้วนำวาดบนแผนที่
- งานประเภท Business แสดง Graph ข้อมูลแบบ Realtime
- งานประเภท Networks Monitor ไว้แสดงข้อมูล ปริมาณ traffic การใช้งานข้อมูล
- งานประเภท Chat Program ไว้คุยกันผ่านหน้า Web
SignalR และ WebSocket
SignalR ใช้เทคโนโลยี WebSocket ในการส่งผ่านข้อมูลออกไปให้ปลายทางที่ available พร้อมรับข้อมูล และส่งผ่านกลับอีกครั้งเมื่อมีความจำเป็นต้องเรียกอีกครั้ง โดยที่ทาง developer ไม่ต้องเขียน code implement เอง code ในส่วนนี้ได้ถูกจัดการให้อย่างพร้อมใช้งาน ที่สำคัญ code ที่ถูกเขียนขึ้นจะไม่ต้องกังวลเกี่ยวกับการเขียนเรียกเส้นทาง (Path) ของแต่ละ client ที่ Register เอาไว้ เพราะว่า SignalR จะทำการค้นหาและ Update ข้อมูลปลายทางของเครื่อง Client ที่รับข้อมูลโดยอัตโนมัติ
ด้วยเหตุผลที่กล่าวมาข้างต้น ไม่มีเหตุผลเลยที่ทำไม เราถึงจะไม่เลือกใช้ SignalR มา apply ในงานของเรา แล้วคุณจะรู้สึกสนุก ชอบในความง่ายและหลงรัก ใน SignalR