Nginx boosts devops with custom JavaScript

Nginx launches NginScript for configuring its Web server

Nginx is introducing a version of JavaScript that will be used to configure the Nginx Web server -- a move seen by analysts as improving the server's standing in devops.

Nginx will release today a preview of the technology, called NginScript. Through NginScript, users can customize how applications are published and put in place sophisticated rules, said Owen Garrett, Nginx head of products. But NginScript takes a backseat at the moment to the Lua scripting language, currently used with Nginx, in terms of sophistication.

Analysts see NginScript enabling a new alignment between Nginx and devops. “This will be helpful in devops shops and in situations where the developers need to deploy load-balancing but don't want to wait for the network team to provision it,” analyst Brad Casemore, of IDC, said in an email. “I suppose it also aligns with the infrastructure-as-code theme.”

Another analyst cited the popularity of JavaScript as a boost for Nginx, saying it could mean broader adoption for the server. “Finding developers/admins that are fluent in Lua is a bit of a challenge,” said Michael Facemire of Forrester Research. “JavaScript, on the other hand, is the seventh-most popular programming language on the planet, which opens Nginx up to a broader market of users, as well as integrating it into other platforms -- for example, devops -- that support JavaScript.”

“The reason we picked JavaScript is because it’s very familiar and easy for our users to use,” Garrett said. The company had to build a custom version for use inside Nginx. “We couldn’t use an off-the-shelf JavaScript engine.” Those engines are built to run inside browsers rather than for dealing with large numbers of connections and very high degrees of concurrency, he said. Nginx servers could be handling tens of thousands of connections. The open source NginScript works both with open source Nginx and the enterprise-level Nginx Plus platform.

Nginx founder Igor Sysoev had cited JavaScript ambitions for the server in an interview with InfoWorld last fall. Previous options for configuring Nginx have included Nginx’s own configuration language, which is not as flexible as JavaScript, or Lua, a third-party module. Nginx plans to have NginScript complement Lua, Garrett said, though Lua currently is more mature than NginScript. “NginScript is an an early alpha, so it doesn’t have the wide range of features yet that Lua provides.” Nginx believes NginScript will likely be useful for quick fixes and rapid development while Lua would still be used for more sophisticated configurations, such as full-scale applications hosted on the Nginx server. “We’ll let our users determine what is best for them.”

A beta version of open source NginScript is planned for release late this year. General availability is anticipated early in 2016. “What we’d really like is for users to give feedback on how they use the feature and what it is missing,” Garrett said.

Nginx on Wednesday is also announcing that Nginx Plus is available on the Google Cloud Platform via Google Cloud Launcher. Nginx Plus could be used to scale applications on the cloud, Garrett said. Nginx previously has enabled deployments of its server on Microsoft’s Azure and Amazon Web Services clouds.

Copyright © 2015 IDG Communications, Inc.