Next month I will be sharing my WordPress-Nginx knowledge along with my favourite EasyEngine project, at the official Nginx conference in San Francisco, USA.
As I look forward to this conference with pride and honour, I also feel a bit nostalgic.
This post was supposed to be a simple notification about this upcoming event, but ended up becoming more of a short log of my Nginx journey so far.
Back in 2009, our tech blog Devils’ Workshop’s traffic was growing at a pace that used to crash Apache server many times a day.
We tried to upgrade from shared-hosting to VPS, VPS to bigger VPS. Nothing seemed to work while hosting costs kept increasing. I coded a script to simply restart apache and other processes, made it accessible at a “secret” public URL. Deepak Jain, me and other contributor would hit that URL whenever anyone of us saw apache crashed.
That terrible experience led me to explore alternatives and that is when I came across Nginx. I wish I could remember the exact date!
After spending days on Nginx forum, I managed to figure out the configuration I needed to run our WordPress Multisite. Multisite part was toughest. But after painful migration, we managed to save more than $100 every month in hosting bill, with 100% uptime!
For next two years, I kept building our internal knowledge-base. I mostly kept it private as I wasn’t sure about how correct it all was.
This was the year, when I realised that a lot of our internal knowledge-base had matured and wasn’t changing much.
Response to this series turned out to be so good, that rtcamp.com started getting more traffic than our tech blog!
After answering thousands of support requests (via comments, forums, and emails), we felt need to simplify WordPress-Nginx setup further!
EasyEngine and our WordPress-Nginx article series helped us make many new friends in Nginx’s online community. One of them is Patrick Nommensen from Nginx, Inc itself.
It was Patrick who suggested I should speak at nginx.conf on WordPress-Nginx.
Initially, I was a reluctant to go to the US, mainly because of the costs involved. But my partner Vivek Jain convinced me to travel to US. So I applied as a speaker to nginx.conf.
I must say I was very lucky as I was selected without much hassle. So I will be speaking at nginx.conf on Oct 21! 🙂
Before I present the demo of EasyEngine, I will cover WordPress-Nginx best practices (theory part with some code snippets and examples).
The idea is to explain few things that EasyEngine does behind the scenes.
I am really excited to meet Igor. Or the way I say it here, “Eager to meet Igor” (no pun intended). 😉
Igor is the guy who created Nginx for all of us.
I would also like to meet Yichun Zhang (agentzh). Though I couldn’t explore Lua module developed by him, I used many of his nginx-modules.
As far as sessions at nginx-conf goes, it’s really hard to decide on favourites. Still my TO-ATTEND list includes following (in chronological order)
- The Latest and Greatest from ngx_lua: New Features & Tools by Yichun Zhang (agentzh) (Day 1, 11:45am – 12:30pm, Developing track) – Finally, I will get a chance to explore nginx_lua. A pending to-do item on my list from a very long time.
- Scaleable NGINX Configuration by Igor Sysoev (Day 1, 2:15pm – 3pm under Operating track) – As EasyEngine is growing, config files have already started to become complex. For EasyEngine users, it’s still running one command for most stuff but we are having tough time writing upgrade scripts from one version to another.
- Behavior Based Security with Repsheet by Aaron Bedra (Day 2, 11am-11:45am under Developing track) – As maintainer of EasyEngine, I should jump at every opportunity to explore more about security. Plus I hate spam!
- When Dynamic Becomes Static: The Next Step in Web Caching Techniques by Wim Godden (Day 2, 1:30pm – 2:15pm, Case Studies track) – Majority of our managed-hosting clients are running membership sites where users are logged in. We rely on hhvm for better performance. But if something can be done at the Nginx side of things for logged in users, it will take things to the whole new level.
- Writing and Rewriting Web Apps in nginx.conf — URL shortening, OpenGrok by Constantine A. Murenin (Day 2, 2:15pm – 3pm under Case Studies track) – This is a favourite because I myself wanted to use build nginx only URL shortening service. We maintain a URL shortening service for our domain rt.cx.
Apart from sessions, I would love to meet Patrick, Sarah, Shirley and Erin from Nginx team. These people are really awesome and helped me not only in my session-related preparation but also in travel and other arrangements.
I am all excited to speak at the Nginx conference. But as this my first trip to US, I have added few more things to my TO-DO list.
Most important is attending WordCamp San Francisco.
Had I planned to attend nginx-conf earlier, I would have tried my hand at applying for a speaker session to WordCamp SF as well but unfortunately, when I got to know about nginx-conf, speaker registrations for WordCamp SF were already closed. 😐
(promo code: if you like to attend to nginx.conf, you can use promo code SPEAKER25 during registration to get 25% discount)