Russian Qt Forum
Ноябрь 22, 2024, 10:33
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Многопоточное программирование, процессы
>
Организация взаимодействия прикладного и веб-сервера
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Организация взаимодействия прикладного и веб-сервера (Прочитано 5836 раз)
sergek
Гипер активный житель
Offline
Сообщений: 872
Мы должны приносить пользу людям.
Организация взаимодействия прикладного и веб-сервера
«
:
Август 25, 2016, 18:34 »
Коллеги, проблема, вроде простая, но у меня нет нужного опыта.
Имеется серверное приложение, задача которого - обеспечение взаимодействия с различными устройствами (опрос состояния и управление этими устройствами). Сейчас пользователи подключаются к нему через интернет с клиентского приложения, которое может работать в синхронном (запрос/ответ) и асинхронном режиме (сервер сам чего-то там делает, например, опрашивает устройства, а клиент просто получает результаты опроса и отображает их).
Клиентская программа должна работать на разных платформах - компьютерах, смартфонах, планшетах. Поэтому решено сделать веб-интерфейс с таким же функционалом (в дополнение к существующему клиенту).
Поднимаем веб-сервер там же, где и серверное приложение. Все три компонента (клиент, сервер и веб-сервер) написаны на Qt.
Пока не соображу, как обеспечить взаимодействие серверного приложения с веб-сервером. Я вижу два пути:
- на веб-сервере разместить весь функционал серверного приложения. Но что-то мне не нравится это - оба сервера многопотоковые, два типа соединения, два протокола, какая-то каша получается;
- межпроцессное взаимодействие. А тут много вариантов. Может, в моей ситуации есть что-то очевидное? Я поэтому и описал задачу, как мне кажется, излишне подробно.
Помогите с советом, пожалуйста.
Записан
Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
VPS
Гость
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #1 :
Август 25, 2016, 19:56 »
Я бы, наверное, остановился на взаимодействии web-приложения с серверным по протоколу, который уже используется для взаимодействия с desktop-ным клиентом.
P/S:
а правильно я понял, что пользователи будут работать через браузер? Если так, то для оповещения клиентов в асинхронном режиме можно использовать WebSocket.
Записан
sergek
Гипер активный житель
Offline
Сообщений: 872
Мы должны приносить пользу людям.
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #2 :
Август 25, 2016, 20:00 »
Цитата: vps от Август 25, 2016, 19:56
P/S:
а правильно я понял, что пользователи будут работать через браузер? Если так, то для оповещения клиентов в асинхронном режиме можно использовать WebSocket.
Да, через браузер. Насчет WebSocket - мне казалось, что далеко не все браузеры его поддерживают, или я ошибаюсь?
Записан
Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
VPS
Гость
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #3 :
Август 25, 2016, 20:13 »
Цитата: sergek от Август 25, 2016, 20:00
Да, через браузер. Насчет WebSocket - мне казалось, что далеко не все браузеры его поддерживают, или я ошибаюсь?
Да, вроде не все.
Но тогда Вам надо будет на самой странице настраивать интервал опроса web-сервера, чтобы имитировать работу асинхронной части.
Записан
qate
Супер
Offline
Сообщений: 1177
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #4 :
Август 26, 2016, 13:06 »
но зачем менять хорошее решение с клиентом на qt на веб браузер ?
Записан
sergek
Гипер активный житель
Offline
Сообщений: 872
Мы должны приносить пользу людям.
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #5 :
Август 26, 2016, 17:57 »
Чтобы не ставить программу пользователям. И чтобы не делать клиентских програм под винды, андроид и линукс.
Записан
Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
qate
Супер
Offline
Сообщений: 1177
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #6 :
Август 26, 2016, 21:41 »
Цитата: sergek от Август 26, 2016, 17:57
Чтобы не ставить программу пользователям. И чтобы не делать клиентских програм под винды, андроид и линукс.
это иллюзия, ибо браузерное решение очень плохое, интерфейс нормальный написать или нельзя или сложно, да и неудобно
кроме плюса "что не писать клиента" одни минусы
а еще сам браузер глючит
говорю как переходящий от браузера на "клиент" )
Записан
Bepec
Гость
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #7 :
Август 27, 2016, 09:09 »
Моё мнение - надо писать отдельно веб сервер и расширять протокол под него. Ибо с клиентским апи сделать нормальную веб морду не получится. Точнее нормальную можно, но она будет дырявой
Записан
sergek
Гипер активный житель
Offline
Сообщений: 872
Мы должны приносить пользу людям.
Re: Организация взаимодействия прикладного и веб-сервера
«
Ответ #8 :
Август 27, 2016, 12:04 »
Спасибо, именно к этому выводу я тоже пришел.
Записан
Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...