Event Sourcing - події як джерело істини
Зберігає не поточний стан, а послідовність подій, що його змінювали. Повний аудит і відтворюваність - ціною складнішої інфраструктури.
Почніть вводити, щоб шукати по статтях, вакансіях, компаніях, проєктах, ресурсах, пакетах, подіях і користувачах.
CQRS (Command Query Responsibility Segregation) розділяє операції зміни стану (команди) та операції читання (запити) на окремі моделі.
У великих доменах читання і запис мають різні вимоги: запис потребує валідації й узгодженості, а читання - швидкості та зручних для UI форм. Спільна модель змушує йти на компроміси й роздувається.
Команди (write) і запити (read) обробляються окремими класами, а інколи й окремими моделями та сховищами. Кожен бік оптимізується незалежно.
У прикладі спрощена форма CQRS. У повноцінній реалізації read-модель і write-модель можуть бути різними.
class CreateOrder
{
public function __construct(
public int $userId,
public array $items
) {}
}
class CreateOrderHandler
{
public function handle(CreateOrder $command): Order
{
return Order::create([
'user_id' => $command->userId,
'items' => $command->items,
]);
}
}
class GetOrder
{
public function __construct(public int $id) {}
}
class GetOrderHandler
{
public function handle(GetOrder $query): array
{
return Order::query()->find($query->id)?->toArray() ?? [];
}
}
29 / 30
Зберігає не поточний стан, а послідовність подій, що його змінювали. Повний аудит і відтворюваність - ціною складнішої інфраструктури.
Три споріднені підходи, що відділяють дані від представлення через проміжний шар. Чим відрізняються посередники і чому в Laravel базовий - MVC.
Middle PHP-розробник для фінтех-продукту. Розробка backend на Laravel з PostgreSQL, RabbitMQ, Redis. Реалізація складної бізнес-логіки кредитування, фінансових операцій, зовнішніх інтеграцій. Вимоги: 3+ років PHP, впевнена робота з Laravel, OOP/SOLID, складна бізнес-логіка, PostgreSQL, черги, тестування, production-mindset.
Full Stack Developer на PHP та Laravel з фронтенд-частиною на Vue.js. Розроблення та рефакторинг функціоналу HR-системи, робота з БД, REST API, тестування. Вимоги: PHP 8+, 2+ років Laravel, Vue.js, OOP, SQL, Git, базовий TypeScript. Віддалена робота з гнучким графіком.
Middle+ PHP Developer з DevOps-експертизою для мультикоманди, що розробляє CRM та освітню платформу. Основна роль: проєктування й реалізація модулів на PHP 8 і Laravel, оптимізація під високе навантаження, розробка інтеграцій. DevOps-компонент: налаштування CI/CD, контейнеризація (Docker/Kubernetes), управління AWS-інфраструктурою. Вимоги: глибока експертиза Laravel, Docker, Kubernetes, Git, технічна англійська.
Bagisto — це платформа для електронної комерції, побудована на Laravel. Вона надає готове рішення для створення та управління інтернет-магазинами з підтримкою каталогу товарів, замовлень, платежів та клієнтів.