rulego
Сообществоот rulego
⛓️RuleGo is a lightweight, high-performance, embedded, next-generation component orchestration rule engine framework for Go.
Установка
go getОписание
# RuleGo [](https://pkg.go.dev/github.com/rulego/rulego) [](https://goreportcard.com/report/github.com/rulego/rulego) [](https://codecov.io/gh/rulego/rulego) [](https://github.com/rulego/rulego/actions/workflows/test.yml) [](https://github.com/rulego/rulego/actions/workflows/build.yml) [](https://github.com/rulego/rulego/actions/workflows/build.yml) [](https://qm.qq.com/q/8RDaYcOry8) [](https://github.com/avelino/awesome-go?tab=readme-ov-file#iot-internet-of-things) English| [简体中文](README_ZH.md) [Official Website](https://rulego.cc) | [Docs](https://rulego.cc/en/pages/0f6af2/) | [Contribution Guide](CONTRIBUTION.md) <img src="doc/imgs/logo.png" alt="logo" width="100"/> `RuleGo` is a lightweight, high-performance, embedded, orchestrable component-based rule engine built on the Go language. It can help you quickly build loosely coupled and flexible systems that can respond and adjust to changes in business requirements in real time. `RuleGo` also provides a large number of reusable components that support the aggregation, filtering, distribution, transformation, enrichment, and execution of various actions on data, and can also interact and integrate with various protocols and systems. It has a wide range of application potential in low-code, business code orchestration, data integration, workflows, large model intelligent agents, edge computing, automation, IoT, and other scenarios. ## Features * **Lightweight:** No external middleware dependencies, efficient data processing and linkage on low-cost devices, suitable for IoT edge computing. * **High Performance:** Thanks to Go's high-performance characteristics, RuleGo also employs technologies such as coroutine pools and object pools. * **Dual Mode:** Embedded and Standalone Deployment modes. Supports embedding `RuleGo` into existing applications. It can also be deployed independently as middleware, providing rule engine and orchestration services. * **Componentized:** All business logic is component-based, allowing flexible configuration and reuse. * **Rule Chains:** Flexibly combine and reuse different components to achieve highly customized and scalable business processes. * **Workflow Orchestration:** Supports dynamic orchestration of rule chain components, replacing or adding business logic without restarting the application. * **Easy Extension:** Provides rich and flexible extension interfaces, making it easy to implement custom components or introduce third-party components. * **Dynamic Loading:** Supports dynamic loading of components and extensions through Go plugins. * **Nested Rule Chains:** Supports nesting of sub-rule chains to reuse processes. * **Built-in Components:** Includes a large number of components such as `Message Type Switch`, `JavaScript Switch`, `JavaScript Filter`, `JavaScript Transformer`, `HTTP Push`, `MQTT Push`, `Send Email`, `Log Recording`, etc. Other components can be extended as needed. * **Context Isolation Mechanism:** Reliable context isolation mechanism, no need to worry about data streaming in high concurrency situations. * **AOP Mechanism:** Allows adding extra behavior to the execution of rule chains or directly replacing the original logic of rule chains or nodes without modifying their original logic. * **Data Integration:** Allows dynamic configuration of Endpoints, such as `HTTP Endpoint`, `MQTT Endpoint`, `TCP/UDP Endpoint`, `UDP Endpoint`, `Kafka Endpoint`, `Schedule Endpoint`, etc. ## Use Cases `RuleGo` is an orchestrable rule engine that excels at decoupling your systems. - If your system's business is complex and the code is bloated - If your business scenarios are highly customized or frequently changing - If your system needs to interface with a large number of third-party applications or protocols - Or if you need an end-to-end IoT solution - Or if you need centralized processing of heterogeneous system data - Or if you want to try hot deployment in the Go language... Then the RuleGo framework will be a very good solution. #### Typical Use Cases * **Edge Computing:** Deploy RuleGo on edge servers to preprocess data, filter, aggregate, or compute before reporting to the cloud. Data processing rules and distribution rules can be dynamically configured and modified through rule chains without restarting the system. * **IoT:** Collect device data reports, make rule judgments through rule chains, and trig
Отзывы (0)
Пока нет отзывов. Будьте первым!
Статистика
Информация
Технологии
Похожие серверы
GitHub MCP
Полная интеграция с GitHub API: репозитории, issues, pull requests, actions и многое другое.
Filesystem MCP
Безопасный доступ к файловой системе для чтения, записи и управления файлами с настраиваемыми разрешениями.
Context7 MCP
Доступ к актуальной документации библиотек и фреймворков.
Serena MCP
Мощный MCP сервер для семантической навигации по коду и рефакторинга.