Найти - Пользователи
Полная версия: Клиент на си, сервер на питоне, сообщение, реализация и пр.
Начало » Python для новичков » Клиент на си, сервер на питоне, сообщение, реализация и пр.
1 2
Squash
Машина 1, XP, на ней должен крутиться сервер на питоне. Машина 2, Seven, на ней запущен клиент на сях. Клиент должен отправлять серверу наборы данных примерно следующего содержания: {идентификатор1(дворд), идентификатор2(дворд), строка(чар) неизвестной заранее длины, массив двордов неизвестной заранее длины}, сервер должен заносить это в базу.

Как лучше реализовать коммуникацию и все прочее?
fata1ex
Squash
Машина 1, XP, на ней должен крутиться сервер на питоне. Машина 2, Seven, на ней запущен клиент на сях. Клиент должен отправлять серверу наборы данных примерно следующего содержания: {идентификатор1(дворд), идентификатор2(дворд), строка(чар) неизвестной заранее длины, массив двордов неизвестной заранее длины}, сервер должен заносить это в базу.

В чем вопрос-то?

О, вопрос появился. Сокеты, вебсокеты, http, xmpp в зависимости от модели взаимодействия и любой удобный формат данных, например xml или json.

Опишите более конкретно задачу/сервис. Невозможно посоветовать что-нибудь серьезное по таким данным. Возможно, вам здесь подойдет очередь, и никакого прямого взаимодействия между клиентом и сервером не нужно. Может быть, в сервере вообще нет смысла, и клиент сам может класть данные в базу. А может вам нужен rest api у сервера, так как предполагается развитие функциональности сервера и он должен отвечать через веб, или лучше подойдут веб-сокеты, так как обмен данными будет происходить постоянно и в будущем в обе стороны. Или вам это нужно в качестве учебной задачи?
Singularity
Сокеты нормально
Lexander
+1 к вопросам fata1ex, задача недостаточно детализирована.
Соединение постоянное или время от времени?
Сколько клиентов?
Исходя их описания сервера, нагрузка на сервер небольшая.
Но какая СУБД?

И да, похоже на учебную задачу.
Squash
fata1ex
Опишите более конкретно
Конкретнее вроде некуда.
fata1ex
клиент сам может класть данные в базу
От сервера требуется еще пара-тройка мелких задач типа вывода и отстука, так что он нужен.
fata1ex
Возможно, вам здесь подойдет очередь, и никакого прямого взаимодействия между клиентом и сервером не нужно.
Возможно. Что такое очередь?
fata1ex
он должен отвечать через веб, или лучше подойдут веб-сокеты, так как обмен данными будет происходить постоянно и в будущем в обе стороны
Такого вроде бы не предполагается.
Lexander
Соединение постоянное или время от времени?
Не имеет особого значения, но по интенсивности обмена наверное логичнее постоянное.
Lexander
Сколько клиентов?
Исходя их описания сервера, нагрузка на сервер небольшая.
Клиент один, но передача данных предполагается интенсивной.
Lexander
Но какая СУБД?
майэскуэль
Lexander
похоже на учебную задачу
Задача боевая но по ходу дела многое приходится изучать, питон вот…
fata1ex
Тогда, наверно, логично было бы смотреть в сторону сокетов.
Squash
Спасибо, а примеры получения/парсинга такого набора информации посоветуете?
Squash
Ммм… а в этом примере сервер принимает бинарную строку, или текстовую?
Lexander
Сервер принимает результат struct.pack, т.е. строку, содержащую сообщение в специальном формате.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB