首页 > 解决方案 > 通过 NATS 服务器将分子服务连接到 nestjs 网关

问题描述

我正在尝试创建我的第一个微服务服务器端应用程序。我通过 Nestjs(一个简单的 CRUD API)创建了一个网关,然后使用以下命令创建了一个新服务:

moleculer init nano my-project

此服务将传入数据保存到本地 MongoDB

然后我创建了 4 个操作来在本地 MongoDB 中保存传入数据

之后我通过 snap 存储(Linux ubuntu)安装 nats:

sudo snap install nats

现在网关和服务应该通过 NATS 本地服务器相互通信。NATS 文档让我感到困惑,因为有基于主题的消息传递和发布-订阅或请求-回复,我不知道应该使用哪个以及如何在我的 Nestjs 网关中实现这些连接

我想从 Nestjs 网关调用分子动作

这是在 Nestjs 上安装的包:

"dependencies": {
"@nestjs/common": "^8.0.0",
"@nestjs/core": "^8.0.0",
"@nestjs/platform-express": "^8.0.0",
"class-transformer": "^0.4.0",
"class-validator": "^0.13.1",
"nats": "^2.2.0",
"nestjs-moleculer": "^1.0.5",
"reflect-metadata": "^0.1.13",
"rimraf": "^3.0.2",
"rxjs": "^7.2.0"
 }

标签: microservicesnestjsnats.iomoleculer

解决方案


Molecler 和 Nestjs 有不同的协议,因此它们不能直接相互通信。不妨试试这个模块:https ://github.com/jiangzhuo/nestjs-moleculer#readme


推荐阅读