3. Структурна розробка веб-застосування

3.2. Бізнес-логіка

Екземпляр сервісу EC2 відповідає за бізнес-логіку веб-застосування. Даний сервіс опрацьовує запити від користувачів, які здійснюються за допомогою користувацького інтерфейсу. Завдання коректної обробки цих запитів повністю лежить на розробнику, адже при створенні екземпляру EC2 надається порожній віртуальний сервер. Під час створення надається можливість обрати AMI (Amazon Machine Instance), кількість обчислювальних ресурсів, мережні налаштування, налаштування безпеки, тощо. До EC2 можна під’єднатися за допомогою SSH, або використовуючи веб-інтерфейс. Також надається можливість налаштувати автоматичне масштабування, балансувальник навантаження та змінити кількість обчислювальних ресурсів. Враховуючи, що за замовчуванням користувачам надається сервер без допоміжного програмного забезпечення, розробники повинні самостійно налаштувати веб-сервер. Найпопулярнішими з яких наразі є Apache та nginx.

Реалізації цих стандартів (наприклад gunicorn та uwsgi) фактично надає API для взаємодії Python-застосунку та веб-сервера, вирішує низькорівневі задачі, наприклад адміністрування сокетів та виділення так званих workers. Компонент бізнес-логіки є REST-подібним сервісом, який має змогу обробляти запити у форматі JSON. Даний компонент містить декілька сутностей пов’язаних із предметною областю: User (Користувач), Conversation (Бесіда), Message (Повідомлення). Сутність User містить дані про користувача; Conversation містить ідентифікатори користувачів які ведуть обмін повідомленнями; Message може містити текст повідомлення або посилання на медіа-файл. REST API описує такі ресурси: 

• GET “api/conversations/” - отримання усіх бесід 

• POST “api/conversations/” - створення нової бесіди 

• GET “api/conversation/pk/” - отримання однієї бесіди та повідомлень 

• POST “api/conversation/pk/” - створення нового повідомлення 

• DELETE “api/conversation/pk/” - видалення бесіди 

• POST “api/authenticate” - отримання JWT-токена 

• POST “api/refresh” - оновлення JWT-токена • POST “api/register” - реєстрація нового користувача


Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання