Stardust is a lightweight distributed service platform: node management, configuration center, registry and service discovery, distributed tracing and APM, log center and remote release, with automatic service registration and discovery, load balancing, dynamic scaling and failover. Application services are like dust in the universe, and the computer nodes that host them are the stars; stars and dust together form the vast starry sky, which is Stardust.
On first run, the database and tables are created automatically (SQLite by default; MySql / SqlServer / PostgreSql / Oracle / DaMeng etc. are configurable; set the connection string in *.config / appsettings.* or environment variables).
Deploy StarAgent to business nodes
cd StarAgent
# Run directly (debug)
dotnet run
# Or publish and install as a system service (example)
dotnet publish -c Release -o publish
# Windows: StarAgent.exe -install
# Linux: chmod +x StarAgent && ./StarAgent install
After configuring the StarServer address, the node will appear on the platform.
Mobile platforms are subject to system limitations: Android requires a foreground service and a battery whitelist; iOS can only be online intermittently (reporting in the foreground and when awakened by BGTask) and does not support process supervision or remote release. See NODE-StarAgent Architecture for details.
Create an application (StarWeb)
Create a new application in “Application Management” to generate an AppId / Secret
You can configure the category, project, expected port, heartbeat policy, etc.
Integrate a business application
Reference the package:
dotnet add package NewLife.Stardust.Extensions
In Program / Startup:
var builder = WebApplication.CreateBuilder(args);
// One line: connect to Stardust, inject the tracing middleware, and enable
// HttpClient / WebApi / database / Redis auto-instrumentation.
var star = builder.Services.AddStardust("OrderService");
var app = builder.Build();
// app.UseStardust(); // Optional: only when you need a custom middleware order
app.RegisterService("OrderService"); // Register with Stardust
// app.ConsumeService("UserService"); // Optional: consume other services
app.Run();
After it starts, you can see the instance online, performance metrics, and call chains in StarWeb.
Multi-language SDK Support
In addition to the .NET SDK, Stardust also provides multi-language SDK support:
SDK
Description
Documentation
JavaScript (browser)
UMD single file; login/heartbeat performance/page and API instrumentation
Run the following commands in a command line to quickly try the NewLife components:
dotnet new install NewLife.Templates
dotnet new nconsole --name test
cd test
dotnet run
Main Features
Why Stardust (7)
Advantage
What it gives you
All-in-one
Node management / configuration center / registry / service discovery / distributed tracing / APM / log center / remote release / resource monitoring, with a unified model and UI
Ultra-lightweight
The core library has no heavy third-party dependencies and runs in a single process, with automatic database and table creation
Strong compatibility
One ecosystem covers .NET Framework 4.5 through the latest .NET 10, across multiple platforms (Windows/Linux/macOS/Android/iOS/ARM/IoT)
Multi-language agents
Lightweight Go/Rust/C++ native agents can connect directly to StarServer, covering scenarios without a .NET runtime, embedded systems, and OpenWrt
High performance
Built on more than a decade of optimization in NewLife.Core & NewLife.Net, with excellent network throughput and serialization performance
Easy integration
Integrate with just a few lines of code; the same approach for ASP.NET Core / Console / Service / IoT edge
Built-in operations
StarAgent daemon + remote release + metric & log collection, greatly reducing the complexity of distributed operations
Platform Core (13)
Feature
Key Characteristics
Stardust Agent
StarAgent is deployed on every application server and, as a system service, supervises local applications and monitors node performance. It supports Windows/Linux/macOS and also provides simplified Android/iOS versions (registration heartbeat/metric/log/command subset)
Node management
Centrally manage massive numbers of StarAgents across machines, covering server nodes in data centers, remote desktop industrial PCs, and IoT edge computing nodes
Application management
Assign an access key to each application system for the configuration center, application monitoring, service registration, service discovery, etc.
Configuration center
Each application reads its own configuration from the configuration center, which facilitates multi-instance deployment and centralized management
Monitoring center
Each application (service provider and service consumer) reports performance metrics and other monitoring data to the center
Registry
Each microservice application (service provider) reports its own service information to the registry
Service discovery
Each business application (service consumer) pulls provider information for the specified service from the registry and makes distributed calls (without going through a gateway)
Remote release
Publish application packages from the Stardust console to multiple application servers or IoT edge nodes with StarAgent installed; StarAgent starts and supervises the processes
Log center
Each application (service provider and service consumer) reports log data to the center, which is viewed centrally in Stardust Web
StarAgent supports dynamic DNS (DDNS), automatically registering the node’s public IP with DNS (Alibaba Cloud/Tencent Cloud (DNSPod)/UCloud (UDNS)/AWS Route53), suitable for dynamic IP environments
.NET runtime management
StarServer automatically synchronizes official .NET release information, and StarAgent can install .NET runtime versions on demand, working with upgrade commands to enable automatic upgrades and smoke-test rollback
Pipeline
Supports creating pipelines and run/step models, automatically triggering the build and release process via webhooks, and enabling automated deployment with repository SSH keys and username/password authentication
Gateway v2.0
StarGateway has been refactored and upgraded, supporting a dynamic routing engine, load balancing, health checks, TLS termination, WebSocket proxying, and static file hosting (SPA fallback/large-file protection), with integrated APM tracing
Service platform backend (API / configuration / registry / release / metric aggregation / statistics computation). 1~N, horizontally scalable; persistence depends on a database/Redis (optional)
StarWeb
Management and visualization UI based on NewLife.Cube. 1, on the same machine as StarServer or separated
StarAgent
Installed on every node host: process supervision, remote release, and monitoring collection (CPU/memory/network/custom). N (one instance per machine); Windows service, Linux systemd, container, or background process
Stardust Core Library (SDK)
Client SDK providing configuration pull, registry discovery, call tracing, and performance & log reporting. Runs in the same process as the business application; integrated via AddStardust/UseStardust
Stardust.Extensions
ASP.NET Core extensions (AddStardust / UseStardust / RegisterService / ConsumeService). Used by business Web/API projects; exposes middleware and convenience methods for registration/discovery
Data layer (Stardust.Data)
XCode-based entities and statistics tasks
StarGateway / DeployAgent (optional)
Traffic forwarding / build and distribution support; deployed as required and can work together with service discovery
Monitoring Center (4)
Capability
Description
Application monitoring
Performance metrics reported by every application, visualized in the Stardust console
Call chain
End-to-end trace of a business call, for example an IoT platform remotely controlling a garden water pump: portal
Relationship graph
Service dependency graph built from reported traces
TraceAnonymous
The call chain page supports the TraceAnonymous property. When set, unauthenticated users are allowed to access it, which is suitable for public display or demonstration scenarios
Add Key=Value entries for the specified application in the platform’s “Configuration Center”; the client delivers them automatically
Isolation and inheritance
Per-environment / per-project configuration with template inheritance
Push updates
The client automatically long-polls/pushes updates; no restart is required
Change events
After a change, application instances receive a change event that can be used to hot-update business parameters
var star = services.AddStardust("OrderService");
var cfg = star.GetConfig();
var dbConn = cfg["Db:ConnStr"]; // Delivered automatically from the platform
Service Registration and Discovery (4)
Capability
Key Characteristics
Registration
app.RegisterService("SvcName", address: null, environment, healthUrl) reports the service instance to the registry
Address resolution
When address is not specified explicitly, an available local address is resolved automatically
Health probe
healthUrl provides a health probe for the registered service
Multiple target frameworks are published simultaneously so that older applications can migrate gradually
Public API
New fields remain backward compatible; public APIs are marked [Obsolete] before removal or change
Upgrade order
Recommended: StarServer/StarWeb → StarAgent → business SDK
FAQ (5)
Question
Answer
Must StarServer and StarWeb be deployed together?
They can run on the same machine; StarWeb provides the management UI and StarServer provides the core APIs. For small-scale deployments they can share a machine, or they can be separated for scaling.
Must the Agent be installed as a system service?
The service mode is recommended so that it recovers automatically after a crash; container mode or foreground debugging is also possible.
Are containers / K8s supported?
Yes. The Agent can run as a DaemonSet, and business Pods integrate through the SDK; StarGateway can later be combined for ingress governance.
Does configuration hot reload require restarting the application?
No. The SDK listens automatically and provides change callbacks.
How do I customize the release process?
You can extend the build script or attach a custom packaging script in the Repository, which is then executed by the platform.
Ecosystem Map
NewLife is a layered ecosystem of independently versioned open-source projects. The map below is shared verbatim by every NewLife repository; each project links to its repository and its primary NuGet package.
Installs the matching .NET runtime automatically when launched from an older host.
—
Badges show the primary package of each project; theme, extension and satellite packages are listed on their NuGet pages. The 30+ packages not listed here (FTP, LoRa, Office extensions, protocol drivers and more) are available under the NewLifeX organization and on newlifex.com.
The solution opens in Visual Studio (latest stable) and also builds from the command line with dotnet build; project files avoid complex features to stay out-of-the-box.
The strong-name certificate newlife.snk is published so you can build and replace assemblies independently.
CI: .github/workflows/test.yml builds the solution and runs the full test suite.
Release
Push a v-prefixed tag to trigger .github/workflows/publish.yml. The workflow builds 星尘.slnx, packs Stardust, Stardust.Extensions and DeployAgent, and pushes the packages to NuGet.org and GitHub Packages.
Feedback
Before submitting, make sure dotnet build and the relevant tests pass; follow the repository conventions for code style and commit messages.
Report bugs and suggestions via Issue; Stars and PRs are welcome.
Team
Founded in 2002, the NewLife team has spent more than two decades on the .NET and IoT ecosystem, maintains nearly 100 open-source projects (34 of them core to this map), and delivers integrated software and hardware solutions for power, logistics, healthcare, industrial control and internet industries. We live by the motto “learning has no seniority — mastery earns respect”.
Open-source components have been downloaded 6.48M times from NuGet (ecosystem-wide, as of 2026-10).
This project is licensed under MIT. NewLife components have been co-created by the community for more than 20 years and are released under the MIT open-source license: anyone can modify and redistribute them freely (no attribution required). Many enterprises build internal development frameworks on top of them; private customization can even be achieved by batch-replacing all NewLife strings in the source code with the company name.
Welcome to Star / Fork / Issue / PR to build a better .NET distributed infrastructure together.
NewLife.Stardust - Stardust Distributed Platform
🌐 简体中文 | 繁體中文 | Español | Deutsch | 日本語 | Français | Português | Русский | 한국어 | العربية
Stardust is a lightweight distributed service platform: node management, configuration center, registry and service discovery, distributed tracing and APM, log center and remote release, with automatic service registration and discovery, load balancing, dynamic scaling and failover. Application services are like dust in the universe, and the computer nodes that host them are the stars; stars and dust together form the vast starry sky, which is Stardust.
Demo system: http://star.newlifex.com
Contents: Quick Start · Main Features · Ecosystem Map · Documentation · Contributing · Team · License
Quick Start
Install
dotnet buildNewLife.Stardust(core);NewLife.Stardust.Extensions(ASP.NET Core extensions, brings the core package transitively)Start the platform
On first run, the database and tables are created automatically (SQLite by default; MySql / SqlServer / PostgreSql / Oracle / DaMeng etc. are configurable; set the connection string in
*.config/appsettings.*or environment variables).Deploy StarAgent to business nodes
After configuring the StarServer address, the node will appear on the platform.
Other platforms
Create an application (StarWeb)
Integrate a business application
Reference the package:
In Program / Startup:
After it starts, you can see the instance online, performance metrics, and call chains in StarWeb.
Multi-language SDK Support
In addition to the .NET SDK, Stardust also provides multi-language SDK support:
JavaScript SDK quick example:
Template scaffolding
Run the following commands in a command line to quickly try the NewLife components:
Main Features
Why Stardust (7)
Platform Core (13)
Architecture & Components (7)
Monitoring Center (4)
TraceAnonymousproperty. When set, unauthenticated users are allowed to access it, which is suitable for public display or demonstration scenariosStardust monitoring introduction: https://newlifex.com/blood/stardust_monitor
Configuration Center (4)
Service Registration and Discovery (4)
app.RegisterService("SvcName", address: null, environment, healthUrl)reports the service instance to the registryapp.ConsumeService("SvcName")automatically maintains the provider list, supporting round-robin load balancing / failure eviction;ServiceProviderResolverallows custom strategiesDistributed Tracing & Metrics (5)
Remote Release / Continuous Delivery (5)
Security & Permissions (3)
Data & Storage (3)
Performance (4)
Comparison with Common Solutions (5)
Conceptual comparison.
Upgrade & Compatibility (3)
[Obsolete]before removal or changeFAQ (5)
Ecosystem Map
NewLife is a layered ecosystem of independently versioned open-source projects. The map below is shared verbatim by every NewLife repository; each project links to its repository and its primary NuGet package.
dotnet newproject templates for console, web, API, service, data and IoT projects.Documentation
📋 Core Documents (Trilogy)
🏗️ Main Component Architecture
🔧 Submodule Documents
Contributing
Build and test
dotnet build; project files avoid complex features to stay out-of-the-box.newlife.snkis published so you can build and replace assemblies independently..github/workflows/test.ymlbuilds the solution and runs the full test suite.Release
Push a
v-prefixed tag to trigger.github/workflows/publish.yml. The workflow builds星尘.slnx, packsStardust,Stardust.ExtensionsandDeployAgent, and pushes the packages to NuGet.org and GitHub Packages.Feedback
dotnet buildand the relevant tests pass; follow the repository conventions for code style and commit messages.Team
Founded in 2002, the NewLife team has spent more than two decades on the .NET and IoT ecosystem, maintains nearly 100 open-source projects (34 of them core to this map), and delivers integrated software and hardware solutions for power, logistics, healthcare, industrial control and internet industries. We live by the motto “learning has no seniority — mastery earns respect”.
Open-source components have been downloaded 6.48M times from NuGet (ecosystem-wide, as of 2026-10).
Website: https://newlifex.com · Open source organization: https://github.com/NewLifeX
WeChat Official Account: 智能大石头 (scan to follow)
License
This project is licensed under MIT. NewLife components have been co-created by the community for more than 20 years and are released under the MIT open-source license: anyone can modify and redistribute them freely (no attribution required). Many enterprises build internal development frameworks on top of them; private customization can even be achieved by batch-replacing all
NewLifestrings in the source code with the company name.Welcome to Star / Fork / Issue / PR to build a better .NET distributed infrastructure together.