📄️ Концепция :meta эндпоинтов
Задача: В Административной панели требуется, чтобы администратор мог табличные списки гибко настраивать, выводить только интересующие столбцы, фильтры, менять сортировку. При этом добавление новых полей в сущность не должно требовать доработок табличного списка на фронте.
📄️ Ролевая модель и права доступа в АП
Текущая реализация ролевой модели и прав доступа позволяет создавать неограниченное число ролей,
📄️ Рекомендации к написанию автотестов
Перед началом следуем ознакомиться с Autotests Guide.
📄️ Подход к работе с Elasticsearch
Общее описание
📄️ Временные метки и таймзоны в Ensi
Общее описание
📄️ Хранение и раздача файлов через Ensi Storage
Файлы в платформе делятся на 2 вида: публичные и приватные. Все они хранятся на физическом диске Ensi Storage, который доступен в каждом сервисе в директории storage/ensi.
📄️ Подключение http клиентов в сервис Ensi
Микросервисная архитектура подразумевает обмен сообщениями между сервисами. Основным способом общения сервисов Ensi между собой являются http-вызовы, поэтому http-клиент является очень важной частью сервиса и имеет некоторые настройки, о которых необходимо знать.
📄️ Initial Event Propagation
В парадигме Initial Event Propagation (IEP) мы рассматриваем нашу распределенную систему как что-то неизменное само по себе.
📄️ Описание работы Kafka
Общее описание
📄️ Загрузка обязательного файла до создания модели
Многие сущности имеют обязательные поля типа Файл.
📄️ Структура backend сервиса на языке PHP
Наши сервисы имеют несколько отличающуюся от стандартного Laravel файловую структуру. Её цель - сделать сервисы более поддерживаемыми с течением времени и наращиванием функциональности. На техническом уровне это во многом сводится к двум вещам:
📄️ Отладка с помощью xdebug
Отладка сервиса на базе Swoole