h1. HTTP Caching #cache http://jothut.com/cgi-bin/junco.pl/blogpost/44045/25Sep2014/Nginx-and-Redis-September-2014 http://jothut.com/cgi-bin/junco.pl/blogpost/44043/08Sep2014/Nginx-and-Memcached-September-2014 http://blog.octo.com/en/http-caching-with-nginx-and-memcached/ -http://wiki.nginx.org/HttpProxyModule- http://nginx.org/en/docs/http/ngx_http_memcached_module.html https://www.igvita.com/2008/02/11/nginx-and-memcached-a-400-boost/ https://eamann.com/tech/ludicrous-speed-wordpress-caching-with-redis/ http://www.nodex.co.uk/article/13-04-12/high-performance-caching-with-nginx-redis-and-php http://memcached.org/ http://redis.io/ http://redis.io/topics/twitter-clone http://wiki.nginx.org/HttpRedis https://www.varnish-cache.org/ https://www.varnish-cache.org/docs/4.0/ https://signalvnoise.com/posts/3112-how-basecamp-next-got-to-be-so-damn-fast-without-using-much-client-side-ui h2. Etc. http://jothut.com/cgi-bin/junco.pl/blogpost/397/21Nov2013/KeyValue-database-info http://jothut.com/cgi-bin/junco.pl/blogpost/21154/22Sep2014/Installing-nodejs-nginx-mysql-junco-and-ghost-on-Digital-Ocean-Droplet h2. Nginx config https://www.igvita.com/2008/02/11/nginx-and-memcached-a-400-boost/ For using memecached code.user usr usr; worker_processes 2; http { types { text/javascript js; application/xml xml; } # By default, return content sa default_type application/xml; access_log /home/api/logs/nginx.log main; sendfile on; tcp_nopush on; keepalive_timeout 65; tcp_nodelay on; # app. server(s) / cluster definition upstream dynamic_srv { server 127.0.0.1:9020; } server { listen 9000; server_name srv; root /home/usr; # Match any request that begins with /dynamic_request location /dynamic_request { # Append a file-extension to every request if ($args ~* format=json) { rewrite ^/dynamic_request/?(.*)$ /dynamic_request.js$1 break; } if ($args ~* format=xml) { rewrite ^/dynamic_request/?(.*)$ /dynamic_request.xml$1 break; } # Check if local memcached server can answer this request memcached_pass 127.0.0.1:11211; # Send to app. server if Memcached could not ansewr the request error_page 404 = @dynamic_request; } location @dynamic_feed_id { # only internal requests can reach this endpoint internal; # dispatch to our app_server cluster / instance proxy_pass http://dynamic_srv; } } } code..