NGINX and NGINX Plus Everywhere - NGINX

Original: https://www.nginx.com/blog/nginx-and-nginx-plus-everywhere/

The open source NGINX software and NGINX Plus, the commercially supported product built on NGINX, have become the application delivery platform for the most demanding web sites and applications in the world. Combined they now power over 50% of the world’s 10,000 busiest websites. NGINX and NGINX Plus provide flexibility, power, and simplicity on a scale that no other product offers.

A major reason that NGINX and NGINX Plus offer unsurpassed flexibility and simplicity is that they are pure software solutions available for popular operating systems. We will come back to this point repeatedly because it is one of the key factors driving their flexibility. Many vendors of hardware and virtual appliances highlight the capabilities of their software but what they don’t mention is that the software comes preinstalled on proprietary hardware or in a prebuilt virtual machine. You don’t get to choose the hardware or virtualization platform, nor can you choose another form factor altogether, such as a container. With pure software, like NGINX and NGINX Plus, all those choices are open to you, giving you maximum flexibility.

Their flexibility and feature set enables NGINX and NGINX Plus to cover more of your application delivery stack than other products, across multiple dimensions:

Their comprehensive coverage across many dimensions – which we could more thoroughly characterize as “NGINX and NGINX Plus everywhere, anytime, by anyone, for any reason” – means you can deploy a single solution across all your platforms and environments, to cover more of your application stack than any other solution, greatly reducing cost and complexity.

To make the point more concrete, let’s look at the landscape with and without NGINX and NGINX Plus. We’ll see how they fit across more of your stack, greatly simplifying your infrastructure and operations.

The first figure shows how single‑function solutions can’t cover all dimensions of your infrastructure, meaning you have to deploy various tools in different areas.

Without NGINX and NGINX Plus, you have to deploy multiple tools for load balancing, caching and web serving. This is includes load balancing containers.

Now let’s add NGINX and NGINX Plus to the picture. Notice how their benefits extend to every part of your application stack:

Deploying NGINX and NGINX Plus everywhere in your infrastructure simplifies app deployment: there's a single tool for web serving, reverse proxying, load balancing, caching, and more. This includes load balancing containers.

The Dimensions in Detail

Now we’ll explore each of the dimensions listed above in more depth, with respect to load balancing in particular for most of the dimensions. The load‑balancing market has traditionally been dominated by proprietary hardware or virtual appliance solutions, and here we’ll focus on the differences between them and NGINX and NGINX Plus. The additional features in NGINX Plus make it even more powerful and efficient than the open source NGINX software.

What You Deploy

Proprietary hardware or operating system software are never required with NGINX or NGINX Plus. Many vendors of hardware and virtual appliance‑based solutions build them on a customized version of Linux or FreeBSD that they don’t distribute separately. Nor do they release their software by itself, but only preinstalled on their appliances. This is a key point. Vendors often refer to their virtual appliance as a software solution, but virtual appliances are closer to hardware in concept than they are to pure software. The vendor picks the operating system, often limits what you can change, and choses the hypervisor that it can run on. So a virtual appliance solution does not equal a pure software solution.

So let’s look at the different ways modern applications are being deployed and how NGINX and NGINX Plus fit compared to traditional load‑balancing products.

Where You Deploy It

As software‑only products that are available as installations on popular operating systems, NGINX and NGINX Plus enjoy unsurpassed flexibility in where you can deploy them. Proprietary hardware or operating system software is never required.

Let’s look at the different environments where modern applications are being deployed and how NGINX and NGINX Plus fit in.

Why You Deploy It

NGINX and NGINX Plus cover more of your application stack, at scale, than any other solution. The reduced complexity, lower cost, and increased stability you get from being able to use one tool across so much of your application stack, always highly available and high performance, is one of the great values of NGINX and NGINX Plus.

This doesn’t mean you will necessarily condense the layers of your application physically, but rather that you only have to learn one product to cover all the layers. When you use NGINX Plus, you also get support from a single vendor.

The open source NGINX software has become the go‑to web server for high traffic websites, known for its extremely high performance with minimal use of system resources. NGINX is also used by many content delivery networks (CDNs) due to its high‑performance caching features. NGINX is also a very popular tool for local proxying – while acting as a local web server it can also proxy requests to a local application server, such as PHP‑FPM. This is a common way to support high‑traffic WordPress sites and takes advantage of NGINX’s great connection handling.

In NGINX Plus, we have enhanced the already powerful NGINX solution with additional features – for load balancing, management, monitoring, and high availability – giving you one tool that can do advanced load balancing, caching, local proxying, web serving, and media streaming. These areas have traditionally been addressed using a combination of proprietary hardware appliances and various software tools. NGINX and NGINX Plus address them all, while at the same time increasing flexibility and stability at low cost.

How You Deploy It

DevOps is certainly one of the major trends we are seeing in IT.

Let’s look at the differences between using DevOps with hardware or virtual appliances as opposed to NGINX and NGINX Plus. DevOps is a community‑driven initiative that takes advantage of open source software’s flexibility, openness, and ease of configuration. Software that is closed and proprietary in its core cannot take advantage of this community momentum, and DevOps integrations are delivered at the pace of the vendor. Furthermore, the speed and agility of DevOps is blunted when the components you need cannot be deployed on demand. Hardware form factors, heavy virtual appliances, and restrictive software licensing all conspire against an agile and responsive DevOps process.

As pure software with an open source core, NGINX and NGINX Plus are a natural fit for DevOps throughout the entire app lifecycle. You can install, configure, and destroy an NGINX or NGINX Plus instance at will.

Who You Are

Even if the traffic to your site is modest, handling it well is important to your business. You need a solution that is stable, available, easy to manage and monitor, and still fits in your limited budget. NGINX and NGINX Plus provide an extremely cost‑effective solution to address these needs and allow you to simplify your environment, saving you time and improving your operational efficiency. The NGINX Plus application delivery platform has the features, performance, and support of much more expensive products.

When you are deploying a mission‑critical, high‑traffic site, performance becomes paramount. The proven speed and efficiency of NGINX and NGINX Plus make them ideal tools, with NGINX Plus providing even more value.

So whether you are deploying a low‑traffic site, a moderate‑traffic site, or a very high‑traffic site, NGINX and NGINX Plus can help. And they can help as your site grows, even if it becomes one of the busiest web sites in the world.

When You Deploy It

I have discussed how NGINX and NGINX Plus can be deployed anywhere, a benefit of being available as software. As new deployment scenarios have emerged over time – first virtualization, then the cloud, and most recently containers – they have all been built around software rather than hardware. NGINX and NGINX Plus could be deployed immediately as each new technology emerged.

In contrast, there’s an inevitable lag for products based on hardware appliances to be available on these new technologies, because it takes time for vendors to port the product (usually tightly integrated with its original hardware environment and often built on a proprietary operating system variant) to the new environment. Further, the products usually work with only some variations of the technology. For example, NGINX ran in VMs long before the first virtual appliances were released. The initial release usually supported just one hypervisor, and while vendors added support for more hypervisors over time, they rarely cover all of them. These virtual appliances come with other limitations as well, as discussed in What You Deploy.

The situation with the cloud was much the same. People deployed NGINX in the various cloud environments as soon as they were introduced. Only later did hardware appliance vendors adapt their virtual appliances for a small number of cloud environments, and still with the limitations of their virtual appliances. If you want to run these vendors’ products in a hypervisor or cloud they don’t support, you are out of luck, but with NGINX and NGINX Plus you make the decision on which hypervisor and cloud to use.

Now we are seeing the same thing with containers. NGINX and NGINX Plus ran in containers on day one, and using any container technology. Today, Docker is currently the most popular container technology, so we can expect that hardware appliance vendors will eventually support it, if they can. But what if you want to use rkt instead of Docker, or some other container technology as it emerges? You’ll have to wait for your hardware appliance vendor to support it, if they ever do. That’s never a problem with NGINX and NGINX Plus.

The licensing model for tools that evolved from hardware appliances can present another challenge. Based on their history selling static appliances, vendors usually require a license key for each instance of the software as well. This becomes a problem when you want to quickly spin up an instance in a VM or a container. Vendors are attempting to address this issue, but NGINX Plus has no such limitations.

Who knows what the next big thing will be? Whatever it is, I predict that it will be software based, and that NGINX and NGINX Plus will be among the first applications available. You won’t have to look for a new tool; you can rely on what you know and what works. You can’t predict the future but you can do your best to use tools that are most likely able to be adapted to the new technologies as they emerge.

So NGINX and NGINX Plus are ready now to help you with your current infrastructure, no matter what it is, and also positioned well for your future infrastructure, whatever that turns out to be – perhaps a container‑based microservices environment, or something that hasn’t been invented yet.

Conclusion

I hope that you understand why I titled this blog post “NGINX and NGINX Plus Everywhere”. A bit of poetic license perhaps, but not too much. You really can deploy NGINX and NGINX Plus anywhere you want, in any form factor, however you want, across more layers of the application stack than any other tool, while being able to address your needs now and in the future. Whether you are replacing your hardware load balancers, migrating to the public cloud, building a private cloud, moving to containers, or all of the above, NGINX and NGINX Plus can help make your deployments successful.

Give NGINX or NGINX Plus a try. You can get a free trial of NGINX Plus to test it for yourself or you can download the NGINX open source software.

Retrieved by Nick Shadrin from nginx.com website.