Nova-faas: 基于 RabbitMQ 的 Node.js 微服务框架

Nova-faas 是一个 Node.js 库,简化基于 RabbitMQ 的微服务架构的开发和扩展。它提供以下优势:

  • 配置驱动: Nova-faas 项目使用配置文件进行管理,简化了服务启动和配置过程。
  • 自动服务发现: 借助 RabbitMQ,微服务能够自动发现彼此,无需手动配置服务地址。
  • 独立测试: 框架的结构化设计促进了独立的单元测试,提高了代码质量和可维护性。
  • 按需扩展: Nova-faas 允许根据需要灵活地部署和扩展微服务,以适应不同的负载需求。

使用方法

  1. 确保本地主机上运行 RabbitMQ。
  2. 安装 Nova-faas:npm i -S nova-faas
  3. 编写主程序启动服务器。
  4. 根据项目需求配置微服务。

Nova-faas 支持使用球形模式加载指定目录下的所有微服务,并为每个服务创建相应的 RabbitMQ 队列,以处理服务间通信。

zip
nova-faas-master.zip 预估大小:38个文件
folder
nova-faas-master 文件夹
file
index.js 295B
file
package.json 2KB
folder
tasks 文件夹
file
coverage-publish.sh 33B
file
test.sh 65B
folder
test 文件夹
folder
mocks 文件夹
file
ServicebusMock.js 742B
folder
data 文件夹
folder
commands 文件夹
file
BasicNopeCommand.js 192B
folder
queries 文件夹
file
BasicNopeQuery.js 183B
folder
bad 文件夹
folder
BadName.js 文件夹
folder
unit 文件夹
file
server.test.js 2KB
file
command.test.js 1KB
file
client.test.js 2KB
folder
plugins 文件夹
file
healthcheck.test.js 1KB
file
query.test.js 1KB
folder
utils 文件夹
file
service.test.js 4KB
folder
plugins 文件夹
folder
healthcheck 文件夹
file
before.js 864B
file
after.js 340B
file
LICENSE 1KB
file
PLUGINS.md 1KB
file
.mocharc 37B
folder
examples 文件夹
folder
servers 文件夹
folder
commands 文件夹
file
index.js 337B
folder
queries 文件夹
file
index.js 336B
folder
basic 文件夹
file
index.js 403B
folder
clients 文件夹
folder
request 文件夹
file
index.js 358B
folder
healthchecks 文件夹
file
index.js 372B
folder
basic 文件夹
file
index.js 490B
file
docker-compose.yml 327B
file
.gitignore 626B
file
CHANGELOG.md 709B
folder
lib 文件夹
file
Server.js 3KB
file
Query.js 401B
file
Client.js 3KB
file
Command.js 407B
folder
utils 文件夹
file
NovaError.js 245B
file
Service.js 1KB
folder
middlewares 文件夹
file
events.js 605B
folder
.circleci 文件夹
file
config.yml 520B
file
.npmrc 18B
file
README.md 8KB
zip 文件大小:25.14KB