Я присмотрелся к схеме «Laravel в проде», где Traefik стоит на входе, а внутри крутится FrankenPHP (и да, это уже не «классический PHP на каждый запрос»). Идея простая: разнести web/воркеры, нормально завернуть всё в Docker Compose, добавить healthcheck’и — и получить инфраструктуру, которую не стыдно показывать SRE. Вот тут разбор со схемой и практическими деталями: Архитектура Laravel для продакшена: Traefik + FrankenPHP
Понравился кейс «RAG на PHP», потому что он без магии: как быстро собрать внутреннюю базу знаний, где PHP (Symfony) не просто «вяжет шаблоны», а реально участвует в пайплайне поиска. Автор показывает, как жить с чанкингом, гибридным поиском в Qdrant и что делать, чтобы MVP не развалился на первом же “а давайте ещё вот этот тип документов”. Забираю как готовый маршрут “сегодня вечером поднять прототип”: RAG на PHP + Qdrant: быстрый MVP для внутренней базы знаний
Я залип на разбор роутинга в Waypoint: там не «мы написали ещё один роутер», а инженерная попытка выжать максимум из алгоритмов + OPcache shared memory, и при этом не упасть в рефлексию на каждом запросе. Особенно цепляет трёхуровневый матчинг (хеш + trie + fallback) и подход к генерации кода под кеш. Если вы любите ковырять внутренности фреймворков/либ — это прям вкусно: Как устроен роутинг в Waypoint: три уровня матчинга, zero-Reflection dispatch и кеш через OPcache shared memory
Я давно люблю истории из серии «всё зелёное, а система уже полумёртвая», и тут прям такая: стойка деградирует, реплика отваливается, отказоустойчивость исчезает, а 5xx почти ноль — и поэтому никто не кричит “инцидент!”. Хороший короткий чек по тому, почему одних HTTP-метрик недостаточно и как незаметно потерять safety net на базе. Применимо к любому PHP-продакшену с PostgreSQL: Когда стойка умирает, а 5xx остаётся нулевым. Разбор скрытой деградации PostgreSQL
Post #377
1.64K
- ❤ 5