前戏
生产环境报错EMFILE,too many open files 导致客户端无法访问
对文件系统进行大量并发调用,操作系统的文件描述符数量会被瞬间用光,抛出EMFILE,too many open files。异步I/O和同步I/O的显著差距:同步I/O因为每个I/O都是彼此阻塞的,在循环体中,总是一个接着一个调用,不会出现耗用文件描述符太多的情况,同时性能也是低下的;对于异步I/O,虽然并发容易实现,但是还是需要给予一定的过载保护,防止过分压榨底层系统的性能
解决方案
临时修改打开文件数
永久修改(重启服务器生效)