Load testing with BlazeMeter

Some time ago I wrote a post about using jMeter to benchmark performance of a web application. Apache jMeter is a great piece of software and I strongly recommend it but it’s not everything. You also need a high capacity bandwidth and a reliable hosts to run a test from. You often need more than a one testing server because it’s impossible to generate real concurrent connections from a single computer. The reason for that is a network interface can physically send only one packet at the time. People from BlazeMeter recognised this problem and created a web based service which makes the load testing very simple.
Continue reading “Load testing with BlazeMeter”

Reading PHP session from Varnish Cache

In my previous post I showed how to integrate Varnish Cache with a PHP application. The example can solve various simple problems but it might not be enough for a complex software. A good example is a multilingual application. One URL can have multiple caches. You might also need to know more about a user (is he logged in? has he received a notification? etc) to make some additional caching decisions.
Continue reading “Reading PHP session from Varnish Cache”

Painless guide to Solr Cloud configuration

“Cloud” become very ambiguous term and it can mean virtually anything those days. If you are not familiar with Solr Cloud think about it as one logical service hosted on multiple servers. Distributed architecture helps with scaling, fault tolerance, distributed indexing and generally speaking improves search capabilities.

All of that is very exciting and I’m highly impressed how the service is designed but… it’s relatively new product. If you play with the tutorial (which by the way is great) running multiple services on the same host does’t cause problems. Setting the service for production environment and using it is a different story. There are still some unresolved issues which can confuse for hours if not days.
Continue reading “Painless guide to Solr Cloud configuration”

Apache2 vs Nginx for PHP application

Time is money. This somewhat shallow and overused saying fits perfectly well into any on-line business. Users are impatient and every millisecond brings them closer to leaving your website.

If you’ve ever been trying to squeeze more out of hardware you must have come across Nginx (engine x). Nginx usually appears in context of PHP-FPM (FastCGI Process Manager) and APC (Alternative PHP Cache). This setup is often pitched to be the ultimate combo for a web server but what that really means? How much faster a PHP application is going to be on a different web server? I had to check it and the answer as often is – that depends.
Continue reading “Apache2 vs Nginx for PHP application”

Beginners guide to Amazon Cloud

Everybody heard about Amazon Cloud. It has been around for a good few years. Despite its popularity not everybody had a chance to try it. Amazon tries it best to get more people on board by offering “Micro” versions of their web service for free. If you are into technology or just want a quality hosting for your website, it’s worth getting familiar with AWS. After all.. can you beat free?
Continue reading “Beginners guide to Amazon Cloud”

Boost WordPress performance with Varnish Cache

Lets face it, WordPress is slow. With every request it has to go though thousands lines of code and multiple SQL queries to render a page. Very popular configuration for a WordPress site is Apache, mod_rewrite, mod_php, PHP and MySQL. It’s very good setup but can’t be consider the fastest (at least without any additional tweaking).
The good news is WordPress doesn’t have to be a speed demon. In most cases it’s just a CMS to produce static pages. If the content is static it doesn’t make any sense to waste CPU cycles on re-rendering the same HTML over and over again.
Continue reading “Boost WordPress performance with Varnish Cache”