Articles of 集群计算

在多核服务器上启动多个节点实例的正确方法是什么?

我有一个nodejs应用程序,我想在一个多核(2CPU * 2Cores = 4Cores)服务器上运行。 在阅读了一些关于这个主题的SO线程之后,我决定在4个不同的端口上启动4个独立的节点实例,并使用nginx在它们之间进行负载平衡。 我决定在节点集群上使用这种方法。 现在,这是我的问题。 我真的很感激任何反馈: 在2cpu * 2cores / cpu = 4核心服务器与1cpu * 4cores / cpu = 4core服务器上启动4个节点实例的方式是否有区别。 我不认为有什么区别,但只是想确认。 我有一个conf文件来启动我的服务。 这个conf文件实际上是驻留在/ etc / init中的一个脚本,并启动我的节点应用程序。 我应该从这个1个conf文件启动4个实例,还是应该创build4个conf文件,并为每个conf文件启动一个实例。 再一次,我觉得后一种方法比较好,但是想确认一下。

在防火墙后面如何处理与Socket.io 1.0的粘连会话?

我正在尝试使用Nginx,Node.js和Socket.io 1.0在Rackspace上使用群集设置自己的POC。 我假设我需要使用集群,因为如果需要,我希望这可以跨多个服务器进行扩展。 我希望每个节点都有自己的实例,而且现在我看不到每个实例都需要为了任何原因彼此交谈。 现在再说一遍,我相信我需要使用集群,因为我可能有很多客户端连接到这个服务器,我希望它能够相应地增长和缩小。 我的最终目标是构build一个类似于此处显示的POC: https : //cloud.google.com/developers/articles/real-time-gaming-with-node-js-websocket-on-gcp 我刚刚得到了我认为是build立的新的Socket.io 1.0的有效设置,但是当从我的路由器后面的不同设备连接时,它们在我的日志logging中都显示相同的PID,并且我认为这是由于所需的粘性 – 通过Socket.io进行访问。 我不确定这是否与我们曾经用集群获得的工作stream程相同,但是我仍然试图让我的脑袋缠住这一切。 首先,我想知道是否需要使用集群和粘滞会话,因为只有一个PID是针对同一个外部IP发布的,那么是否有将每台计算机视为自己的实例呢? 我不想发回一个更新IP后面所有人的回复。 我的第二个问题是这个,这可能是一个愚蠢的问题,但我问无论如何:)在阅读有关如何获得粘滞会话工作,我不断看到人们说“使用粘滞会话,如通过IP地址”。 “喜欢”这个词是什么让我。 我似乎已经发现人们提到使用IP和cookie的粘性会话。 你可以做任何其他事情,如用户名,签发令牌或任何东西? 我担心的是,如果有人在移动设备上玩这个游戏,并且他们换了塔,那么塔会发出一个新的IP,这样就会发出一个新的PID,实质上就是玩家的游戏丢失了。 我理解这个权利吗? 请原谅我,因为我是Node.js的新手,但认为这将是学习node.js和云中的群集的一种很酷的方式。 任何人都可以提供的信息或方向将是非常有帮助的。 许多tuts似乎都向大家播放活动,但我正在寻找一个可扩展的解决scheme,其中每个连接可以发送事件个别时间。 当服务器与它们通信时,我还需要解决同一个防火墙后面的许多人被当作单独的连接。 再次,如果有任何阅读或教程,你可以帮我使用socket.io 1.0和我想做的,请回复。 谢谢!

什么是最好的node.js集群?

节点http://nodejs.org/docs/v0.6.19/api/cluster.html中有一个集群模块 但是我发现了一些其他的实现,如https://github.com/learnboost/cluster 什么是最好的,谁是有经验的? 其他问题, 是否有必要在生产中使用nginx? 如果是这样,为什么? 单个现代多节点服务器可以同时处理多less个并发连接,节点数为100K,200K? 感谢名单!

会话复制不能与tomcat7一起使用

在我的nginx中,我设置了上游并设置粘滞的会话: upstream tomcat { ip_hash; server localhost:XXXX; server localhost:XXXY; server localhost:XXYY; } 我在我的web.xml中添加了<distributable/>标签(在所有的tomcat中) 已经在我的tomcat / conf / server.xml文件中添加了这个: <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6"> <Channel className="org.apache.catalina.tribes.group.GroupChannel"> <Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4" port="45564" frequency="500" dropTime="3000"/> <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver" address="auto" port="5000" selectorTimeout="100" maxThreads="6"/> <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter"> <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/> </Sender> <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/> <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/> <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/> </Channel> <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=".*\.gif|.*\.js|.*\.jpeg|.*\.jpg|.*\.png|.*\.htm|.*\.html|.*\.css|.*\.txt"/> <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer" tempDir="/tmp/war-temp/" deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" […]

uwsgicluster – 连接上游客户端时没有活上游

下面简单的nginxconfiguration为集群,然后closures192.168.1.77:3032服务器。 有时我会在日志中捕获502错误和“连接上游客户端时没有活上游”,而“server unix:///var/tmp/site.sock备份;” 工作和我想必须处理的请求,但nginx不觉得它现场。 可能是什么问题呢? nginxconfiguration: upstream uwsgicluster { server 192.168.1.77:3032; server unix:///var/tmp/site.sock backup; } server { listen 80; server_name site.com www.site.com; access_log /var/log/nginx/sire.log; error_log /var/log/nginx/site-error.log; location / { uwsgi_pass uwsgicluster; include uwsgi_params; } } 如果我从上游删除192.168.1.77:3032服务器,并重新启动nginx它工作正常,但与closures192.168.1.77:3032服务器错误周期性地发生

绕过Linux集群网关 – 直接从您的桌面节点

从我的桌面我通常执行这个命令去linux群集: 我有这个在我的.bash_profile alias gothere="ssh -i ~/.ssh/id_rsa_macmini_mine pdubois@thelinux.cluster.co.jp" 然后用它调用它去到集群: dhcp190-206:~ pdubois-macmini$ gothere Last login: Tue Mar 25 15:41:03 2014 from dhcp190-206.mycompany-u.ac.jp [pdubois@thelinuxcluster ~]$ 然后,一旦我到达该群集的网关,我再次这样做去节点: alias blogin="bsub -Is -q intj bash -l" 调用这种方式去节点: [pdubois@thelinuxcluster ~]$ blogin Job <221825> is submitted to queue <intj>. <<Waiting for dispatch …>> <<Starting on clusternode61>> [pdubois@clusternode61 ~]$ 我的问题是,有没有办法将上述两步简化为一步? 这样我就可以从我的桌面直接进入群集节点。

使用Python在unix / linux中的单个目录中的文件数量限制

输出很多文件到unix / linux中的同一目录是不好的? 我在一个集群上运行数千个作业,每个作业输出一个文件到一个目录。 这里的上限约为50,000个文件。 IO可以根据这个来限制速度吗? 如果是这样,问题是否与嵌套的目录结构消失? 谢谢。

BSUB许多matlab作业到一个集群?

我正在使用下面的bash文件将matlab作业提交给一个集群, #!/bin/bash #BSUB -L /bin/bash #BSUB -J matlab.01 #BSUB -q long #BSUB -n 32 #BSUB -R "span[hosts=1]" #BSUB -W 20:00 #BSUB -R "rusage[mem=3072]" #BSUB -o %J.out #BSUB -e %J.err # the working directory work=/home/models cd $work # run matlab on the main function matlab -logfile ./output.txt -nodisplay -r "foo('model', day);" 假设文件名是mat.bash,那么我使用该命令 bsub < mat.bash 向集群提交一个作业。 […]

2个Weblogic集群在同一个networking中

我们有2个服务器(dev / int),其中一个有3个Weblogic集群,一个托pipe服务器和不同的mutlicast地址。 服务器1具有组播地址239.192.3.7和239.192.3.8和239.192.3.9 服务器2具有组播地址239.192.4.7和239.192.4.8和239.192.4.9 pipe理员和受pipe服务器启动时没有错误。 受pipe理的服务器连接到他的群集,它看起来不错。 两台服务器都在同一个networking(abcd / 24)并连接到相同的交换机。 如果我将服务部署到此群集中的一个,例如239.192.3.7,则收到超时。 在netstat我看到从服务器2(239.192.4.7)到另一个集群的连接。 在这个集群(server2)的日志中,我看到了server1的服务部署尝试。 所以在停止了server2的集群之后,我可以毫无困难地在server1上部署这个服务。 哪里有问题? 在一个networking中多播多播地址? 所以也许有人可以帮助我,谢谢! 编辑(10.05.2013): 前几天我用他的3个群集configuration来安装这个服务器。 也许我的configuration有错误。 在这个新的安装中,我有同样的错误,现在我再次使用netstat -la –numeric-ports再次查看server2,并查看到另一个server1的两个连接。 它看起来像这样: tcp 0 0 server2:8088 server1:57963 ESTABLISHED tcp 2 0 server2:7890 server1:34010 ESTABLISHED 每个连接都将从托pipe服务器开始创build。 但只有这两个连接与每个相同的源端口。

如何在计算机群集上运行进程时访问标准输出?

介绍 我使用一台计算机集群,通过.pbs文件提交( qsub )作业。 缺省值是在执行qsub命令的工作目录中的文件上打印标准输出和标准错误。 问题 对我来说,问题是标准输出和标准错误文件只出现在stream程结束时,而我希望能够直接监控stream程的进展。 思考 我知道以下选项存在 #PBS -o #PBS -e #PBS -j [oe/eo] 以表示标准输出和标准错误的特定文件名称和位置。 不过,有两点我不清楚 我不太清楚在使用数组时它是如何工作的(通过#PBS -t )。 一个PBS_ARRAYID标准输出会覆盖以前的标准输出吗? 是否将整个数组的所有标准输出打印在同一个文件中,或者有没有办法在文件名中包含PBS_ARRAYID ? 在这个过程结束之前,使用这些选项是否可以帮助我以任何方式访问标准输出? 题 在计算机群集上提交过程时,如何在过程结束之前将标准输出和标准错误可视化?