Оптимальный способ для потоковой передачи цен на акции с сервера C ++, используя TCP для веб-сокетов - PullRequest
0 голосов
/ 09 апреля 2011

У меня есть высокопроизводительный сервер C ++, получающий данные о реальных акциях напрямую с основных бирж (думаю, ГБ данных в день).Он рассчитывает статистику, которая используется для мониторинга рынка.У меня есть это с помощью прямого сокета tcp для потоковой передачи статистики обратно в графический интерфейс в C ++ на локальном поле.Сервер отправляет данные (32 байта) каждую секунду для 2500 акций.Это не проблема, и, кажется, работает нормально.

Я думаю об использовании некоторых очень хороших библиотек визуализации, доступных в javascript, для интерпретации данных.Знание того, что javascript не очень хорошо работает с двоичным файлом (все данные возвращаются в структурах C) Какие у меня варианты?

Больше всего меня беспокоит необходимость отправлять сообщения через ASCII.В идеале мне нужен способ отправлять свои сообщения через структуру C и эффективно читать их (без необходимости конвертации (дорого)).

Я прочитал API Websocket, и он, кажется, не предназначен для того, что я хочу сделать.Существуют ли какие-либо другие технологии, которые могли бы делать то, что я ищу, позволяя мне использовать весь приятный код пользовательского интерфейса JavaScript / визуализации.

Спасибо

Ответы [ 2 ]

0 голосов
/ 29 мая 2013

Если вы можете использовать / создать клиент (сокет на стороне сервера), который может преобразовывать ваши более краткие структуры C / C ++ в ссылку на объект (как JSON), тогда выполняйте широковещательную передачу по каналам на сервере MQ (Pub / Sub) Это может быть самое легкое начало ...

оттуда вы можете подключить браузер-клиент к серверу (обертки WebSocket, такие как socket.io/SignalR, должны работать), где клиенты могут подключаться, затем эти подключения просто подписываются на ваш паб / субсервер, передавая сообщения на указанный клиенты.

Оттуда ваш клиент может обращаться с данными любым удобным для него способом (JS).

0 голосов
/ 09 апреля 2011

Я бы заглянул в реляционную базу данных, где вы можете хранить свои данные.Тогда у вас будет платформа, с которой вы сможете поговорить о ваших данных.Это самый надежный и гибкий сценарий.

...