MATLAB Production Server
Integrate MATLAB analytics into web, database, and enterprise applications
MATLAB Production Server™ lets you incorporate custom analytics into web, database, and production enterprise applications running on dedicated servers or in the cloud. You can create algorithms in MATLAB®, package them using MATLAB Compiler SDK™, and then deploy them to MATLAB Production Server without recoding or creating custom infrastructure. Users can then access the latest version of your analytics automatically.
MATLAB Production Server manages multiple MATLAB Runtime versions simultaneously. As a result, algorithms developed in different versions of MATLAB can be incorporated into your application. The server runs on multiprocessor and multicore computers, providing low-latency processing of concurrent work requests. You can deploy the server on additional computing nodes to scale capacity and provide redundancy.
Production Deployment of MATLAB Analytics
Deploy analytics algorithms created by domain experts directly into production IT systems without recoding in a different language. The deployed analytics can be incorporated into a wide variety of enterprise applications accessed by large audiences.
After using MATLAB to develop, test, and refine their algorithms, domain experts use MATLAB Compiler SDK to package the resulting MATLAB analytics for deployment on MATLAB Production Server without assistance from an IT team.
IT Application Developers
IT application developers integrate the deployed MATLAB analytics into enterprise applications using the included lightweight client libraries.
IT System Administrators
IT system administrators manage the operation of MATLAB Production Server within the enterprise IT ecosystem. MATLAB Production Server automatically handles the execution of multiple MATLAB algorithms/analytics, even if they require different MATLAB Runtime versions.
Scaling On-Premises or in the Cloud
MATLAB Production Server scales to handle multiple simultaneous requests through its stateless architecture.
Add processor cores and memory to a server machine to service more requests or reduce response time. Compute-intensive requests can be delegated to a MATLAB Distributed Computing Server™ cluster for processing.
Add server machines within a cluster to handle greater workloads. Client requests can be directed to any MATLAB Production Server instance in a cluster using third-party load balancing software or appliances. This approach not only increases performance, it also features a resilient and highly available system architecture.
Scale in the Cloud
Use the cloud to scale your server instances. MathWorks provides reference architectures that provision fully configured MATLAB Production Server deployments on cloud platforms such as Amazon® Web Services and Microsoft® Azure®.
Security and Encryption
MATLAB Production Server employs industry-standard encryption, authentication, and access control protocols to protect the confidentiality of your MATLAB algorithms and data.
Requests to MATLAB Production Server can be encrypted with TLS/SSL protocols. Your MATLAB code on disk is also encrypted to secure your intellectual property.
Users can be authenticated to access MATLAB Production Server using certificate-based or token-based authentication methods.
Use authentication to control access to MATLAB Production Server. With certificate-based authentication, access is granted based on the user name within the client certificate. With token-based authentication, access is granted based on group membership in the associated directory.
Client Application Access
MATLAB analytics published to MATLAB Production Server can be accessed from applications written in a variety of programming languages or via a RESTful API.
Lightweight client libraries let you call functions in MATLAB analytics deployed to MATLAB Production Server from desktop, server, or database applications developed in languages such as C#, Java®, C/C++, or Python®.
Web and Mobile Applications
Web and mobile apps that access deployed MATLAB analytics typically invoke functions via a RESTful API using JSON payloads for input and output. A service discovery API allows these apps to determine the functions that are available as well as the input and output parameters that are required.
Third-Party Visualization Applications
Visualize the results from deployed MATLAB analytics in your favorite visualization application such as Tableau®, Spotfire®, Qlik®, and Power BI®.
Incorporate data from relational databases, NoSQL databases, and messaging engines into your deployed MATLAB analytics.
MATLAB Production Server ships with REDIS, a high-speed in-memory database for storing state between function invocations. A key-value interface allows you to easily read and write data to REDIS from your MATLAB code. You can also read and write data to a wide variety of data sources supported by Database Toolbox™.
Streaming and Messaging Engines
Ingest telemetry from sensors and devices into your MATLAB analytics using connectors to streaming and messaging engines such as Azure IoT Hub, Azure Event Hubs, or Apache Kafka.
Stream asset data and time series data from operational systems such as OSIsoft® PI System™ Asset Framework to MATLAB analytics. The deployed analytics can then process the data to flag anomalies, recommend preventative maintenance, or predict the remaining useful life of assets.
Management and Monitoring
MATLAB Production Server can be managed from either a web-based administration dashboard or the operating system command line. The command-line interface supports scripting automation.
Manage server instances, applications, and server settings from an easy-to-navigate web administration dashboard.
Review key system metrics such as CPU utilization, memory utilization, and throughput in real time to assess the health of your system and take preemptive action to improve response times or avoid bottlenecks.