Channel Dağıtık İletişim Bileşeni

(Workerman sürümü >= 3.3.0 gereklidir)

Kaynak adresi: https://github.com/walkor/Channel

Channel, süreçler arası ya da sunucular arası iletişimi gerçekleştirmek için kullanılan bir dağıtık iletişim bileşenidir.

Özellikler

  1. Abone yayım modeli bazlıdır.

  2. Engellemeyen IO.

Prensip

Channel, Channel/Server sunucusu ve Channel/Client istemcisini içerir.

Channel/Client, connect arayüzü aracılığıyla Channel/Server ile bağlantı kurar ve uzun süreli bir bağlantı sürdürür.

Channel/Client, on arayüzünü çağırarak Channel/Server'a hangi olaylarla ilgilendiğini bildirir ve olay geri çağırma fonksiyonlarını kaydeder (geri çağırmalar Channel/Client'ın bulunduğu süreçte gerçekleşir).

Channel/Client, publish arayüzü aracılığıyla Channel/Server'a belirli bir olayı ve olaya ilişkin verileri yayar.

Channel/Server, olay ve verileri aldıktan sonra bu olaya ilgi duyan Channel/Client'a dağıtır.

Channel/Client, olay ve verileri aldıktan sonra on arayüzü ayarına göre geri çağırmayı tetikler.

Channel/Client yalnızca ilgilendiği olayları alır ve geri çağırmayı tetikler.

Kurulum

composer require workerman/channel

Dikkat

Channel sadece workerman ortamında kullanılabilir, php-fpm ortamında kullanılamaz.