简介

Rockerjs是微店提出的一套Node.js全栈化一体式解决方案,它由三层构成:

底层由一个提供IoC容器、实现AOP特性和基于注解的异常捕获核心库 @rockerjs/core

上层则是基于@rockerjs/core构建的MVC框架和中间件,它涵盖了HTTP服务、SPI(Service Provider Interface)、认证、数据访问、消息、缓存、RPC和WebSocket,满足不同场景需求;

通过业务日志、容器日志和调用追踪实现中间链路追溯和容器监控,Rockerjs通过自带的APM系统保证应用健康运行。

快速上手

Rockerjs-cli是为Rockerjs量身打造的命令行工具,可以用来创建应用模板,启动和管理nodejs进程,同时也集成查看日志、开发模式下的动态编译config配置。

安装

$ npm i @rockerjs/cli -g

使用方法

1.创建应用模板

r init demo

2.进入应用目录,安装依赖

cd ./demo
npm i

3.启动应用进程

r start index.js
@rockerjs/cli 文档

运行原理

Rockerjs生态基于 Rockerjs-core之上生长,通过DI(Dependency Injection)实现代码解耦和依赖解耦,在构建复杂应用时保证可扩展性与灵活性,而这一切是由Rockerjs-core提供的IoC容器来完成。通过Rockerjs-core提供的容器接口,可自定义实例化业务类的工厂方法,也可采用默认工厂,通过 @Inject注解便可采用属性注入的方式添加到目标对象中。

特性

  • 无需关心业务类的实例化,简化依赖关系
  • AOP编程,代码解耦
  • 整套Web服务解决方案,贯穿开发、运行、调试与监控等各环节
  • 天然支持Java生态,零成本开发异构系统
  • Java开发人员极易上手,相近Spring开发体验