Mindy and I became friends.
She healed children.
Mindy was BRIGHT. Brilliant. So, not only smart, bright -LIGHT. She was a pediatrician. We talked about how life felt like hell and heaven with not much in between. Mindy and I wrote to one another often. She was a mama to Lana and a wife to Jordan and a chemosabe to Meganand a buddy to everyone else she met. We wrote about illness and healing and pain and parenthood and friendship and marriage and God and how all these things were so completely impossible and miraculous. The overall amount of visitors kept growing any hour.
This translates back to around 39 visitors any minute.
The amount of visitors per hour went slowly down with a few hundred visitors less any hour until it stabilised at 11 dot 00PM / 05 dot 00PM the server load was already increased to 27, a clear indication that the server is already overloaded, after the peak.
At the peak 03 dot 25PM / 09 dot 25AM, the OliNo site received 2320 visitors per hour.
At 12 dot 00PM / 06 dot 00AM. It’s an interesting fact that the second tip to use a Content Distribution Network is something Amazon can offer with CloudFront. Fact, content is delivered with better possible performance, requests for your objects are automatically routed to the nearest edge location. Anyway, it should also result in a faster loading website for the visitor since the content to load is located more closely to the physical location of the visitor.
Some digging on the internet shows that using Amazon Cloudfront will double the bandwidth costs for your website.
Amazon CloudFront delivers your content using a global network of edge locations. Throughout the day way more visitors came from different parts of the world.a bunch of visitors came still from the USA. In the evening we have received 27169 visitors from 134 countries/territories. So, our Apache thread uses between the 16 20MB per thread.
I know that the value ain’t ain’t shown.
Setting this value Besides, the tip of Apache is to divide the available quantity of memory for Apache by the percentage of memory used in Top by a single Apache thread. Notice, it seems we need to reduce the tal number of MaxClients from 150 to 50 for our Apache configuration. Instance is running in the useast1b datacenter of Amazon. With all that said… One EC2 Compute Unit provides the equivalent CPU capacity of a ’02’ GHz 2007 Opteron or 2007 Xeon processor.
OliNo website is using a small instance type. Therefore this instance has 7 memory GB, 1 EC2 Compute Unit, 160 GB of instance storage, ’32 bit’ platform. There’s a perfect document about Apache Performance Tuning on the website of Apache. Besides, the current setting is Setting this value must result in error in the log. Among the first tips is to check the MaxClients option. I’m sure you heard about this. So it is a first step we can take. Our Apache web server ain’t tuned for performance. Often loads of readers will hit the link to read the story, when Slashdot links a site. Doesn’t it sound familiar? The Slashdot website serves around 3 million pages on weekdays, and slightly less on weekends. Whenever causing the site to buckle under the strain, when all those Slashdot readers start crashing the party, it can saturate a smaller website completely. So, this can easily throw thousands of hits at the site in minutes.
I am sure that the site is said to be Slashdotted, when this happens.
It is clearly a proven set up.
All the web server instances connect with a single MySQL database so mostly there’s a single state of the website. For example, this load balancing set up is similar how Slashdot has setup their hardware. On p of this, the loadbalancer will balance the load over the running webserver instances. You should take it into account. The first thing you read about improving the performance of WordPress is to use caching. We use WordPress as blogging software. We use the WP Super Cache plugin.
I had already done tests with it and it seems to improve performance significantly when reloading similar page multiple times.
We never had tested it under Slashdot effect conditions, where thousands of users simultaneous need to access really similar webpage on the website.
Theoretically this cache module will handle this smoothly. Needless to say, perform your load test, find the bottlenecks, try to solve them by adjusting the set up, do your performance tests again. Essentially, the bottleneck can be CPU, IO or network. Nevertheless, repeat this process until you are satisfied with the performance.
We are clearly guessing now, as you can see.
So there’re a couple of options which can be tuned like the Apache webserver, the MySQL database or even the Linux kernel.
Therefore this process is iterative. Only one way to find the real bottleneck your favorite performance tests on an identical non production set up. During these tests the load on the server can be controlled and the server can be monitored closely. I thought I should leave my first comment. I will visit this blog very often. For example, I don’t know what to say except that I have enjoyed reading. Anyways, nice blog. I recently came across your blog and was reading along. With that said, this will not prevent an overload of the server since the Slashdot effect.
I know that the loadbalancer will balance the load over the running web server instances.
This makes it possible to start / stop instances on the basis of the load of a bunch of instances using a voting mechanism.
Auto scaling could startup more instances to handle the increased load, when there’s a huge peak in visitors. In the course of the peak we got 2320 visitors per hour. Loads of info can be found by going online. This calculates back to 590 KB/s of continuous traffic. Basically, with 914 KB, the webpage is quite large. Consequently, this shouldn’t be the bottleneck. You see, this generates 914 KB x 2320 = 2 GB per hour of data traffic. We can save few processor cycles by disabling it.
In our case we do not use the access log.
This can take up valuable time it’s just a case of writing the information,, albeit Apache keeps the log files open.
Tip to minimize HTTP requests, is the first we should tackle. Basically, so that’s a cool article and I have posted a link to my twitter account. On p of that, you can check my very own ol CloudBerry Explorer that helps to manage S3 and CloudFront. I will also refer my customers to your AWS experience. Seriously. I know it’s a freeware. We found an appropriate name for our organisation, OliNo, that is a word joke for No Oil! Our organisation will contribute to reach this goal. Of course let start a civilization which provides for its energy using renewable energy. Surely it’s a combination of two Catalan words.Oli and No. Gether they mean Oil No! I changed some MySQL settings. Prior the slashdot effect, the mysql database settings where optimized with the MySQL Performance Tuning Primer script.
See also the results of a recent performance analysis and the current MySQL settings.
a notification is send when the server is unavailable.
With an interval of 5 minutes the response time of the website is measured from the different locations.
Response time of the website is monitored by a global monitoring network service of Pingdom. They have probe servers which are located in the USA, Canada, UK, Sweden and France. OliNo website is hosted in the Amazon Elastic Computer Cloud. To be able to handle a bigger load on the webserver one could start using multiple instances. Until the time comes when Amazon will offer a load balancing service in their EC2 environment, people are forced to use a ‘softwarebased’ load balancing solution.
Did you know that the web traffic could be load balanced over the two web servers.
Effectively quadrupling the current cost price of using a single EC2 instance.