Привет всем! Нужна помощь техспецов. Хочу на смартлабе сделать вот такую табличку:
http://quote.rbc.ru/exchanges/demo/micex.0/intraday
Эта табличка у квоты обновляется автоматом раз в 5 сек.
Насколько я понял по API интерфейсу биржи, собирается она из вот таких запросов:
http://moex.com/iss/engines/stock/markets/shares/securities.xml?securities=GAZP
Как это лучше реализовать технически на стороне сервера?
На чем писать серверную часть? Как сделать так, чтобы это минимально грузило сервак и выполняло расчеты параметров по каждой бумаге?
+ я хочу ещё сохранять данные раз в 5-10 минут и делать с таким же интервалом определенные вычисления… результат которых будет в этой же табличке + сделать фильтры, по которым можно будет показывать бумаги
p.s. договор с биржей подписал
habrahabr.ru/company/dnevnik_ru/blog/167307/
nodeguide.ru/doc/modules-you-should-know/socketio/
На сервере делается пулинг данных с биржи, отслеживаются изменения в данных и по веб сокетам или другому транспорту отсылаются изменения клиентам. На клиенте можно использовать angular, backbone или react js. Серверная реализация может быть на .net + signalR или на node.js + socket.io, исходя из возможностей хостинга.
на чём угодно, я думаю это можно делать не на сервере, а на клиенте. Желательно чтобы данные с моекс приходили в json формате.
Минимизировать запросы к серверу моекс, стараться все данные выкачивать одним запросом.
1. На SQL Server создал таблицу (скорее группу таблиц).
2. На SQL Server создал Stored procedure (на t-sql) которая делает нужные вычисления на базе таблиц из п.1
3. На .NET написал процедуру которая
3.1. Запрашивает данные по HTTP в формате XML
3.2. Парсит XML документ и записывает данные в таблицу из п.1
3.3. Вызывает процедуру из п.2
4. Создал задание по расписанию (на сервере) которое регулярно с заданной частотой выполняет процедуру п.3.
К подобного класса задачам лучше подходить обдуманно. Обдумывать максимально будущую систему в рамках которой будет работать данное решение. Фундаментальный вопрос тут — реляционная модель базы данных. Остальное — вторично. Модель данных — должна проектироваться исходя из модели семантического уровня. Несколько заумно может показаться, но делать лучше так.