Home

unitd

Unitd is the core daemon of NGINX Unit, a dynamic application server designed to run web applications and services in multiple programming languages under a single process model. The unitd process manages worker processes, loads language runtimes as modules, and coordinates communication between listening sockets, application code, and the administrative API. It is designed to support on-the-fly reconfiguration, allowing changes to the deployed applications and routes without restarting the daemon.

Configuration is defined and modified via a RESTful API exposed by unitd or via the unitctl CLI

Runtimes: Unit supports multiple languages through dedicated runtimes such as Node.js, Python, PHP, Ruby, Perl, and

Deployment and usage: After installing, unitd runs as a background service. Admin actions are performed via

History and development: Created by NGINX, Unit was developed to provide a flexible, multi-language application server

tool.
Configurations
describe
listening
sockets,
routing
rules,
and
one
or
more
applications,
each
with
a
type
(language
runtime),
a
path
to
the
application
code,
and
optional
runtime
settings.
The
system
is
designed
to
isolate
applications
for
security
and
resource
control.
Go.
Applications
can
be
added,
updated,
or
removed
at
runtime.
unitctl
or
HTTP
REST
calls
to
the
admin
interface;
unitd
can
be
configured
to
run
behind
a
web
server
or
directly
handle
traffic
depending
on
configuration.
The
design
emphasizes
easy
hot
reconfiguration
and
small
memory
footprint.
with
dynamic
reloading
and
centralized
management,
aiming
to
simplify
deploying
and
updating
modern
web
applications.