nginScript is a robust implementation of much of JavaScript, including the parts most useful for configuring NGINX. Some less-used parts of JavaScript and some less relevant built-in objects are not supported.
nginScript can be used for quick fixes, making NGINX configuration more convenient and operations more efficient. But, because it runs at the application delivery level, it will also enable you to refactor your applications for greater long-term stability, security, and scale.
nginScript has two parts:
- A custom virtual machine (VM) and byte-code compiler with a very fast start-up and tear-down time. Blocking operations, such as an HTTP subrequest, can be suspended and resumed, in the same way as other blocking operations in JavaScript.
- A configuration syntax for embedding snippets of JavaScript in your NGINX configuration. These snippets are evaluated at runtime, as HTTP transactions proceed. You can create powerful conditional configurations, modify requests and responses on the fly, and adjust the internal operations of NGINX specifically for each request.
There are currently several popular JavaScript VMs out there, but they are optimized for use with browsers. The nginScript VM is focused on server requirements. We run a separate VM for each request, so there’s no need for garbage collection. And an nginScript program can be pre-empted so NGINX code can run.
What nginScript Makes Possible Continue reading to learn what