~/blog/tags/symfony
#symfony
4 posts · all posts
- php
- software-architecture
- symfony
- doctrine
- backend-development
- performance
- refactoring
- authorization
- best-practices
- caching
- clean-code
- containers
- database
- devops
- devsecops
- distributed-systems
- docker
- idempotency
- legacy
- maintainability
- production
- redis
- reliability
- scalability
- secure-design
- security
- shift-left
- testing
- threat-modeling
Posts
When Symfony Messenger Is the Wrong Tool
Symfony Messenger is powerful, but not every slow operation needs a queue. I explore six situations where asynchronous processing creates more problems than it solves, covering transactions, retries, idempotency, and simpler alternatives with practical PHP examples.
#php #symfony #software-architecture #best-practices #backend-development
15 min
Why Moving Code into a Service Doesn’t Improve the Design by Itself
Moving code into a service can shrink a controller without fixing the design. This article looks at responsibilities, dependencies, transaction boundaries, side effects, and tests that show whether a refactor created a meaningful boundary.
#php #symfony #software-architecture #refactoring #doctrine #clean-code
6 min
Why Adding Redis Doesn’t Automatically Fix Performance
Redis can improve PHP application performance, but only when it addresses a measured bottleneck. This article looks at inefficient read paths, cache hit costs, stampedes, fallback behavior, and how to decide whether caching will actually improve the system.
#php #redis #caching #performance #symfony #doctrine #scalability
7 min
The Hidden Cost of `flush()` in a Symfony Application
Doctrine’s flush() can affect much more than the entity a repository appears to save. This article looks at Unit of Work behavior, transaction boundaries, lifecycle listeners, batch processing, failed flushes, and how to make persistence boundaries easier to understand and operate safely.
#php #symfony #doctrine #database #software-architecture
6 min