The Inexorable Rise Of Nginx And Why CIOs Should Care: It's About Mobile Engagement

The techologist in me loves getting the monthly Web server report from Netcraft.com. Astounding statistics like the number of registered public Web sites (673 million in June, up from 23,000 in 1995) and active Web sites (188 million) put into the context of history shows simply and directly just how penetrating the Internet has become in our lives over the last 18 years.

But I've also been noticing the steady rise of a relatively new open source Web server called nginx (pronounced engine-x) (see the figure below, complements of Netcraft). Nginx is now the number two Web server of active Web sites at 24.3 million sites. For reference, the open source Apache Web server has 101.9 million active sites and Microsoft has 20.9 million. (The numbers always wiggle around a little month to month, so track the trend rather than the monthly changes.)

Figure 1 Netcraft's June 2013 Web Server Report Shows The Steady Rise Of Nginx

When I ask my mobile app development colleagues Michael Facemire and Jeffrey Hammond about why nginx is growing, they tell me that nginx is particularly good at handling mobile app scenarios. The reason is that mobile apps or mobile Web sites ping the server in a very different way than a typical Web site does. Mobile apps and mobile sites use REST APIs, which means every ping from the app has to re-establish the "connection" to the server (it's a stateless connection). Also, the volume of pings and the number of simultaenous users is often an order of magnitude higher than for most Web sites. So mobile apps need a Web (aka, HTTP) server that can handle millions of simultaneous connections and deliver small amounts of data with a millisecond response time.

And that's precisely what nginx is good at. It can handle REST API calls much better than a traditional Apache or Windows Web server. Nginx is an HTTP server for the mobile era.

Okay, here's why CIOs should care:

  • When we moved to the Web, we had to embrace a new three-tier architecture to deliver great apps and experiences. But a three-tier architecture is not designed for the mobile era. It's like driving a VW Beetle from the 1960s instead of a Porsche Cayman -- the Beetle is a relic from a bygone era.
  • Now that we are moving to mobile first, we now need to adopt a four-tier architecture to deliver great apps and experiences to any device anywhere anytime. Nginx is in the delivery tier of that four-tier architecture.

That's why you should care. Nginx is a symbol of a massive pivot in your techology platform from three-tier Web to four-tier engagement. Growth in nginx adoption should signal a radical overhaul of the architecture you will need to thrive in the mobile era. It's time for us all to get smart about that.

We call this new four-tier architecture an "engagement platform." The four tiers (which we will outline in a report real soon now) are service, aggregation, delivery, and client. In the world of mobile engagement, the delivery tier is separate from the aggregation tier in order to efficiently handle:

  1. The last wireless mile: good performance over crappy networks. ("Can you hear me now????")
  2. Multiple operating systems: iOS, Android, Windows Phone & 8.x, BlackBerry, and probably some others in the future.
  3. Every device form factor and category: smartphone, tablet, tabletop, TV, smart product, and yes, computer.
  4. REST APIs, the future of application integration and agility.
  5. The massive volume of server pings. That's just going to accelerate. And if you are worried about mobile apps swamping your systems, imagine handling the explosion of pings from smart products.

So the technologist in me meets the business technology problem solver right there on that green line. I'm walking up that slope along with 100s of thousands of savvy mobile app developers in order to match up the technology needs of mobile engagement with the business investment required to deliver it.