Channel เป็นองค์ประกอบการสื่อสารแบบกระจายที่ใช้สำหรับการสื่อสารระหว่างกระบวนการหรือเซิร์ฟเวอร์
คุณสมบัติ
- ขึ้นอยู่กับโมเดลการสมัครสมาชิกและการตีพบ
- I/O แบบไม่บล็อก
หลักการ
Channel ประกอบด้วยเซิร์ฟเวอร์ Channel/Server และไคลเอ็นต์ Channel/Client
Channel/Client ผ่านอินเทอร์เฟซการเชื่อมต่อเข้ากับ Channel/Server และรักษาการเชื่อมต่ออย่างยาวนาน
Channel/Client ผ่านการเรียกใช้อินเทอร์เฟซที่ถามบอก Channel/Server ว่าตนสนใจเหตุการณ์ใดและลงทะเบียนฟังก์ชันเรียกกลับของเหตุการณ์ (การเรียกกลับเกิดขึ้นในกระบวนการของ Channel/Client)
Channel/Client ผ่านอินเทอร์เฟซการเผยแพร่เพื่อเผยแพร่เหตุการณ์ที่แน่นอนและข้อมูลที่เกี่ยวข้องกับเหตุการณ์ที่ Channel/Server
Channel/Server รับเหตุการณ์และข้อมูลแล้วแจกแจงให้ Channel/Client ที่สนใจเหตุการณ์นี้
Channel/Client ได้รับเหตุการณ์และข้อมูลก่อนจะกระตุ้นการเรียกใช้ตามคำสั่ง on ที่ตั้งไว้
Channel/Client จะได้รับเหตุการณ์ที่ตนสนใจและกระตุ้นการเรียกใช้เท่านั้น
ติดตั้ง
' composer require workerman/channel '
ข้อควรระวัง
Channel เฉพาะสำหรับการใช้งานใน workerman environment เท่านั้น ไม่สามารถใช้ใน environment php-fpm ได้