Kutangaza Data ya Wakati Halisi na Python WebSocket

WebSocket ni teknolojia inayowezesha utumaji data wa wakati halisi kati ya seva na wateja kupitia miunganisho ya pande mbili. Hapa kuna mwongozo wa jinsi ya kutumia WebSocket kutangaza data ya wakati halisi kutoka kwa seva hadi kwa wateja huko Python:

Sakinisha WebSocket Maktaba

Tumia websockets maktaba kutekeleza WebSocket seva na mteja. Sakinisha maktaba hii kwa kutumia bomba:

pip install websockets

Tengeneza WebSocket Seva

Seva WebSocket itatuma data ya wakati halisi kwa wateja wote waliounganishwa.

import asyncio  
import websockets  
  
# Function to send real-time data from the server  
async def send_real_time_data(websocket, path):  
    while True:  
        real_time_data = get_real_time_data()  # Get real-time data from a source  
        await websocket.send(real_time_data)  
        await asyncio.sleep(1)  # Send data every second  
  
start_server = websockets.serve(send_real_time_data, "localhost", 8765)  
asyncio.get_event_loop().run_until_complete(start_server)  
asyncio.get_event_loop().run_forever()  

Jenga WebSocket Mteja

Mteja WebSocket atasikiliza na kupokea data ya wakati halisi kutoka kwa seva.

import asyncio  
import websockets  
  
async def receive_real_time_data():  
    async with websockets.connect("ws://localhost:8765") as websocket:  
        while True:  
            real_time_data = await websocket.recv()  
            print("Received real-time data:", real_time_data)  
  
asyncio.get_event_loop().run_until_complete(receive_real_time_data())  

Endesha Programu

Endesha WebSocket msimbo wa seva kwanza, kisha endesha WebSocket msimbo wa mteja. Utaona data ya wakati halisi ikitangazwa kutoka kwa seva na kupokelewa kila mara na mteja.

Binafsisha na Upanue

Kuanzia hapa, unaweza kubinafsisha na kupanua programu yako kwa kuongeza vipengele kama vile uthibitishaji, uchujaji wa data, uumbizaji wa data, na zaidi.

Hitimisho:

Kutumia WebSocket kutangaza data ya wakati halisi kutoka kwa seva hadi kwa wateja katika Python ni njia nzuri ya kuunda programu za mawasiliano ya wakati halisi na uzoefu wa data iliyosasishwa papo hapo.