Queuing in the background – getting started with RabbitMQ message broker
In PHP business logic is usually put right in action’s method or just behind it. Hence, every little piece of delaying and long-running code will be processed with a request. The problem is almost undetectable if a user sends an e-mail but with more complex actions it may take a little bit longer than preferred.
A couple of months ago I have started my adventure with CakePhp and as every Symfony’s developer I thought that any other framework except Symfony is a piece of crap. Day by day and step by step I began to realize that’s not so bad as it seemed to be in the beginning. Well, the second version of CakePhp still has a lot old-fashioned patterns, singletons or lack of tests, but I can live with that. I saw a lot of better or worse frameworks in my life. However, one module remains a bitter aftertaste – the router.
Event Driven Design is really popular topic for about two years and I don’t suprised this trend. You can really fast decouple parts of code without any influence on any other – you can send emails, saving logs or data to database without additional mess in your core class. Continue reading
Just a week ago I sat down in front of my computer and decided to try to create a common solution for injecting easy pagination. It’s an ordinary problem and I wouldn’t waste my time for doing it every time when I need to display more than 10 or 50 elements on the screen. So, as usually I started with installing Symfony2 and KnpPaginatorBundle, but after a couple of minutes I realized that the implementation can be more general than I assumed at the beginning. I could use the same design also for filtering or manipulating queries… Continue reading