Python으로 실시간 데이터 방송 WebSocket

WebSocket 양방향 연결을 통해 서버와 클라이언트 간의 효율적인 실시간 데이터 전송을 가능하게 하는 기술입니다. WebSocket 다음은 Python에서 서버에서 클라이언트로 실시간 데이터를 브로드캐스트하는 방법에 대한 가이드입니다 .

WebSocket 라이브러리 설치

라이브러리를 사용하여 서버와 클라이언트를 websockets 구현하십시오. WebSocket pip를 사용하여 이 라이브러리를 설치합니다.

pip install websockets

WebSocket 서버 구축

서버 WebSocket 는 연결된 모든 클라이언트에 실시간 데이터를 보냅니다.

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()  

WebSocket 클라이언트 구축

클라이언트 WebSocket 는 서버에서 실시간 데이터를 수신하고 수신합니다.

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())  

애플리케이션 실행

먼저 서버 코드를 실행한 WebSocket 다음 WebSocket 클라이언트 코드를 실행하십시오. 서버에서 브로드캐스트되고 클라이언트에서 지속적으로 수신되는 실시간 데이터를 볼 수 있습니다.

사용자 지정 및 확장

여기에서 인증, 데이터 필터링, 데이터 서식 지정 등과 같은 기능을 추가하여 애플리케이션을 사용자 지정하고 확장할 수 있습니다.

결론:

WebSocket Python에서 서버에서 클라이언트로 실시간 데이터를 브로드캐스트하는 것은 실시간 통신 애플리케이션을 구축하고 즉시 업데이트되는 데이터를 경험할 수 있는 강력한 방법입니다 .