Для того, чтобы смотреть записанные в Influx данные, я, особо не заморачиваясь, взял Grafana. Потыкался в настройки — и обнаружил среди интересных фишек Influx HTTP API, позволяющее делать запросы к базе данных прямо из браузера — точнее, из выполняющегося в браузере Javascript. Удобно? Не то слово!
А если подумать немного дальше — то при таком подходе не нужна и Grafana. Достаточно статики в виде нескольких HTML-страниц, чуточку CSS и Javascript, чтобы делать те же самые запросы к HTTP API и отображать графики. Развивая мысль чуть дальше — в нежно мной любимом CC3200 есть встроенный веб-сервер. В общем, понятно, к чему я клоню? В одном из девайсов возникла необходимость показывать на подключенном по WiFi ПК данные от датчиков устройства — разумеется, в виде графиков. Нарисовалось вот такое ТЗ «чисто для фронтенда»:
Разработать одностраничное приложение, которое раз в секунду «стучится» на определенный URL, забирает оттуда данные (несколько числовых рядов) в виде JSON, и отображает их в виде графиков (например, на canvas из HTML5). Для определенности — предположим, что каждую секунду отдается 8 «рядов» по 250 точек каждый, а на графиках надо отображать данные за последние 5 секунд.
Разумеется, есть и ограничения — их два: во-первых, нельзя обращаться к каким-либо внешним ресурсам, а во-вторых — страничка вместе со всеми ресурсами (изображения, CSS, скрипты) должна «весить» не более 512 кБ.
Ну и вопрос: в какой объем можно уместить что-то такое, применяя современные подходы к фронтенду?