美文网首页
茂业项目处理流程总结

茂业项目处理流程总结

作者: 黑哥儿666 | 来源:发表于2017-07-12 10:10 被阅读49次

    在茂业百货的项目上,凸显出几个比较棘手的问题,这里简单总结下出现的问题和解决方案。

    一、集群配置好之后,手机端登录不上的问题

    最终排查结果:nginx对端口转发的有问题

    不仅仅是茂业这个项目,我记得那段时间处理的项目有几个都是类似的情况,通过nginx做代理转发,配置完成之后,pc、web都可以正常访问OA以及emessage。唯独就是手机端登录之后连接emessage消息引擎时一直打圈,一直连不上。

    这种手机连不上,其他端都ok的情况,排查思路有三个入手点

    1) 排查ecology/WEB-INF/prop/OpenfireModules.properties 配置文件。

    确认里面的openfireMobileClientUrl(下图中标注的2)配置是外网地址(或者是域名)。手机走流量访问时,此种配置没问题。

    确认里面的openfireMobileClientUrl(下图中标注的2)配置是内网地址。 手机走流量访问时,此种配置存在问题。手机走内网WiFi连接时没有问题。

    OpenfireModules.properties 配置文件

    2) 排查客户方面有没有开通5222端口的映射,确认手机端在外网可以访问服务器的5222端口。

    3) 排查客户方面的nginx配置在对5222端口的转发是否存在问题。

    对于emessage的几个端口及其协议,罗列如下:

    5222端口,给手机端连接使用,tcp类型的端口;

    7070端口,给pc/web端连接使用,websocket类型的端口(ws);

    7443端口,给pc/web端连接使用,websocket ssl类型的端口(wss),配置类同https;

    9090端口,给ecology服务端连接使用,http类型的端口,仅仅是内网通信;

    当客户使用nginx做端口转发时,需要确保转发配置正确性。对于socket(tcp类型)的转发,需要与http的转发区分开来。5222端口是要做socket转发的。nginx在1.9版本开始支持socket协议转发。nginx-1.10.2版本或者nginx-1.12.0,这两个是稳定版本,默认支持动态模块加载和socket转发,无需复杂的重新编译添加--with-stream(nginx 1.9 ~nginx-1.9.11支持socket比较复杂)

    7070端口转发的nginx配置示例 5222端口转发的nginx配置示例


    二、集群运行一段时间之后,部分用户反映每隔1分钟左右连接就断开

    最终排查结果: nginx未配置超时时间,默认超时时间为60s

    修改超时时间。如上图框出来的地方。socket的超时和websock的超时设置不一样!


    三、集群运行一段时间之后,随着项目的推广,部分用户反映登录不上的问题

    最终排查结果: nginx自身可打开的最大文件数目受系统限制的问题

    决定nginx所能打开的文件数有两个地方。一个地方是nginx自身的配置;另一个地方是操作系统的硬性限制。

    先将nginx的自身限制调大. 改成如下图所示即可。

    nginx的自身限制

    worker_connections是单个工作线程可打开的并发连接数,这个值又是受worker_rlimit_nofile这个最大可打开的文件数限制。如下配置中能够打开的连接数是worker_processes *worker_connections,这个值未超过worker_rlimit_nofile

    worker_connections和worker_rlimit_nofile的官方解释如下

    worker_connections解释 worker_rlimit_nofile解释

    再将系统的最大可打开文件数调大,默认情况下Linux可打开的最大文件数为1024,可通过ulimit -n或者ulimit -a查看。注意不能在会话窗口设置ulimit -n 65535来调整,因为nginx以daemon模式运行,不受会话的环境变量控制。

    系统可打开的最多文件数

    对于centos系统,需要如下来调节:在limits.conf添加限制

    修改limits.conf

    然后重启nginx服务即可。

    相关文章

      网友评论

          本文标题:茂业项目处理流程总结

          本文链接:https://www.haomeiwen.com/subject/elovhxtx.html