Rumah > pembangunan bahagian belakang > tutorial php > Amalan aplikasi WebSocket dalam tolak data masa nyata

Amalan aplikasi WebSocket dalam tolak data masa nyata

WBOY
Lepaskan: 2023-10-15 14:34:02
asal
1464 orang telah melayarinya

Amalan aplikasi WebSocket dalam tolak data masa nyata

Tajuk: Amalan aplikasi WebSocket dalam tolak data masa nyata

Pengenalan:
Dengan perkembangan pesat teknologi Internet, tolakan data masa nyata telah menjadi keperluan penting dalam banyak bidang aplikasi. Walau bagaimanapun, protokol HTTP tradisional tidak dapat memenuhi keperluan tolakan data masa nyata kerana batasan kaedah tindak balas permintaannya. Sebagai protokol komunikasi dupleks penuh, WebSocket boleh mewujudkan sambungan berterusan antara pelanggan dan pelayan melalui jabat tangan mudah untuk mencapai komunikasi dua hala masa nyata. Artikel ini akan memperkenalkan amalan aplikasi WebSocket dalam tolak data masa nyata dan memberikan contoh kod khusus.

1. Pengenalan kepada WebSocket
WebSocket ialah protokol komunikasi berasaskan TCP, ia adalah protokol lapisan aplikasi, sebaliknya, ia berbeza daripada model HTTP sambungan berterusan yang boleh digunakan oleh klien komunikasi dua hala masa nyata antara klien dan pelayan. Tujuannya adalah untuk menyelesaikan masalah tolakan data masa nyata protokol HTTP.

2. Senario aplikasi WebSocket

  1. Sistem sembang masa nyata: WebSocket boleh merealisasikan fungsi sembang masa nyata, dan pengguna boleh menghantar dan menerima mesej serta-merta.
  2. Sistem pemantauan masa nyata: WebSocket boleh merealisasikan dorongan masa nyata data pemantauan, menjadikan data sistem pemantauan lebih masa nyata dan tepat.
  3. Sistem dagangan saham masa nyata: WebSocket boleh digunakan untuk menolak data pasaran saham dalam masa nyata, dan pelabur boleh memahami perubahan dalam saham dalam masa nyata.
  4. Komunikasi masa nyata permainan: WebSocket boleh digunakan untuk pemesejan masa nyata dalam permainan, seperti pertempuran masa nyata, sembang dan fungsi lain.

3. Amalan aplikasi WebSocket
Di bawah kami menggunakan contoh untuk menunjukkan cara menggunakan WebSocket untuk tolak data masa nyata.

  1. Pelaksanaan bahagian pelayan:
    Pertama, kita perlu mencipta pelayan WebSocket. Dalam persekitaran Node.js, anda boleh menggunakan modul ws untuk mencipta pelayan WebSocket. Kod khusus adalah seperti berikut:
const WebSocket = require('ws');

const wss = new WebSocket.Server({ port: 8080 });

wss.on('connection', (ws) => {
  // 建立连接时触发的回调函数
  console.log('Client connected');

  // 模拟实时推送数据
  setInterval(() => {
    ws.send(new Date().toString());
  }, 1000);

  ws.on('close', () => {
    // 关闭连接时触发的回调函数
    console.log('Client disconnected');
  });
});
Salin selepas log masuk

Perihalan kod:

  • Buat pelayan WebSocket dan dengarkan port 8080.
  • Apabila pelanggan membuat sambungan dengan pelayan, acara sambungan akan dicetuskan dan fungsi panggil balik yang sepadan akan dilaksanakan. connection事件,执行相应的回调函数。
  • 在回调函数中,可以通过ws对象与客户端进行通信。
  • 在本例中,我们模拟每秒向客户端推送当前时间。
  1. 客户端实现:
    客户端使用浏览器内置的WebSocket对象来连接WebSocket服务器,并与服务器进行实时通信。具体代码如下:
const ws = new WebSocket('ws://localhost:8080');

ws.onopen = () => {
  // 连接建立时触发的回调函数
  console.log('Connected to WebSocket server');
};

ws.onmessage = (message) => {
  // 收到服务器推送的消息时触发的回调函数
  console.log('Received message: ' + message.data);
};

ws.onclose = () => {
  // 连接关闭时触发的回调函数
  console.log('Disconnected from WebSocket server');
};
Salin selepas log masuk

代码说明:

  • 创建一个WebSocket连接,并指定服务器的地址。
  • 当连接成功建立时,会触发onopen事件,执行相应的回调函数。
  • 当收到服务器推送的消息时,会触发onmessage事件,执行相应的回调函数。
  • 当连接关闭时,会触发onclose
  • Dalam fungsi panggil balik, anda boleh berkomunikasi dengan klien melalui objek ws.

Dalam contoh ini, kami mensimulasikan menolak masa semasa kepada pelanggan setiap saat.

    🎜Pelaksanaan pelanggan: 🎜Pelanggan menggunakan objek WebSocket terbina dalam penyemak imbas untuk menyambung ke pelayan WebSocket dan berkomunikasi dengan pelayan dalam masa nyata. Kod khusus adalah seperti berikut: 🎜🎜rrreee🎜Perihalan kod: 🎜🎜🎜Buat sambungan WebSocket dan nyatakan alamat pelayan. 🎜🎜Apabila sambungan berjaya diwujudkan, acara onopen akan dicetuskan dan fungsi panggil balik yang sepadan akan dilaksanakan. 🎜🎜Apabila mesej yang ditolak oleh pelayan diterima, acara onmessage akan dicetuskan dan fungsi panggil balik yang sepadan akan dilaksanakan. 🎜🎜Apabila sambungan ditutup, acara onclose akan dicetuskan dan fungsi panggil balik yang sepadan akan dilaksanakan. 🎜🎜🎜Kesimpulan: 🎜WebSocket, sebagai protokol komunikasi dupleks penuh, boleh memainkan peranan penting dalam senario aplikasi tolak data masa nyata. Melalui contoh praktikal yang diperkenalkan dalam artikel ini, kita boleh memahami prinsip asas WebSocket dan cara melaksanakan tolakan data masa nyata pada pelayan dan klien. Dalam projek sebenar tertentu, kami boleh menambah logik dan fungsi perniagaan yang sepadan mengikut keperluan untuk memenuhi keperluan tolakan data masa nyata. 🎜

Atas ialah kandungan terperinci Amalan aplikasi WebSocket dalam tolak data masa nyata. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan