내가 과거에 이것을 처리 한 방법은 클라이언트 (귀하의 경우에는 플레이어)가 자신의 대기열을 갖는 것입니다. 또는 모든 플레이어에게 알리려면 주제 교환을 설정할 수 있습니다.
그는 내가 지금 가지고있는 설정입니다.
직접 거래소 : App.Server (클라이언트가 서버 소비된다 게시)
직접 Exchange가 : App.Client.UniqueIDForClient1은 (서버가 발간 전용 클라이언트 1이 소비가)
직접 거래소 : App.Client.UniqueIDForClient2 (서버 발간, 만 고객이 개 소비된다)
주제 거래소 : 응용 프로그램 (서버 발간, 모든 클라이언트는
당신은 C#을 사용하는 경우, 이것은 설치 및 주제 교환에 게시하는 방법입니다) App.Client 구독하기 :
ConnectionFactory mqFactory = new ConnectionFactory();
mqFactory.HostName = "localhost";
IConnection mqConnection = mqFactory.CreateConnection();
IModel mqChannel = mqConnection.CreateModel();
mqChannel.ExchangeDeclare("App", "topic", true);
response = "This Message Will Go To All Topic Subscribers";
mqChannel.BasicPublish("App", "App.Client", null, Encoding.UTF8.GetBytes(response));
고객이 현재 PHP/AJAX를 사용하는 웹 앱이므로 소비자/가입자 코드를 편리하게 사용할 수 없습니다. 여기
는 가입자 측 예제를 가지고 offical 한 RabbitMQ 튜토리얼에 대한 링크입니다 : [? 그것은 rabbitmq의 메시지에 구성하여 클라이언트의 IP 주소를 얻을 수 있나요]의
https://www.rabbitmq.com/tutorials/tutorial-five-dotnet.html
출처
2014-09-02 02:45:26
Tim
가능한 중복 (HTTP : // 유래. com/questions/25494920/get-clients-ip-address-by-configuration-in-rabbitmqs-message) – pinepain