Microsoft's Azure Application Gateway is a platform-managed, scalable, and highly available application delivery controller as a service with integrated web application firewall.
N/A
NGINX
Score 9.1 out of 10
Enterprise companies (1,001+ employees)
NGINX, a business unit of F5 Networks, powers over 65% of the world's busiest websites and web applications. NGINX started out as an open source web server and reverse proxy, built to be faster and more efficient than Apache. Over the years, NGINX has built a suite of infrastructure software products o tackle some of the biggest challenges in managing high-transaction applications. NGINX offers a suite of products to form the core of what organizations need to create…
Azure Application Gateway provides seamless integration with azure services and platforms like azure load balancer, azure monitor, also it offer advanced load balancing capabilities and build in WAF Functionality.
Other load balancing tools in Azure (Azure LB and Azure Traffic Manager) are limited in their functionality in comparison with the Azure Application Gateway, and also, they don't provide security features. Azure Firewall, although it has security features, is more expensive, …
HAProxy is an excellent load balancer that can also be used in cloud environments (and we do!), and is relied by hyper-large enterprises globally as well. However, HAProxy is a little bit more rudimentary in feature space, it does the core job well and securely, but doesn't …
Azure Application Gateway gives you application-level routing and load-balancing services that let you build a scalable and highly-available web front end in Azure.
All of those are paid solutions with very good features, but they also offer dedicated scenarios for web application hosting. If you run applications on on-premises web servers and don't have a Microsoft licence agreement, Nginx is a very good and reliable option, based on …
In our organization, we use different solutions depending on if the database is on premise or in the cloud. We went from multiple solutions across different departments towards a more consolidated model to achieve standardization and economies of scale. We’ve mainly moved …
How does it compare? We use Apache ATP server and we also use Tom Cat also owned by Apache, but both Apache, ATP, and MKA. They are relatively older than GX and so they're one problem for Apache and MKA they need more power, more memory, and more space.
NGINX have higher market share which obviously show to us it is the preferred choice of most of the customers. Both of platform competes in the Web and Application server areas, but due the security features of NGINX be more flexible this in my opinion makes more sense.
Apache is a market leader but NGINX is new and has new features. Lightweight and can handle static requests. We use EC2 and I believe NGINX is more suited when it comes to scalability.
The best practice for a cloud environment is to use the tools provided by the cloud provider. That's why for Azure cloud, Azure Application Gateway is the most cost-effective solution that you can use. You can use a single Azure Application Gateway instance for load balancing WAF, URL-based routing, and more.
[NGINX] is very well suited for high performance. I have seen it used on servers with 1k current connections with no issues. Despite seeing it used in many environments I've never seen software developers use it over apache, express, IIS in local dev environments so it may be more difficult to setup. I've also seen it used to load balance again without issues.
Uploading images by multiple end-users from several applications like web, mobile, etc.
When there is a high volume of data requests, it helps to queue them based on the type of request. So it's easy to serve and reduce the loading time from the application layer.
An application gateway is useful when it can identify the type of details the user is requesting.
Straight-forward configuration format that users of all skill levels can learn, and yet is powerful enough for the huge breadth of features that Nginx provides.
Massive scale right out the box. We've never had a Nginx instance overwhelmed by requests, and if we did it would be trivial to spin up more Nginx instances to handle the load.
SSL termination means that we can deliver content over HTTPS without needing our individual services to require TLS support. This saves us a lot of time and headache while keeping us secure.
Nginx is open-source and free, meaning that anyone can use it to power their services, from individual projects to billion-dollar websites.
Customer support can be strangely condescending, perhaps it's a language issue?
I find it a little weird how the release versions used for Nginx+ aren't the same as for open source version. It can be very confusing to determine the cross-compatibility of modules, etc., because of this.
It seems like some (most?) modules on their own site are ancient and no longer supported, so their documentation in this area needs work.
It's difficult to navigate between nginx.com commercial site and customer support. They need to be integrated together.
I'd love to see more work done on nginx+ monitoring without requiring logging every request. I understand that many statistics can only be derived from logs, but plenty should work without that. Logging is not an option in many environments.
Most of the Application Gateway's features and services can be managed and re-configured via either the Azure Portal GUI or via the Azure Cloud Shell, thus allowing both CLI modes, i.e. Azure CLI (Bash) and Azure Powershell. The v2 version of Application Gateway has significantly improved performance during initial configuration or during re-configuration changes, thus making it much more usable for IT admins, as compared to v1.
This tool is really easy to use and configure. Consumes very less system resources. It is highly modular and configurable. You can easily use it with other tools like certbot for SSLs. You can configure basic security with configuration and headers
Community support is great, and they've also had a presence at conferences. Overall, there is no shortage of documentation and community support. We're currently using it to serve up some WordPress sites, and configuring NGINX for this purpose is well documented.
HAProxy is an excellent load balancer that can also be used in cloud environments (and we do!), and is relied by hyper-large enterprises globally as well. However, HAProxy is a little bit more rudimentary in feature space, it does the core job well and securely, but doesn't provide any fancy additional features. Also, it takes more effort to deploy HAProxy than simply using an in-built feature in the Azure stack.
All of those are paid solutions with very good features, but they also offer dedicated scenarios for web application hosting. If you run applications on on-premises web servers and don't have a Microsoft licence agreement, Nginx is a very good and reliable option, based on Linux distributions and available as freeware.
Our websites are noticeably faster, causing an increase in customer satisfaction.
Nginx has such a low memory/resource footprint that we save money from not needing multiple large, expensive servers.
Ability to load balance traffic, have server-redundancy, and have high-availability allows for 100% uptime and provides cost-effective solutions to alternatives that can cost a lot.