Wolfram Language Server Deployment Options
Wolfram Cloud
A Wolfram-hosted public cloud providing a full notebook interface, APIs and forms via the web
For anyone who wants a fully hosted and complete Wolfram Language environment: zero installation and maintenance, automatic web interface updates, performance and quality improvements and the latest Wolfram Language features
Services
Notebook sessions, expression evaluation, instant APIs, web forms, scheduled tasks, embeddable notebooks
Deployment
Wolfram-hosted cloud infrastructure
Delivery mechanism
Software as a service (SaaS)
Users
Managed user accounts via the Wolfram ID system
Permissions
Full access control over individual cloud objects (read/write/execute/...)
Licensing
Free and paid plans (monthly and annual)
Hosting
Wolfram-owned geographically distributed computation clusters
Typical clients
Web browsers; Wolfram Client Libraries; Wolfram Desktop and mobile applications; any HTTP-capable program
Restrictions
Memory and computation time limits depending on subscription plans. Computations run in a sandboxed environment, with certain operations restricted.
Wolfram Enterprise Private Cloud
A self-hosted private cloud providing a full notebook interface, APIs and forms on your intranet
For organizations who want to host and maintain a full Wolfram Cloud on their own hardware. It provides additional privacy, security and computational benefits over the public cloud. You can also tighten or relax certain security restrictions and computation limits that are in place in the public cloud.
Services
Notebook sessions, expression evaluation, instant APIs, web forms, scheduled tasks, embeddable notebooks
Deployment
Self-hosted cloud infrastructure
Delivery mechanism
Virtual machine image file
Users
Supply your own user management (e.g. Keycloak)
Permissions
Full access control over individual cloud objects (read/write/execute/...)
Licensing
Hosting
On your own servers
Typical clients
Web browsers; Wolfram Client Libraries; Wolfram Desktop and mobile applications; any HTTP-capable program
Restrictions
Fine-grained control on limits, or none. Configured by the Enterprise Private Cloud administrator.
Wolfram Application Server
A self-hosted, highly scalable web server dedicated to serving Wolfram Language APIs, forms and web applications
For organizations who want to deploy Wolfram Language–based APIs and forms or build their own Wolfram Language–backed web applications, without the full capabilities of the Wolfram Cloud (such as the notebook interface and user accounts)
Services
Instant APIs, web forms and Java Server Pages (JSP) with dynamic Wolfram Language content
Deployment
Kubernetes infrastructure with support for self-hosting, AWS and Azure
Users
No user accounts
Permissions
No restrictions
Licensing
Hosting
On your own servers or hosting services like AWS or Azure
Typical clients
Web browsers; Wolfram Client Libraries; Wolfram Desktop and mobile applications; any HTTP-capable program
Wolfram Web Engine [coming soon]
A self-hosted, standards-based web server dedicated to serving Wolfram Language APIs, forms and legacy web applications.
For organizations who want to deploy Wolfram Language–based APIs and forms or build their own Wolfram Language–backed web applications, without the full capabilities of the Wolfram Cloud (such as the notebook interface and user accounts), and have predictable traffic
Services
Instant APIs, web forms and Java Server Pages (JSP) with dynamic Wolfram Language content
Deployment
Any Java servlet environment or Docker
Users
Authentication is supported through Tomcat security constraints and realms
Permissions
No restrictions
Licensing
Hosting
On your own servers or hosting services like AWS or Azure
Typical clients
Web browsers; Wolfram Client Libraries; Wolfram Desktop and mobile applications; any HTTP-capable program
Wolfram Web Engine for Python
A standalone Python-based web server configured to serve Wolfram Language–based APIs and forms. Integrates with Django and aiohttp-based server solutions.
For those who want a lightweight Wolfram Language server solution that is open source and user extensible
Wolfram Engine connected to a Python web server framework (suitable for use by Python server developers to include the Wolfram Engine in their development stack)
Services
Instant APIs, web forms, ...
Deployment
Single machine, with multiple Wolfram Engine kernels
Licensing
Free for pre-production software development. Contact us for commercial options.
Hosting
On your own servers
Typical clients
Web browsers; Wolfram Client Libraries; Wolfram Desktop and mobile applications; any HTTP-capable program
Wolfram Language Runtime for AWS Lambda [experimental]
A container image runtime for AWS Lambda based on the Wolfram Engine Docker image. Integrates with Amazon API Gateway for serving Wolfram Language–based APIs and forms.
For those who want to write serverless Lambda functions using the Wolfram Language, or who want to deploy Wolfram Language–based web APIs and forms using AWS Lambda and Amazon API Gateway
Services
Wolfram Language functions. When using API Gateway: instant APIs, web forms, other HTTP-based applications.
Deployment
AWS console, AWS CLI, AWS Serverless Application Model tools
Users
Access control via AWS IAM or API Gateway
Licensing
Wolfram Engine on-demand licensing; contact us for other options
Hosting
Amazon Web Services global cloud
Typical clients
Other Lambda functions and AWS-based applications, AWS SDKs, Wolfram Language AWS service connection. When using API Gateway: web browsers, any HTTP-capable program.
WSTPServer
A standalone program that manages a long-lived pool of Wolfram Engines and makes them available to WSTP-capable programs
For people who want to connect and reconnect to long-lived pre-initialized Wolfram Engines
Persistent Wolfram Engine communicating via WSTP (Wolfram Symbolic Transfer Protocol)
Protocols
WSTP (any port)
Services
Wolfram Language expression evaluation, connections to notebook interfaces
Deployment
Command-line program; daemon
Typical clients
WolframScript; Wolfram Notebook front end; Wolfram Client Libraries; parallel kernel computations