Rumah > Artikel > pembangunan bahagian belakang > PHP dan MQTT: Membina aplikasi komunikasi data masa nyata yang cekap
PHP dan MQTT: Bina aplikasi komunikasi data masa nyata yang cekap
Dengan perkembangan pesat teknologi Internet, komunikasi data masa nyata menjadi semakin penting. Sama ada aplikasi sembang dalam talian, pemantauan data masa nyata atau aplikasi IoT, data perlu dihantar dengan cepat dan boleh dipercayai. Bagi memenuhi permintaan ini, MQTT (Message Qeuing Telemetry Transport) telah menjadi pilihan semakin ramai pembangun. MQTT ialah protokol pemindahan mesej ringan dengan kependaman rendah, penggunaan lebar jalur rendah dan pelaksanaan yang mudah. Artikel ini akan memperkenalkan cara menggabungkan PHP dan MQTT untuk membina aplikasi komunikasi data masa nyata yang cekap.
Pertama, kita perlu memasang dan mengkonfigurasi pelayan MQTT. Pada masa ini, pelaksanaan MQTT yang lebih popular termasuk Eclipse Mosquitto dan EMQ X. Di sini kami mengambil Eclipse Mosquitto sebagai contoh untuk memperkenalkan secara ringkas proses pemasangan dan konfigurasinya.
Langkah 1: Muat turun dan pasang Mosquitto
Muat turun pakej pemasangan Mosquitto yang sesuai untuk sistem pengendalian anda di tapak web rasmi (https://mosquitto.org/download/) dan ikut wizard pemasangan untuk memasang.
Langkah 2: Mulakan Mosquitto
Selepas pemasangan selesai, anda boleh memulakan Mosquitto melalui baris arahan. Secara lalai, Mosquitto berjalan pada port 1883.
Langkah 3: Buat topik MQTT
MQTT menggunakan topik untuk mengenal pasti sasaran penghantaran data. Kita boleh mencipta tema menggunakan alat baris arahan yang disediakan oleh Mosquitto. Buka terminal baris arahan dan jalankan arahan berikut:
mosquitto_pub -h localhost -t mytopic -m "Hello, MQTT!"
Ini akan menerbitkan mesej "Hello, MQTT!" Anda boleh menentukan nama topik dan kandungan mesej secara bebas mengikut keperluan anda.
Kini, kita boleh mula menggunakan MQTT dalam PHP untuk melaksanakan komunikasi data. Pertama, kita perlu memasang dan mendayakan sambungan MQTT.
Langkah 1: Pasang sambungan MQTT
Buka terminal dan jalankan arahan berikut:
pecl install Mosquitto-alpha
Ini akan memuat turun dan memasang sambungan MQTT daripada repositori rasmi.
Langkah 2: Dayakan sambungan MQTT
Edit fail php.ini dan tambah baris berikut pada penghujung fail:
extension=mosquitto.so
Simpan dan tutup fail, kemudian mulakan semula perkhidmatan PHP untuk sambungan itu berkuat kuasa.
Kini, kami boleh menulis kod PHP untuk menyambung kepada broker MQTT dan melaksanakan komunikasi data.
<?php // 连接到MQTT broker $mqtt = new MosquittoClient(); $mqtt->connect("localhost", 1883); // 订阅主题 $mqtt->subscribe("mytopic", 1); // 接收和处理消息 $mqtt->onMessage(function($message) { echo "Received message: " . $message->payload . " "; }); // 保持连接 while ($mqtt->loop() == MQTTClient::LOOP_SUCCESS) { } // 断开连接 $mqtt->disconnect(); ?>
Dalam contoh di atas, kami mula-mula mencipta objek klien MQTT dan lulus kaedah connect()
方法连接到本地的MQTT broker。然后,通过subscribe()
方法订阅了主题"mytopic"。接下来,我们使用onMessage()
方法来定义回调函数,在收到消息时进行处理。最后,通过loop()
方法来保持连接,并在循环中处理来自MQTT broker的消息。当我们需要断开连接时,使用disconnect()
.
Melalui contoh kod di atas, kami boleh menggunakan MQTT dalam PHP untuk melaksanakan aplikasi komunikasi data masa nyata yang cekap. Kita boleh menulis logik perniagaan dan kod berfungsi yang lebih kompleks mengikut keperluan kita sendiri. Pada masa yang sama, digabungkan dengan teknologi lain, seperti pangkalan data, WebSocket, dll., aplikasi masa nyata yang lebih berkuasa dan fleksibel boleh dibina.
Ringkasnya, gabungan MQTT dan PHP boleh membina aplikasi komunikasi data masa nyata yang cekap. Sebagai protokol penghantaran mesej yang ringan, MQTT mempunyai ciri kependaman rendah, penggunaan lebar jalur yang rendah dan pelaksanaan yang mudah, menjadikannya sangat sesuai untuk komunikasi data masa nyata. Sebagai bahasa skrip sebelah pelayan yang popular, PHP mempunyai pelbagai aplikasi. Dengan menggabungkan MQTT dan PHP, kami boleh mencapai penghantaran data masa nyata dan melaksanakan pelbagai aplikasi masa nyata dengan mudah. Sama ada aplikasi sembang dalam talian atau aplikasi Internet of Things, ia boleh disokong dan digunakan dengan baik. Saya harap artikel ini boleh membawa anda bantuan dan inspirasi, sertai keluarga besar komunikasi data masa nyata!
Atas ialah kandungan terperinci PHP dan MQTT: Membina aplikasi komunikasi data masa nyata yang cekap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!