记一次worker_rlimit_nofile配置引发的问题

记录一次最近公司SEO优化压测,以前所有页面上的数据都是通过JS获取的,这样会有一个问题,就是SEO不友好,所以就增加了一层Node,接口请求放在了Node里,通过Node渲染页面后返回给浏览器。因为是一次比较大的改版,所以在测试环境进行了一次性能压测,当然测试环境机器有限,是按比例缩小进行压力测试。中间出现了几个问题,印象最深刻的就是Nginx最大连接数了。最开始因为对Nginx高性能的信任,所以没往这方面想。

通过查看Node请求日志发现一些接口报50x错误,但Java日志并没有相关错误日志,偶然发现Nginx上有记录异常信息,报了很多的 open too many files 错误,Socket在Linux中也是一个文件,也受Linux的最大打开文件数限制。通过 ulimit -n 查看到测试环境上配置是默认的1024,这自然是远远不够的。

通过修改 /etc/security/limits.conf 增加到65535,重新登录后虽然 ulimit -n 显示的是变了,但还是继续报这个错,后来才知道该配置需重启服务器才生效,重启服务器太麻烦,无奈只好把修改Nginx运行用户修改为root,root用户不受此限制(当然生产环境上是不敢如此修改的)。修改完了之后就正常,但继续往上压测还是会出现该错误,后来通过修改Nginx配置 worker_rlimit_nofile 及 worker_connections 才得以正常。Nginx配置文件 nginx.conf 修改完reload下即可生效:nginx -s reload。

相关配置如下所示:

user root; worker_processes 2; worker_rlimit_nofile 15360; events { use epoll; worker_connections 10240; }

原文发布于微信公众号 - nginx(nginx-study)

原文发表时间:2018-05-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏实战docker

docker下使用disconf:极速体验

前面的文章中我们实战了docker下搭建disconf环境,现在我们学习如何使用disconf提供的动态配置服务,本章我们不深入研究,而是以最快的速度体验一个j...

41070
来自专栏程序员的碎碎念

git上传更新项目-错误总结

前些天做完项目一部分内容的时候,想git上传代码上去远程仓库里,却出现了不少git的错误提示信息。在这里总结一下吧: 一、正确的git上传更新项目步骤为:...

33330
来自专栏吴伟祥

Linux系统基本结构 原

/dev/fdx         主设备号 fd 是软盘驱动器(floppydisk) 的缩写,次设备号x 是软盘驱动器相应的编号。

12520
来自专栏xingoo, 一个梦想做发明家的程序员

msysGit管理GitHub代码

代码的管理,在日常开发中是很重要的环节,程序员的修炼三部曲——版本控制,单元测试,项目自动化。 本篇就简单的说说通过msysGit来管理GitHub中的代码...

25580
来自专栏娱乐心理测试

如何新建一个vue项目(图文详解)

作为一个几年IOS开发经验的移动端程序猿来说,已经感到很大的危机感,不得不学习新的东西,选择了在众多框架中脱颖而出的vue作为学习的目标。

36430
来自专栏刺客博客

Centos下使用ntsysv命令来控制开机自启软件

12320
来自专栏BeJavaGod

SSO单点登录的发展由来以及实现原理

单点登录以及权限,在很早之前都有写过,不过都比较简单,今天就具体说一下,以及下一步要做的 1、web单系统应用 早期我们开发web应用都是所有的包放在一起打成一...

39940
来自专栏企鹅号快讯

大型网站技术架构:Web 前端性能优化

浏览器访问渲染优化 减少 http 请求数 http 协议是无状态的应用层协议,每次 http 请求都会建立新的通信链路,并且在服务端,每个 http 连接都会...

22060
来自专栏idba

主从替换之后的复制风暴

一套MySQL主-备-备-备数据库,其中的备库升级到主库之后,系统监控报警 Seconds_Behind_Master 瞬间为0,瞬间为数十万秒。第一感觉是遇...

20620
来自专栏云计算教程系列

在Centos上安装Node.js

Node.js是一个能够在服务器端运行JavaScript的开放源代码、跨平台avaScript 运行环境。Node.js由Node.js基金会持有和维护,并与...

62400

扫码关注云+社区

领取腾讯云代金券