grpc 和 express server 运行 可以通过同一个 nodejs 服务器,或者 grpc 必须是不同的服务器
Can grpc and express server run by same nodejs server, or grpc has to be different server
我正在尝试创建一个基于 Node/Express 的 REST 服务器。如何在同一个 REST 服务器中添加 GRPC 服务器,或者它必须是完全不同的 NodeJS 服务器,它将仅托管 GRPC 服务器。
您不能将 gRPC 服务器添加到 Express 服务器。您可以 运行 gRPC 服务器与 Express 服务器在同一进程中,但它们将在不同的端口上服务,并且 运行 独立。
这就是我所做的,基本上是在 express
的 listen
回调中触发 GRPC 服务器启动
import express from "express";
import { Server, ServerCredentials } from "grpc";
const server = new Server();
server.bind('0.0.0.0:50051', ServerCredentials.createInsecure());
const router = express.Router();
express()
.use("/", router)
.listen(3000, () => {
server.start();
console.log("listening");
});
我正在尝试创建一个基于 Node/Express 的 REST 服务器。如何在同一个 REST 服务器中添加 GRPC 服务器,或者它必须是完全不同的 NodeJS 服务器,它将仅托管 GRPC 服务器。
您不能将 gRPC 服务器添加到 Express 服务器。您可以 运行 gRPC 服务器与 Express 服务器在同一进程中,但它们将在不同的端口上服务,并且 运行 独立。
这就是我所做的,基本上是在 express
的listen
回调中触发 GRPC 服务器启动
import express from "express";
import { Server, ServerCredentials } from "grpc";
const server = new Server();
server.bind('0.0.0.0:50051', ServerCredentials.createInsecure());
const router = express.Router();
express()
.use("/", router)
.listen(3000, () => {
server.start();
console.log("listening");
});