Main Content

Enterprise Deployment with MATLAB Production Server

Run MATLAB® code on a server and access it using various clients

MATLAB Production Server™ lets you run MATLAB functions on a server and access them via client applications. You create applications in MATLAB, package them using the Production Server Compiler app or the function in MATLAB Compiler SDK™, and deploy them to the MATLAB Production Server. Access deployed packages through client applications written in Java®, .NET, Python®, C, or C++ using client-specific libraries, or through HTTP/HTTPS requests using the RESTful API.

For information on how to write client applications using the RESTful API, Java, .NET, Python, C, and C++, see Client Programming (MATLAB Production Server).


Production Server CompilerPackage MATLAB programs for deployment to MATLAB Production Server


expand all

deploytoolOpen a list of application deployment apps an archive for deployment to MATLAB Production Server or Docker (Since R2020b) for building deployable archives (Since R2020b) Microsoft Excel add-in for MATLAB Production Server (Since R2021b) for building Excel add-ins (Since R2021b) build results object (Since R2020b)
mccCompile MATLAB functions for deployment
mps.json.encodeConvert MATLAB data to JSON text using MATLAB Production Server JSON schema
mps.json.decodeConvert a character vector or string in MATLAB Production Server JSON schema to MATLAB data
mps.json.encoderequestConvert MATLAB data in a server request to JSON text using MATLAB Production Server JSON schema
mps.json.decoderesponseConvert JSON text from a server response to MATLAB data
prodserver.metrics.incrementCounterCreate Prometheus counter metric (Since R2022a)
prodserver.metrics.setGaugeCreate Prometheus gauge metric (Since R2022a)


mps.cache.controlCreate a persistence service controller object
startStart a persistence service and attach it to a MATLAB session
stopStop a persistence service and detach it from a MATLAB session
restartRestart a persistence service and attach it to a MATLAB session
attachConnect MATLAB session to persistence service that is already running
detachDisconnect MATLAB session from persistence service that is already running
pingTest whether the persistence service is reachable
versionVersion number for persistence provider


mps.cache.connectConnect to cache, or create a cache if it doesn't exist
bytesReturn the number of bytes of storage used by value stored at each key
clearRemove all keys and values from cache
flushWrite all locally modified keys to the persistence service
getFetch values of keys from cache
getpGet the value of a public cache property
isKeyDetermine if the cache contains specified keys
keysGet all keys from cache
lengthNumber of key-value pairs in the data cache
purgeFlush all local data to the persistence service
putWrite key-value pairs to cache
removeRemove keys from cache
retainStore remote keys from cache locally or return locally stored keys


mps.sync.mutexCreate a persistence service mutex
acquireAcquire advisory lock on persistence service mutex
ownCheck ownership of advisory lock on a persistence service mutex object
releaseRelease advisory lock on persistence service mutex


expand all

mps.cache.ControllerManage the life cycle of a persistence service in a MATLAB testing environment
mps.cache.DataCacheRepresent cache concept in MATLAB code
mps.sync.TimedMATFileMutexRepresent a MAT-file persistence service mutex
mps.sync.TimedRedisMutexRepresent a Redis persistence service mutex


Deployable Archive Creation

MATLAB Programming to Support In-Memory Caching

MATLAB Programming to Support Custom Metrics

MATLAB Programming Guidelines

Client Applications


Excel Add-Ins

Parallel Computing



Excel Add-In