javascript - 带有 Apache Tomcat 的 Express.js 服务器

标签 javascript node.js tomcat express

我正在使用 express.js 在 node.js 中制作一个示例 Web 应用程序。使用 apache-tomcat 作为我的网络服务器时,我有点困惑。我有两个疑惑:

  1. 当我将 apache-tomcat 作为 Web 服务器运行并且我的 express.js 服务器在端口号 4000 上为我提供服务时,它如何知道在哪个端口监听 tomcat Web 服务器。如果我有多个 tomcat 实例在本地主机上运行,​​它如何知道要连接到哪个服务器实例呢。

    app.listen(port, "127.0.0.1");
    
  2. 下面这行代码是如何工作的:

    var server = app.listen(4000, function() {
    
        var host = server.address().address;
        var port = server.address().port;
    
        console.log('server listeninig at http://%s:%s', host, port);
    });
    
  3. 如果我们仅使用 express.js 就可以提供网络服务,为什么还需要借助 apache tomcat 或其他网络服务器。

最佳答案

我认为将 express.js(用于 Node.JS 平台的简单网络服务器)和 Apache Tomcat(来自 JVM 世界的 Servlet 容器)结合起来完全没有意义。

我打赌你一定很困惑 Apache Web ServerApache Tomcat .它们是两个完全独立的项目。如果是这种情况,请注意 Apache Web ServerNginx HTTP 服务器通常与 express.js 一起使用为 reverse proxies .这种组合通常用于匹配 PROD 级应用程序所需的安全性和性能(例如缓存)要求。

要回答您的问题,请不要将 express.js 与 Apache Tomcat 结合使用。如果您刚刚开始使用 express.js,请单独使用它。如果它变成一个应该在生产环境中运行的应用程序,您将需要对其进行操作,这可能包括将其与某些 HTTP 服务器相结合的考虑因素。

关于javascript - 带有 Apache Tomcat 的 Express.js 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30908162/

相关文章:

javascript - 获取firebase数据库上的数据以替换字符串

java - 失败 - 在 tomcat7 : War file "WhitePagesAddressLookup.war" cannot be uploaded if context is defined in server. xml 中出现错误

javascript - 动态加载的项目不会在模式中转向 Owl Carousel

node.js - Nodejs 中的链式 promise 仅执行第一个 promise ,但不执行链式 promise

node.js - Mongoose 按引用查找不返回任何内容

node.js - NPM 从脚本启动 Mongo 时遇到问题

tomcat - RHEL 7 和 Tomcat 8 SSL 443

用于网站的 Node.js

javascript - 完成后移除动画

javascript - 从函数中的查询获取结果并计算 Codeigniter 中的 num_rows