Як створити серверну архітектуру для додатків
Підкажіть будь ласка. Необхідно організувати серверну частину розробки, роботи додатків (мобільні, десктоп, web). Додатки досить простого формату, керування заявками. Заявка потрапила до бази, заявку видно, можна взяти та виконувати.
Цікавить організація серверної частини. Це, звичайно, прозвучить смішно, але Ми не знаємо, як її організувати. Є сервера (шт.10) а ось що на них ставити, не зрозуміло. Навіть не розумію, яку літературу треба прочитати, щоб зрозуміти як це все організовувати. Я бачив різні варіанти архітектур, наведу приклад: 1) Application - це frontend-сервер. 2) Database - сервер, на якому знаходиться база даних. 3) Load Balancer — балансувальник навантаження, необхідний розподілу запитів користувачів між Application-серверами. 4) Utils - сервер, на якому розташовуються супутні сервіси, необхідні для відкладеної обробки даних. 5) Tools - сервер, необхідний для встановлення сторонніх рішень для роботи програми.
І ось відразу виникає питання. Як сам виглядає Application server? І з чим його їдять? Балансувальник навантаження так само незрозуміло що за структуру є. Але коли люди всю цю справу формують разом і правильно налаштовують, виходять добре організовані архітектури.
Кінцева мета, я просто хочу розуміти, як все це виглядає зсередини. Усвідомити і про Application сервер, і про балансувальник навантаження і т.д. Що це взагалі являє собою, навіщо потрібно? Можливо є якась модель правильної побудови з описом? Наведіть будь ласка на правильний шлях.
Ви міркуєте абстракціями. У цих абстракціях application сервер виконує основну роботу.Приймає запит, опрацьовує його, повертає результат.
А ось на питання - як вигладить application сервер - однозначної відповіді не існує. Найпростіший приклад - apache/mod_php, який віддає якийсь сайт. Або php-fpm. Або node.js. Або ... тисячі їх.
Щоб грамотно побудувати архітектуру – треба звернутися до грамотного архітектора, розповісти йому якнайбільше про завдання серверної частини додатка, домовитися про оплату – і він усе зробить. А щоб навчитися це робити самому – треба спочатку піти у падану до такого архітектора.