Verwenden Sie PHP, um eine Verbindung zu einem Drittanbieter-Server herzustellen. Sie müssen alle drei Minuten einen Heartbeat an die andere Partei senden. Wie kann dies erreicht werden?

WBOY
Freigeben: 2016-09-27 14:18:06
Original
1293 Leute haben es durchsucht

Der Geschäftsprozess ist wie folgt. Unser PHP-Server verwendet einen Socket, um eine Verbindung zum anderen Server herzustellen. Der andere Server sendet von Zeit zu Zeit Nachrichten an unseren PHP-Server, sodass unser PHP ständig lesen muss. Wir müssen auch alle drei Minuten einen Heartbeat senden. Wenn PHP weiterliest und keine Nachricht von der anderen Partei gesendet wird, wartet PHP weiter. Wie können wir sicherstellen, dass alle drei Minuten ein Heartbeat gesendet wird?

Antwortinhalt:

Der Geschäftsprozess ist wie folgt. Unser PHP-Server verwendet einen Socket, um eine Verbindung zum anderen Server herzustellen. Der andere Server sendet von Zeit zu Zeit Nachrichten an unseren PHP-Server, sodass unser PHP ständig lesen muss. Wir müssen auch alle drei Minuten einen Heartbeat senden. Wenn PHP weiterliest und keine Nachricht von der anderen Partei gesendet wird, wartet PHP weiter. Wie können wir sicherstellen, dass alle drei Minuten ein Heartbeat gesendet wird?

Im Allgemeinen ist es nicht sehr gut, hierfür PHP zu verwenden.

Verzögerung für 3 Minuten Sleep(3)
Führen Sie das Skript set_time_limit(0) immer aus.
Trennen Sie die Verbindung zum Client und fahren Sie mit der Ausführung fort,ignore_user_abort(0)

Erwägen Sie die Verwendung von Swoole

Sie müssen beim Lesen auch einen Herzschlag senden. Verwenden Sie dazu php-cli

Swoole kann ganz einfach Ihre Bedürfnisse erfüllen

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage