Я пытаюсь выяснить, какой лучший способ структурировать решение клиент-сервер. В двух словах, мое решение должно иметь фоновый сервер, который выполняет логику и может поддерживать несколько клиентов в интрасети. Ключевым моментом здесь является то, что не будет тысяч одновременных запросов ... вероятно, он будет ограничен у нескольких сотен пользователей, поэтому масштабируемость не является проблемой. (изображение службы, работающей в офисном здании, в локальной сети). Я борюсь с общим потоком, как это должно работать, и какие технологии я должен использовать.Дизайн решения для клиент-сервер
Компоненты заключаются в следующем:
- Логическая часть, которая будет находиться на сервере
- база данных,
- Несколько настольных, мобильных и веб-клиенты
До сих пор, что я было получено следующее:
- Мне нужен сервер приложений, который будет управлять вызовами API из логики и доступа к БД.
- Веб-сервер, чтобы сидеть поверх него, который будет управлять входящими запросами.
- Логическая часть.
- Клиенты, которые будут соответствовать API, которые мы определим.
Так что я не уверен, как все это связывается ... Как «логика» взаимодействует с сервером приложений? Нужно ли писать «логику» как сервер?
что я вижу что-то вроде этого:
req
client ----> web server ----> app server -----> Logic
|-----> DB
response
app server ---------> web server ----> client
Так что, если я хотел развернуть мелкосерийное коммерческое решение, будет ли это способ структурирования его?
Пожалуйста, дайте мне знать, если я был неясен, или вам нужна дополнительная информация.