{"id":1614,"date":"2013-05-08T09:45:22","date_gmt":"2013-05-08T14:45:22","guid":{"rendered":"http:\/\/www.migrate2cloud.com\/blog\/?p=1614"},"modified":"2016-03-21T02:46:12","modified_gmt":"2016-03-21T07:46:12","slug":"apache-on-cloud-the-things-you-should-know","status":"publish","type":"post","link":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/","title":{"rendered":"Apache on the  Cloud &#8211;  The things you should know"},"content":{"rendered":"<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0 LAMP forms the base of most web applications. \u00a0As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0To overcome this slow response \u00a0the primary choice of most people is to add more hardware resources ( incase of AWS increasing the instance type). This will definitely \u00a0increases performance but will cost you more money. \u00a0The webserver and database eat most of the resources. Most commonly used web server is apache and database is MySQL. So if we can optimize these two we can improve the performance.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0 Apache optimization techniques can often provide significant acceleration boosts \u00a0even when other acceleration techniques are in use, such as a CDN. \u00a0mod_pagespeed is a module from Google for Apache HTTP Servers that can improve the page load times of your website. you can read more on this from <a href=\"http:\/\/www.migrate2cloud.com\/blog\/make-your-websites-run-faster-automatically-try-mod_pagespeed-for-apache\">here<\/a>. \u00a0If you want to deploy a PHP app on AWS Cloud, Its better to using some kind of caching mechanism. \u00a0Its already discussed in our <a href=\"http:\/\/www.migrate2cloud.com\/blog\/php-caching-the-way-to-speed-up-php-sites\">blog<\/a> .<\/p>\n<p dir=\"ltr\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Once we came into a situation where we have to use a micro instance for a web server with less than 500 hits a day<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0 \u00a0\u00a0 When the site started running live, and we feel like disappointed. when accessing website, it would sometimes pause for several seconds before serving the requested page. It took \u00a0hours to figure out what was going on. finally we run the command top and quickly discovered that when the site was accessing by certain amount of users the CPU would spike, but the spike was not the typical user or system CPU. For testing what&#8217;s happening in\u00a0 server we used the apache benchmark tool \u2018ab\u2019 and run the following command on\u00a0 localhost.<\/p>\n<p dir=\"ltr\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#ab -n 100 -c 10 http:\/\/mywebserver.com\/<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0 This will show \u00a0how fast our web server can handle 100 requests, with a maximum of 10 requests running concurrently. In the meantime we were monitoring the output of top command on web server.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/lh5.googleusercontent.com\/rogdkoV5HfgNV6lpebenqJ88kWPE0jR7dRcNNd9Bx9kCKb2MI2V0hRCR52kTG0iyoGB6W1ZdRtdwW4tXRpCdSoQmrosvWVIX2V8o9FPDuibzcbZKLoizMxg\" alt=\"\" width=\"655px;\" height=\"81px;\" \/><\/p>\n<p dir=\"ltr\">\u00a0\u00a0\u00a0\u00a0\u00a0For further investigation we started with \u00a0sar &#8211; Linux command to \u00a0Collect, report, or save system activity information<\/p>\n<p dir=\"ltr\">\u00a0 #sar 1<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/3SmNQ0_y4PnzBX4ES9PYEs5YkkEZRqiyH7HSQiVGZ6MfHrpDUWaC1kL3Put2W46zWZN9iCwEeqfDRvGf25JiCruVKZrlK21TKVfYKb07TDmMBXraOq8HvzfZ\" alt=\"\" width=\"639px;\" height=\"148px;\" \/><\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0 According to amazon documentation \u201cMicro instances (t1.micro) provide a small amount of consistent CPU resources and allow you to increase CPU capacity in short bursts when additional cycles are available\u201d.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 If you use 100% CPU for more than a few minutes, Amazon will \u201csteal\u201d CPU time from the instance, meaning that they throttle your instance. \u00a0This last \u00a0as long as five minutes, and then you get a few seconds of 100% again, then the restrictions are back. \u00a0This will effect your website, making it slow, and even timing-out requests. basically means the physical hardware is busy and the hypervisor can&#8217;t give the VM the amount of CPU cycles it wants.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0 Real tuning required on prefork. This is where we can tell apache to only generate so many processes. The defaults values \u00a0are high, and which cant be handled by micro instance. Suppose you get 10 concurrent requests for a php page and require around 64MB of RAM when requested (you have to make sure that \u00a0php memory_limit is above that value). That&#8217;s around 640MB of RAM on micro instance of 613MB RAM. \u00a0This is the case \u00a0with 10 connections &#8211; apache is configured to allow 256 clients by default, \u00a0We need to \u00a0scale these down , normally with 10-12 MaxClients. As per out case, this is still a huge number because 10-12 concurrent connections would use all our memory. If you want to be really cautious, make sure that your max memory usage is less than 613MB. Something like 64M php memory limit and 8 max clients keeps you under your limit with space to spare &#8211; this helps ensure that our MySQL process when your server is under load.<\/p>\n<p dir=\"ltr\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Maxclients an important tuning parameter regarding the performance of the Apache web server. We can calculate the value of this for a t1.micro instance<\/p>\n<p dir=\"ltr\">Theoretically,<\/p>\n<p dir=\"ltr\"><span style=\"color: #993300;\">MaxClients =(Total Memory &#8211; Operating System Memory &#8211; MySQL memory) \/ Size Per Apache process.<\/span><\/p>\n<p dir=\"ltr\">t1.micro have a server with 613MB of Total memory. Suppose We are using RDS instead of mysql server.<\/p>\n<p dir=\"ltr\">Stop apache and run<\/p>\n<p dir=\"ltr\"><span style=\"color: #993300;\">#ps aux | awk &#8216;{sum1 +=$4}; END {print sum1}&#8217;.<\/span><\/p>\n<p dir=\"ltr\">\u00a0we will get the amount of memory thats used by processes other than apache.<\/p>\n<p dir=\"ltr\">Suppose we get a value around 30.<\/p>\n<p dir=\"ltr\">from top command we can check the average memory that each apache resources use.<\/p>\n<p dir=\"ltr\">suppose its 60mb.<\/p>\n<p dir=\"ltr\">Max clients = (613 &#8211; 30 ) 60 = 9.71 ~ 10 approx \u2026<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Micro instances are awesome, especially when cost becomes a major concern, however that they are not right for all applications. A simple website with only a few hundreds \u00a0hits a day will do just fine since it will only need CPU in short bursts.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0For Servers that serves dynamic content, better approach is to employ a reverse-proxy. This would be done this apache&#8217;s mod_proxy or Squid. The main advantages of this configurations are content caching, load balancing etc. Easy method is to use mod_proxy and the ProxyPass directive to pass content to another server. mod_proxy supports a degree of caching that can offer a significant performance boost. But another advantage is that since the proxy server and the web server are likely to have a very fast interconnect, the web server can quickly serve up large content, freeing up a apache process, why the proxy slowly feeds out the content to clients<\/p>\n<p dir=\"ltr\">If you are using ubuntu, you can enable module by<\/p>\n<p dir=\"ltr\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #993300;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #a2enmod proxy<\/span><\/p>\n<p dir=\"ltr\"><span style=\"color: #993300;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#a2enmod proxy_http \u00a0\u00a0\u00a0<\/span><\/p>\n<p dir=\"ltr\">and in apache2.conf<\/p>\n<p dir=\"ltr\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #993300;\">\u00a0\u00a0\u00a0\u00a0ProxyPass \u00a0\/ \u00a0http:\/\/192.168.1.46\/<\/span><\/p>\n<p dir=\"ltr\"><span style=\"color: #993300;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0ProxyPassReverse \u00a0\/ \u00a0\u00a0<span style=\"color: #993300;\">http:\/\/192.168.1.46\/<\/span><\/span><\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0The ProxyPassreverse directive captures the responses from the web server and masks the URL as it would be directly responded by the Apache \u00a0hiding the identity\/location of the web server. This is a good security practice, since the attacker won&#8217;t be able to know the ip of our web server.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Caching with Apache2 is another important consideration. \u00a0We can configure apache \u00a0to set the Expires HTTP header, max-age directive of the Cache-Control HTTP header of static files ,such as images, CSS and JS files, to a date in the future so that these files will be cached by your visitors browsers. This saves bandwidth and makes web site appear faster if a user visits your site for a second time, static files will be fetched from the browser cache<\/p>\n<p dir=\"ltr\"><span style=\"color: #993300;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #a2enmod expires<\/span><\/p>\n<p dir=\"ltr\">\u00a0 edit \u00a0<span style=\"color: #993300;\">\/etc\/apache2\/sites-available\/default<\/span><\/p>\n<p><span style=\"color: #993300;\">\u00a0\u00a0&lt;IfModule mod_expires.c&gt;<\/span><br \/>\n<span style=\"color: #993300;\"> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0ExpiresActive On<\/span><br \/>\n<span style=\"color: #993300;\"> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0ExpiresByType image\/gif &#8220;access plus 4 weeks&#8221;<\/span><br \/>\n<span style=\"color: #993300;\"> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0ExpiresByType image\/jpg &#8220;access plus 4 weeks&#8221; <\/span><\/p>\n<p><span style=\"color: #993300;\">&lt;\/IfModule&gt;<\/span><\/p>\n<p dir=\"ltr\">This would tell browsers to cache .jpg, .gif \u00a0files for four week.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0 \u00a0\u00a0 \u00a0 If your server requires a large amount of read \/ write operations, you might consider provisioned IOPS ebs volumes on your server. This is really effective if you use database server on ec2 instances. \u00a0we can use iostat on the command line to take a look at your read\/sec and write\/sec. You can also use CloudWatch metrics to determine read and write operations.<\/p>\n<p dir=\"ltr\" style=\"text-align: justify;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Once we move to the security side of apache, our major concern is DDos attacks. If a server is under a DDoS attack, it is quite difficult to detect the attack before the damage is done. \u00a0<span style=\"color: #333300;\">Attack<\/span> packets usually have spoofed source IP addresses. Hence, it is more difficult to trace them back to their real source. The limit on the number of simultaneous requests that will be served by Apache is decided by the MaxClients directive, and is set to safe limit, by default. Any connection attempts over this limit will normally be queued up.<\/p>\n<p dir=\"ltr\">\u00a0\u00a0\u00a0\u00a0\u00a0If you want to protect your apache against DOS, \u00a0DDOS attacks use <span style=\"color: #993300;\">mod_evasive<\/span> module. \u00a0This module is designed specifically as a remedy for Apache DoS attacks. This module will allow you to specify a maximum number of requests executed by the same IP address. If the limit is reached, the IP address is blacklisted for the time period you specify.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0\u00a0\u00a0 LAMP forms the base of most web applications. \u00a0As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. \u00a0\u00a0\u00a0\u00a0\u00a0To overcome this slow response \u00a0the primary choice of most people is to add more hardware resources ( incase of AWS [&hellip;]<\/p>\n","protected":false},"author":17,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[3],"tags":[258,246,259,141,260,144,211,143,133,253,137,257,254,116,245,251,187,44,247,120,256,134,255,249,252,244,198,250,136,151,248,204],"class_list":["post-1614","post","type-post","status-publish","format-standard","hentry","category-cloud-computing","tag-apache-benchmark-tool","tag-apache-http-server","tag-apache-web-server","tag-caching","tag-company-technology","tag-company-amazon-com","tag-company-google","tag-company-mysql-ab","tag-cross-platform-software","tag-database-server","tag-department-stores-nec","tag-dos","tag-gif","tag-http","tag-hypertext-transfer-protocol","tag-lamp","tag-linux","tag-load-balancing","tag-mod-proxy","tag-mysql-2","tag-operating-system","tag-php","tag-physical-hardware","tag-proxy-server","tag-ram","tag-reverse-proxy","tag-search-engines","tag-server","tag-technologyinternet","tag-web-applications","tag-web-cache","tag-web-server"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"admin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Migrate to Cloud - we make the clouds rain\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Apache on the Cloud \u2013 The things you should know - Migrate to Cloud\" \/>\n\t\t<meta property=\"og:description\" content=\"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2013-05-08T14:45:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2016-03-21T07:46:12+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Apache on the Cloud \u2013 The things you should know - Migrate to Cloud\" \/>\n\t\t<meta name=\"twitter:description\" content=\"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#blogposting\",\"name\":\"Apache on the Cloud \\u2013 The things you should know - Migrate to Cloud\",\"headline\":\"Apache on the  Cloud &#8211;  The things you should know\",\"author\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/author\\\/admin-2\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/lh5.googleusercontent.com\\\/rogdkoV5HfgNV6lpebenqJ88kWPE0jR7dRcNNd9Bx9kCKb2MI2V0hRCR52kTG0iyoGB6W1ZdRtdwW4tXRpCdSoQmrosvWVIX2V8o9FPDuibzcbZKLoizMxg\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#articleImage\"},\"datePublished\":\"2013-05-08T09:45:22-05:00\",\"dateModified\":\"2016-03-21T02:46:12-05:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#webpage\"},\"articleSection\":\"Cloud computing, apache benchmark tool, Apache HTTP Server, Apache web server, caching, Company Technology, Company: Amazon.com, Company: Google, Company: MySQL AB, Cross-platform software, database server, Department Stores - NEC, DOS, gif, HTTP, Hypertext Transfer Protocol, LAMP, Linux, load balancing, Mod proxy, Mysql, Operating System, PHP, physical hardware, Proxy server, RAM, Reverse proxy, Search Engines, Server, Technology\\\/Internet, web applications, Web cache, web server\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/category\\\/cloud-computing\\\/#listItem\",\"name\":\"Cloud computing\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/category\\\/cloud-computing\\\/#listItem\",\"position\":2,\"name\":\"Cloud computing\",\"item\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/category\\\/cloud-computing\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#listItem\",\"name\":\"Apache on the  Cloud &#8211;  The things you should know\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#listItem\",\"position\":3,\"name\":\"Apache on the  Cloud &#8211;  The things you should know\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/category\\\/cloud-computing\\\/#listItem\",\"name\":\"Cloud computing\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/#organization\",\"name\":\"Migrate to Cloud\",\"description\":\"we make the clouds rain\",\"url\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/author\\\/admin-2\\\/#author\",\"url\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/author\\\/admin-2\\\/\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d370c5f82d8ed54ea2a14d7d135705e3add3103f5fa9b7670bd9dc6335a92e9e?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"admin\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#webpage\",\"url\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/\",\"name\":\"Apache on the Cloud \\u2013 The things you should know - Migrate to Cloud\",\"description\":\"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/apache-on-cloud-the-things-you-should-know\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/author\\\/admin-2\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/author\\\/admin-2\\\/#author\"},\"datePublished\":\"2013-05-08T09:45:22-05:00\",\"dateModified\":\"2016-03-21T02:46:12-05:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/\",\"name\":\"Migrate to Cloud\",\"description\":\"we make the clouds rain\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.migrate2cloud.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Apache on the Cloud \u2013 The things you should know - Migrate to Cloud","description":"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS","canonical_url":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#blogposting","name":"Apache on the Cloud \u2013 The things you should know - Migrate to Cloud","headline":"Apache on the  Cloud &#8211;  The things you should know","author":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/author\/admin-2\/#author"},"publisher":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/lh5.googleusercontent.com\/rogdkoV5HfgNV6lpebenqJ88kWPE0jR7dRcNNd9Bx9kCKb2MI2V0hRCR52kTG0iyoGB6W1ZdRtdwW4tXRpCdSoQmrosvWVIX2V8o9FPDuibzcbZKLoizMxg","@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#articleImage"},"datePublished":"2013-05-08T09:45:22-05:00","dateModified":"2016-03-21T02:46:12-05:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#webpage"},"isPartOf":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#webpage"},"articleSection":"Cloud computing, apache benchmark tool, Apache HTTP Server, Apache web server, caching, Company Technology, Company: Amazon.com, Company: Google, Company: MySQL AB, Cross-platform software, database server, Department Stores - NEC, DOS, gif, HTTP, Hypertext Transfer Protocol, LAMP, Linux, load balancing, Mod proxy, Mysql, Operating System, PHP, physical hardware, Proxy server, RAM, Reverse proxy, Search Engines, Server, Technology\/Internet, web applications, Web cache, web server"},{"@type":"BreadcrumbList","@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.migrate2cloud.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/www.migrate2cloud.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/www.migrate2cloud.com\/blog\/category\/cloud-computing\/#listItem","name":"Cloud computing"}},{"@type":"ListItem","@id":"https:\/\/www.migrate2cloud.com\/blog\/category\/cloud-computing\/#listItem","position":2,"name":"Cloud computing","item":"https:\/\/www.migrate2cloud.com\/blog\/category\/cloud-computing\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#listItem","name":"Apache on the  Cloud &#8211;  The things you should know"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.migrate2cloud.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#listItem","position":3,"name":"Apache on the  Cloud &#8211;  The things you should know","previousItem":{"@type":"ListItem","@id":"https:\/\/www.migrate2cloud.com\/blog\/category\/cloud-computing\/#listItem","name":"Cloud computing"}}]},{"@type":"Organization","@id":"https:\/\/www.migrate2cloud.com\/blog\/#organization","name":"Migrate to Cloud","description":"we make the clouds rain","url":"https:\/\/www.migrate2cloud.com\/blog\/"},{"@type":"Person","@id":"https:\/\/www.migrate2cloud.com\/blog\/author\/admin-2\/#author","url":"https:\/\/www.migrate2cloud.com\/blog\/author\/admin-2\/","name":"admin","image":{"@type":"ImageObject","@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/d370c5f82d8ed54ea2a14d7d135705e3add3103f5fa9b7670bd9dc6335a92e9e?s=96&d=mm&r=g","width":96,"height":96,"caption":"admin"}},{"@type":"WebPage","@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#webpage","url":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/","name":"Apache on the Cloud \u2013 The things you should know - Migrate to Cloud","description":"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/#breadcrumblist"},"author":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/author\/admin-2\/#author"},"creator":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/author\/admin-2\/#author"},"datePublished":"2013-05-08T09:45:22-05:00","dateModified":"2016-03-21T02:46:12-05:00"},{"@type":"WebSite","@id":"https:\/\/www.migrate2cloud.com\/blog\/#website","url":"https:\/\/www.migrate2cloud.com\/blog\/","name":"Migrate to Cloud","description":"we make the clouds rain","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.migrate2cloud.com\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"Migrate to Cloud - we make the clouds rain","og:type":"article","og:title":"Apache on the Cloud \u2013 The things you should know - Migrate to Cloud","og:description":"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS","og:url":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/","article:published_time":"2013-05-08T14:45:22+00:00","article:modified_time":"2016-03-21T07:46:12+00:00","twitter:card":"summary_large_image","twitter:title":"Apache on the Cloud \u2013 The things you should know - Migrate to Cloud","twitter:description":"LAMP forms the base of most web applications. As the load on an server increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. To overcome this slow response the primary choice of most people is to add more hardware resources ( incase of AWS"},"aioseo_meta_data":{"post_id":"1614","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2022-12-27 09:26:05","updated":"2026-07-21 15:32:12","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.migrate2cloud.com\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.migrate2cloud.com\/blog\/category\/cloud-computing\/\" title=\"Cloud computing\">Cloud computing<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tApache on the  Cloud \u2013  The things you should know\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.migrate2cloud.com\/blog"},{"label":"Cloud computing","link":"https:\/\/www.migrate2cloud.com\/blog\/category\/cloud-computing\/"},{"label":"Apache on the  Cloud &#8211;  The things you should know","link":"https:\/\/www.migrate2cloud.com\/blog\/apache-on-cloud-the-things-you-should-know\/"}],"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/posts\/1614","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/comments?post=1614"}],"version-history":[{"count":21,"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/posts\/1614\/revisions"}],"predecessor-version":[{"id":2133,"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/posts\/1614\/revisions\/2133"}],"wp:attachment":[{"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/media?parent=1614"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/categories?post=1614"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.migrate2cloud.com\/blog\/wp-json\/wp\/v2\/tags?post=1614"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}