当前位置: 首页 > 面试题库 >

Docker容器和Node.js集群

云京
2023-03-14
问题内容

我有一个运行Node.js的api服务器,该服务器正在使用它的集群模块,并且测试看起来还不错。现在,我们的IT部门希望转而使用令我感到高兴的Docker容器,但除了玩转之外,我从未真正使用过它。但是我有一个想法,Node.js应用程序在单个Docker进程中运行,因此集群模块并不是最好的,因为单个Docker进程可能是安装过程中的一个慢点,直到在该进程中拆分请求为止通过集群模块。

因此,实际上运行着一个能够即时启动和停止它们的Docker容器集群比使用Node.js正确的集群模块更重要吗?

如果我有一个容器集群,使用Node.js的集群模块能给我带来什么好处吗?api端点返回所需的时间少于0.5秒(通常少得多)。

我使用的是MySQL(相信它是一台服务器,目前仅此而已),所以那时没有任何理由使用数据完整性解决方案。


问题答案:

您必须确定一下,但是我的预感将与节点的集群模块一起运行将是值得的。它将以最少的额外开销获得更高的CPU利用率。无需管理其他容器(启动,停止,监视)。另外,集群工作人员具有有效的沟通机制。在我看来,最合理的发展(不要跳过步骤):

  1. 1个容器,1个节点进程
  2. 1个容器,几个集群节点工作者
  3. 几个容器,每个容器有几个节点工人


 类似资料:
  • Docker containers are available that contain the complete PX4 development toolchain including Gazebo and ROS simulation: px4io/px4-dev: toolchain including simulation px4io/px4-dev-ros: toolchain incl

  • 目前情况: 我通过执行以下命令创建了一个新的Cassandra映像“Cassandra”和一个名为“container-node”的容器: Docker pull Cassandra Docker images grep Cassandra Docker run-d--name cassandra-node--publish 9042:9042 cassandra 连接到容器:docker exe

  • 我试图用PHP、MariaDB和一个教程创建一个PHP开发环境,该教程建议使用Adminer进行数据库管理。因此,我生成了我的文件如下: 但是,当我为MariaDB设置卷时,在管理员登录页面中出现了一个错误。当我没有设置它们时,它似乎工作得很好。

  • 我的目标:我需要收集从运行的tomcat容器到Filebeat容器的tomcat日志。 问题:我不知道如何从Tomcat容器中获取收集的日志文件。 到目前为止我尝试过的内容:我尝试创建一个docker卷并将tomcat日志添加到该卷中,并从filebeat容器访问该卷,但没有成功。 docker-containers:包含3个主子目录(Tomcat、Nginx和Postgres)。ENV文件和do

  • 这是Node.js应用程序。 为了部署应用程序,我分别使用了一个node.js容器和一个redis容器,并将node.js容器与redis容器链接起来。 redis容器可通过以下方法获得 但我有个错误说: 由于redis容器暴露于6379,而我的nodejs容器正在链接到redis容器。在我的Node.js应用程序中,使用端口6379连接到localhost redis服务器应该是可以的,但实际上

  • 我只是从Mesos、Docker和马拉松开始,但我找不到任何地方可以回答这个特定的问题。我想建立一个运行在Docker上的Mesos集群--有几个internet资源可以做到这一点,但我想在Mesos本身上运行Docker容器。这意味着Docker容器运行在其他Docker容器中。