TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #4213 3.11K
Подготовка Symfony-приложения для Swoole, RoadRunner, and FrankenPHP (без использования ИИ)

📝 Проблема:
🔄 Модели разделения памяти:

Модель «Shared Nothing» и модель «Shared Memory». Обычно в PHP-приложениях используется модель «Shared Nothing», где каждый запрос обрабатывается отдельным PHP-процессом, и между запросами не происходит обмена памятью.

⚠️ Непредвиденные эффекты:
С появлением решений типа Swoole, RoadRunner и FrankenPHP, которые используют модель «Shared Memory», возникают некоторые непредвиденные проблемы. Эти решения позволяют разделять память между различными запросами внутри одного рабочего процесса, что приводит к улучшению производительности, но может вызывать неожиданные побочные эффекты, так как состояние между запросами сохраняется.

🔧 Решение:
Представлен пример кода на Symfony 7.0, где демонстрируется проблема с сохранением состояния между запросами. Это приводит к неправильному поведению при использовании модели «Shared Memory». Для исправления проблемы предлагается использовать инструмент статического анализа кода phanalist, который проверяет, являются ли сервисы в приложении состояний или неизменяемыми. Также предлагается использовать интерфейс ResetInterface в Symfony для обнуления состояния сервисов между запросами.
  • ❤ 8
  • 👍 1
More from @phpproglib
  1. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  2. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  3. Sep 30, 2026🐸 Библиотека пхпшника
  4. Sep 29, 2026💡 Laravel-фича, которая спасает тесты от случайных запросов Http::preventStrayRequests()…
  5. Sep 28, 2026🔐 ramsey/uuid — UUID без самописного кода Библиотека помогает генерировать, парсить и вал…
  6. Sep 28, 2026🤔 Что выведет код? ❤️ — 1 🔥 — 2 👍 — 12 👾 — Fatal error 👇 Правильный ответ (нажми, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →