2016-02-16 2 views
-2

Я надеюсь, что кто-то может указать мне в правильном направлении. Я новичок в программировании на Python, и я пытаюсь создать простой TCP-маршрутизатор в Python. Все, что нужно сделать - это получать данные с нескольких устройств и пересылать эти данные в приложение, а в обратном - получать данные из приложения и отправлять на это конкретное устройство.Пытается создать простой асинхронный TCP-маршрутизатор Python

Я видел концепцию, которую мне нужно реализовать в этом ответе https://stackoverflow.com/a/8808582, но у меня нет абсолютно никакой идеи, с чего начать.

Я смотрел библиотеки, такие как Crossbar.io и Autobahn, но оба кажутся чрезмерными для того, что я пытаюсь сделать.

Я был бы признателен, если бы кто-нибудь мог указать мне в правильном направлении или на учебное пособие, поскольку я понятия не имею, с чего начать.

ответ

0

Я написал библиотеку Python, которая нацелена на то, чтобы сделать асинхронный TCP максимально простым. Вы можете написать эхо-сервер в пяти строках кода. Here на сайте. Here - страница GitHub. И here's the PyPI page.

Если вы хотите установить его, просто запустите

pip install simpletcp

Вы не должны, что это написано для и гарантированно работает только с Python 3.

Вот пример (асинхронном) эхо сервер:

from simpletcp.tcpserver import TCPServer 

def echo(ip, queue, data): 
    queue.put(data) 

server = TCPServer("localhost", 5000, echo) 
server.run() 

Вот пример клиента отправки данных на сервер:

from simpletcp.clientsocket import ClientSocket 

s1 = ClientSocket("localhost", 5000, single_use=False) 
response = s1.send("Hello, World!") 
Смежные вопросы