如何一次 运行 节点和 django 服务器

How to run node and django server at a time

我正在制作一个视频聊天应用程序,我将在其中使用来自 npm 的网络套接字,并且我在 server.js 文件中编写了与 WebSocket 相关的代码,如下所示

var webSocketServ = require('ws').Server;


var wss = new webSocketServ({
    port: 8000
})

var users = {};
var otherUser;
wss.on('connection', function (conn) {
    console.log("User connected");

    conn.on('message', function (message) {
        var data;
        .
        .
        .
     and so on

为了管理 URL,我使用了 Django, 所以我的问题是当我使用 python manage.py 运行 服务器时,server.js 不是 运行ning 并且应用程序没有连接到服务器,如果我 运行“node server.js”应用程序正在连接到服务器,但我无法像在 Django 代码中那样管理 URL

所以我在一个终端中打开了两个终端实例和 运行 节点,在另一个终端中打开了 python 但我知道这不是正确的方法,并且在托管时效率不高

有没有办法同时 运行 两个服务器?

如果您需要两台服务器在同一端口上 运行 显示,您需要设置一个服务器将某些请求代理到另一个服务器。 (我建议让 Node.js 服务器使用例如 https://github.com/http-party/node-http-proxy 将所有非 websocket 代理到 Django)。

如果您不需要两台服务器 运行 在同一端口上,只需将它们更改为使用不同的端口,在这种情况下,您将通过不同的 URL 访问这两个内容。您可以在 Node 应用程序或 Django 的 runserver 中更改 port: 8000,例如runserver 127.0.0.1:8010(或 0.0.0.0:8010 在您自己的机器之外公开开发服务器)。