Какому языку и фреймворку следует отдать предпочтение для разработки бэкенда системы сбора данных от удаленных клиентов (железок с Linux), которая также может отправлять управляющие сигналы и имеет очередь на случай потери сети у клиентов?
Для создания системы управления данными, сбора информации и мониторинга можно использовать различные языки программирования и инструменты в зависимости от конкретных требований проекта. Некоторые из наиболее популярных и эффективных языков программирования для таких целей включают в себя Python, Java, Go, C++ и Ruby. Для разработки бэкенда системы сбора данных от удаленных клиентов рекомендуется использовать язык программирования Python вместе с фреймворком Django или Flask. Django обладает богатым функционалом, включая встроенную административную панель для управления данными, а Flask является легковесным и гибким фреймворком для быстрой разработки веб-приложений. Для работы с удаленными клиентами (железками с Linux) и отправки управляющих сигналов, можно использовать протоколы как MQTT, CoAP или REST API. Для обеспечения надежности и устойчивости к потере сети у удаленных клиентов, можно реализовать очередь сообщений с использованием технологий RabbitMQ или Kafka. Итак, для данной задачи рекомендуется использовать комбинацию языка Python и фреймворка Django или Flask, а также протокол MQTT для обмена данными с удаленными клиентами и технологию очереди сообщений для обработки потери сети у клиентов.
1. Сервер я представляю как бэкенд разработку.Это она и есть в чистом виде.
Метаюсь между JS (node.js), GO, и Java.Странные метания, языки не сказать чтобы были сопоставимы. ИМХО:
жс сразу отпадает, так как поддержка чего-то типа тайпскрипта там еще никакая, а без этого нормальная типизация и, следовательно, качество кода ниже требуемого уровня. Годится для средней руки сайтов, для серьезной работы не готово.
Го будет норм, НО это довольно молодой язык, с одной стороны достаточно производительный (что не сказать чтобы как-то сильно его положительно выделяло в представленной задаче), с другой - спецов в него сильно меньше и поддержка выльется в боль с поиском сотрудников и достаточно дорогими спецами.
Ява видится как вариант очевидного выбора среди перечисленных альтернатив. Большое коммюнити, хорошо отлаженный процесс разработки всего для корпоративного сектора, включая все необходимые сертификации по безопасности. Спецы есть, ценник на них повыше чем на яваскриптеров, но пониже гошников.
Если предполагается что писать будете в одно лицо, скорее всего выйдет либо фигня, либо затянется на годы. Нормальные проекты требуют хоть какой-то команды, толкового тимлида, хорошо понимающего в архитектуре и коде, и четкого тз, тогда есть шанс что все будет реализовано в реальный срок.
Наймите 2х специалистов, которые:
1. Напишет ТЗ (первый специалист).
2. Выберет необходимый инструмент исходя из п1 (второй специалист).
3. Разработает проект из п1 (второй специалист).
4. Примет (или нет) выполненную работу из п3. (первый специалист).
Являюсь дилетантом-разработчиком)
Не могу определиться с выбором языка и фреймворка.
Ваша задача - оплатить выполненную работу, и уж тем более не выбирать, какие инструменты при этом будут использоваться.