Extra Scaling is when CodeScaling does something slightly different. In this case, we talked to NGINX Inc, the company behind the NGINX web server and reverse proxy, who recently announced they were rolling out a commercial subscription support service, NGINX Plus, which also included a number of commercially licensed, closed source modules. This, as is the way of these things, caused some controversy and consternation in the FOSS community. The devil of these things is always in the details, so we got in touch with NGINX Inc’s CEO and team to get some answers from them on those details. The answers are presented here for your edification…
Codescaling: NGINX Plus has what appears to be a proprietary shell in terms of added features for deployment and management. This leads to accusations of the “open core” approach being used to lock in customers, so…
NGINX: We’re fully committed to growing and developing the open source product – that’s the key strength of NGINX. At the same time we’re confident in our ability to serve both free open source customers and commercial customers in parallel.
It is important to note that most of our customers don’t want to be locked into software, and they want choice. NGINX Plus is exactly about choice. With NGINX Plus there are several supported product options:
- NGINX Plus with advanced modules that provide greater functionality (standard or premium support available)
- NGINX Plus using our current NGINX OSS (standard or premium support available)
Customers using either standard distribution or the one with advanced functionality can be 100% sure the quality standards and the code base is the same. The decision to use the advanced modules is 100% with the customer.
CS: What licence does apply to the added features of NGINX Plus? Does a customer get access to the source while a customer?
NGINX: We provide a dual license: BSD for the NGINX open source code, commercial license for advanced modules. For our commercial offering, we provide a combination of open source NGINX together with additional advanced modules (shipped as a single binary). We do not provide the source code access for these additional advanced modules.
CS: Will features be migrated from the NGINX Plus set to NGINX itself in the future?
NGINX: We plan to continue to innovate both products in parallel. The advanced features in NGINX Plus are primarily targeted at problems like ADC replacement, load balancing, edge caching, streamlined management, and security. Our users always have a choice to either implement additional functionality and build customised solutions themselves, or introduce our certified commercial offerings as part of their web architecture. We obviously appreciate both approaches but want to help companies who don’t have either time or budgets to create and maintain DIY-style solutions in their production environments.
Features that are more generally applicable and related to the web server side of NGINX will continue to be in the OSS stream, and we’ll always continue to add more. Some examples of include SPDY and WebSocket modules, and the request authentication module that was released in August.
However, it is early and we’re listening to our customers and to NGINX users like we always did. We aren’t going to make decisions in a vacuum and will be listening to the needs of customers and users to determine where future enhancements will appear.
It is reasonable to assume that proprietary features will make their way into the open source product, and as we cross that bridge further down the road, we’ll have a very clear strategy to share.
CS: What rules will define where future enhancements appear, in NGINX or NGINX Plus?
NGINX: We’ll base our development of future enhancements on the existing use cases. Our open source community largely deploys NGINX as a web server in front of PHP, Python, Java and other application containers. Our enterprise/commercial customers use NGINX for a number of other scenarios, e.g. replacing a hardware ADC with NGINX in a cloud environment, load balancing, edge caching, security, automated provisioning, management and monitoring — avoiding chained, DIY-style solutions.
We will continue the same development as we’ve always done on the OSS side, and continue to address the cases enterprises are facing. We won’t close-source or remove existing open source features.
CS: What drove the decision to choose this model for business?
NGINX: This was the model requested by our customers. They asked for support but also wanted advanced features. They were clear that if they could get these advanced features in a supported build from Nginx Inc then this would be of value and they would be happy to purchase a subscription.
CS: Can instances of NGINX and NGINX Plus be mixed on a site?
NGINX: Yes. Moreover, NGINX Plus provides support for both NGINX and NGINX Plus code. As long as the customer has active subscriptions, we are able to support both.