Comparison of server-side JavaScript solutions
This is a list of server-side JavaScript solutions.
Server-side JavaScript use
Project-product name | JavaScript engine | Server platform(s) | Comments |
---|---|---|---|
MongoDB | V8 | 10gen application server | Used SpiderMonkey before version 2.4,[1] current version 3.2 uses SpiderMonkey |
ArangoDB | V8 | "ArangoDB - Using JavaScript in the database" (SlideShare) | |
Alfresco | Rhino | Any Java servlet container and standalone. | Has JavaScript API that allows webscripts to create, access, delete, and manipulate data in the main Alfresco repository |
Apache Sling | Rhino | Any Java servlet container and standalone | Generic Java web application framework that allows to use any script language via the standard Java Script Engine interface; Sling is RESTful by design and sits on top of a Java Content Repository, giving scripts full access to the JCR |
APE | SpiderMonkey | Standalone HTTP | Used to write custom server modules (manage message queue, users, channels, sockets, HTTP, ...). |
AppJet | Rhino (modified) | Also provides hosting in a virtual machine | |
Aptana Jaxer | SpiderMonkey | Apache HTTP Server | A community open source Ajax-server based on the Mozilla browser (DOM + JavaScript engine). HTML, JavaScript, and CSS are native to Jaxer, as are XMLHttpRequests, JSON, DOM scripting, etc. It offers access to databases, files, and networking, as well as logging, process management, scalability, security, integration APIs, and extensibility. Not developed anymore by Aptana. |
ASP | JScript | IIS | |
CouchDB | SpiderMonkey | Standalone HTTP | Used in MapReduce and update validation functions as well as to transform JSON documents and view results into HTML or other content-types. |
Eclipse e4 | Rhino | Equinox OSGi, bundled with Jetty, any servlet container (using the servlet bridge) | Extensions can be written in JavaScript, not just Java, especially servlets using the OSGi HTTP Service. Frontends can be developed with Eclipse RAP using the SWT and JFace APIs, or any other UI framework. Focus is on modularity (plug-ins), extensibility, scalability. |
EditMe | Rhino | Hosted (Tomcat) | Wiki with embedded JavaScript engine and API for application development within the wiki |
GLUEscript | SpiderMonkey | Apache HTTP Server, FastCGI and stand-alone | Glueing Libraries Using Ecmascript (GLUE) ports sqlite, mysql, memcached, wxWidgets, POCO, ... to JavaScript. GLUEscript is the successor of wxJavaScript.[2] |
Google Apps Script | Rhino (com.google.apps.maestro.rhino) | Google AppEngine | Implement Enterprise Workflows with Apps Script. Google Apps Script can be embedded in Google Sites giving your Google Site a backend. In addition, you can automate simple tasks across Google Products. Google Apps Script also allows interaction with non Google APIs and JDBC calls to databases. |
GromJS | SpiderMonkey | Bauk | GromJS is a Server Side JavaScript (SSJS) interpreter which provides the ability to use an enhanced version of the JavaScript language on a web server with similar functionality to PHP, CGI, ASP, mod_perl or any other server side scripting solution.[3] |
Helma | Rhino | Jetty HTTP Server | Complete package with web server and framework. |
IBM Domino | IBM Domino | IBM Domino (web server) | as part of the xPages framework since version 8.5 (2009) |
io.js | V8 | Standalone | Originally based on Node.js[4] |
JSSP | Rhino | Any Java servlet container | Contains a modified Rhino version for embedded SQL support |
jaggery.js | Rhino | WSO2 Application Server | Jaggery is a framework to write webapps and HTTP-focused web services for all aspects of the application: front-end, communication, Server-side logic and persistence in pure Javascript. |
MynaJS | Rhino | Any Java servlet container | |
Narwhal | Rhino, SpiderMonkey, V8[5] | Standalone | |
Node.js | V8, SpiderMonkey[6] | Standalone | JavaScript asynchronous, event-based I/O. Influenced by systems like Ruby's Event Machine, Perl's POE or Python's Twisted. Plenty of modules available. |
Opera | Futhark | Opera Unite | JavaScript is the server-side language used to develop services for the Opera Unite feature of the Opera browser. This is a server built into the browser. The JavaScript API includes local file access to a virtual sandboxed file-system and persistent storage via persistent global variables. |
Prudence | Rhino or Nashorn | JVM | Prudence bills itself as "a comprehensive platform for REST services, such as web pages and RESTful APIs" and scales with automatic clustering. In addition to JavaScript, it supports Python, Ruby, PHP, Lua, Groovy, and Clojure. It differs from node.js in that it is multi-threaded, built for the JVM, and makes use of integrated caching.[7] |
SilkJS | V8 | Standalone | JavaScript Synchronous, CommonJS, JST (JSP-like template)/Markdown templating, easily extended with C++/Javascript Linux/OSX compatible. Pre-fork Http Server, Modules: MySQL, ORM, memcached, redis, SQLite3, Oracle, ncurses, GD2, cURL, SSH, FTP/SFTP, GitHub, builtin - LESS compiler and CoffeeScript compiler.
"SilkJS enables JavaScript as a scripting language in the server environment. You can think of SilkJS as a command shell, along the lines of Perl or PHP, except the language you write in is JavaScript."[8] |
TeaJS | V8 | Apache HTTP Server, FastCGI | Formerly known as v8cgi. |
WakandaDB | WebKit JavaScriptCore | Standalone | JavaScript Synchronous multi-threaded web server and no-sql database, supporting the CommonJS module specification, written in C++. |
Whitebeam | SpiderMonkey | Apache HTTP Server or standalone | JavaScript and XML application development environment with bindings to PostgreSQL, Curl, libGD, Email and others. Most often used as an Apache module. Can also run a Whitebeam Shell for batch/background processes. |
SAP HANA XS Engine | V8 (SpiderMonkey before SPS11) | SAP HANA XS Engine | SAP in-memory database server side engine, which allows direct access SAP HANA database from Javascript applications. XS Engine has web-server functionality and can generate webpages directly, eliminating the application tier. |
JXcore | V8, SpiderMonkey | Standalone | A Node.js fork targeting mobile devices and IoTs |
ChakraCore | Chakra | Standalone or as JS engine in Node.js[9] | JavaScript engine originally developed by Microsoft for use in its Edge browser. Released source under MIT License in January 2016.[10] |
Other common server-side programming languages are JavaServer Pages (JSP), Active Server Pages (ASP), Perl, PHP, Python, Ruby, ColdFusion, and others.
See also
References
- ↑ , Release Notes for MongoDB 2.4
- ↑ GLUEscript, By Franky Braem
- ↑ GromJS, By Mark Constable
- ↑ Joyent, io.js, Node.js Foundation and Version 4. Retrieved 2015-12-25.
- ↑
- ↑ , JXcore
- ↑ "How is Prudence different from Node.js?".
- ↑ SilkJS, By Michael Schwartz
- ↑ "Microsoft ChakraCore Roadmap".
- ↑ "ChakraCore Now Open".
External links
- The Server-Side JavaScript Google Group dedicated to creating cross-platform SSJS standard APIs.
- Mozilla JavaScript shells especially section "Standalone JavaScript shells"
This article is issued from Wikipedia - version of the 10/16/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.