- 浏览: 1245180 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (608)
- 数据结构 (2)
- AJAX (3)
- 设计模式 (3)
- java (117)
- js (14)
- css (9)
- jsp (10)
- 杂文 (49)
- htmlparser (6)
- 数据库 (29)
- 算法 (14)
- 数据挖掘 (11)
- 电脑杂症 (12)
- 网络爬虫 (7)
- 应用服务器 (9)
- PHP (2)
- C# (14)
- 测试 (3)
- WEB高性能开发 (3)
- swt (1)
- 搜索引擎 (16)
- HttpClient (4)
- Lite (1)
- EXT (1)
- python (1)
- lucene (4)
- sphinx (9)
- Xapian (0)
- linux (44)
- 问题归类 (1)
- Android (6)
- ubuntu (7)
- SEO (18)
- 数学 (0)
- 农业资讯 (12)
- 游戏 (3)
- nginx (1)
- TeamViewer (1)
- swing (1)
- Web前 端 (1)
- 主页 (0)
- 阿萨德发首发身份 (0)
- 软件设计师 (0)
- hibernate (5)
- spring3.0 (5)
- elastic (1)
- SSH (3)
- ff (0)
- oracle 10g (9)
- 神经网络 (1)
- struts2.0 (2)
- maven (1)
- nexus (1)
- 辅助工具 (3)
- Shiro (1)
- 联通项目 (0)
- 2014年专业选择 (0)
- freemarker (1)
- struts1.2 (8)
- adfasdfasfasf (0)
- TortoiseSVN (1)
- jstl (1)
- jquery (1)
- eclipse plugin (0)
- 游戏外挂 (1)
- 推广 (0)
- 按键精灵 (1)
- ibatis3.0 (1)
最新评论
-
水野哲也:
不不不, 这个您真错了!其实是你引用的那个jsp和本身的jsp ...
解析关于jsp页面指令冲突问题contentType="text/html;charset=UTF-8" -
caobo_cb:
import xx.cn.weibo.Util;
[ java版]新浪微博之ruquest_token篇 -
caobo_cb:
你好 Util包没有
[ java版]新浪微博之ruquest_token篇 -
小桔子:
你好!我遇到个问题 max_allowed_packet值总是 ...
mysql查询占用内存,优化的技巧 -
donghustone:
谢谢大神!
用JSmooth制作java jar文件的可执行exe文件教程(图文)
linux 上tomcat 服务器抛出socket异常“文件打开太多”的问题
该问题的根本原因是由于系统文件资源的限制导致的。
[root@test security]# ulimit -a
通过以上命令,我们可以看到open files 的最大数为1024
那么我们可以通过一下命令修改该参数的最大值
2. ulimit -n 4096
[root@test security]# ulimit -n 4096
用ulimit -n 修改open files 总是不能保持。所以用下面一个简单的办法更好些。
修改/etc/security/limits.conf 添加如下一行:
* - nofile 1006154
修改/etc/pam.d/login添加如下一行
session required /lib/security/pam_limits.so
这次永久修改后程序就再没那个问题了,一直稳定运行。
上面的办法只是临时解决办法,问题还是要从根本上解决,于是把以前的代码由认真地看了一遍。终于找到了,罪魁祸首。
在读取文件时,有一些使用的BufferedReader 没有关闭。导致文件一直处于打开状态。造成资源的严重浪费。
修改之后的简单代码如下:
谢谢
java.net.SocketException: Too many open files at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384) at java.net.ServerSocket.implAccept(ServerSocket.java:450) at java.net.ServerSocket.accept(ServerSocket.java:421) at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:60) at org.apache.tomcat.util.net.PoolTcpEndpoint.acceptSocket(PoolTcpEndpoint.java:407) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:70) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595)
该问题的根本原因是由于系统文件资源的限制导致的。
[root@test security]# ulimit -a
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited file size (blocks, -f) unlimited max locked memory (kbytes, -l) unlimited max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 7168 virtual memory (kbytes, -v) unlimited
通过以上命令,我们可以看到open files 的最大数为1024
那么我们可以通过一下命令修改该参数的最大值
2. ulimit -n 4096
[root@test security]# ulimit -n 4096
用ulimit -n 修改open files 总是不能保持。所以用下面一个简单的办法更好些。
修改/etc/security/limits.conf 添加如下一行:
* - nofile 1006154
修改/etc/pam.d/login添加如下一行
session required /lib/security/pam_limits.so
这次永久修改后程序就再没那个问题了,一直稳定运行。
上面的办法只是临时解决办法,问题还是要从根本上解决,于是把以前的代码由认真地看了一遍。终于找到了,罪魁祸首。
在读取文件时,有一些使用的BufferedReader 没有关闭。导致文件一直处于打开状态。造成资源的严重浪费。
修改之后的简单代码如下:
public void test(){ BufferedReader reader =null; try{ reader = 读取文件; String line = ""; while( ( ine=reader.readLine())!=null){ 其他操作 } } catch (IOException e){ System.out.println(e); } finally{ if(reader !=null){ try { reader.close(); } catch (IOException e) { e.printStackTrace(); } } } }
评论
2 楼
lzj0470
2011-12-22
netkiller.github.com 写道
运行即可
cat >> /etc/security/limits.conf <<EOF
root soft nofile 10240
root hard nofile 65536
nobody soft nofile 10240
nobody hard nofile 65536
EOF
cat >> /etc/security/limits.conf <<EOF
root soft nofile 10240
root hard nofile 65536
nobody soft nofile 10240
nobody hard nofile 65536
EOF
谢谢
1 楼
netkiller.github.com
2011-12-21
运行即可
cat >> /etc/security/limits.conf <<EOF
root soft nofile 10240
root hard nofile 65536
nobody soft nofile 10240
nobody hard nofile 65536
EOF
cat >> /etc/security/limits.conf <<EOF
root soft nofile 10240
root hard nofile 65536
nobody soft nofile 10240
nobody hard nofile 65536
EOF
发表评论
-
linux 查看软件目录
2013-06-26 11:37 764whereis ntpdate -
linux 添加定时任务
2013-06-26 10:54 956root身份登录到命令行 输入 crontab -e 按下 ... -
linux 时区设置
2013-06-26 10:38 736tzselect命令只告诉你选择的时区的 写法,并不会生效。所 ... -
chkconfig 使用
2013-06-20 00:05 0chkconfig sshd --level 3 off 原 ... -
linux 命令使用
2013-06-19 17:00 7751、linux crontab 怎么生效 service cr ... -
SSH 使用
2013-06-19 10:43 834首先,查看SSH有哪些参数。如下: usage: ssh [- ... -
linux 自动重启tomcat
2013-06-10 16:03 779一般情况下,下面的代码可以满足: #!/bin/sh whi ... -
linux 访问U盘
2012-09-07 11:42 841mount -t vfat /dev/sda1 ... -
sshd 重新启动
2012-05-09 11:42 1842/etc/init.d/sshd restart 113.1 ... -
使用ntfs-3g挂载NTFS文件系统
2012-02-11 15:35 1556Linux下想访问NTFS分区,现在普遍的方法是利用ntfs- ... -
Linux检测硬盘坏道
2012-02-10 21:15 1319看看我的盘健康测试,如果你的self-assessment t ... -
smartd错误信息含义解释及解决方法处理手段一览表
2012-02-10 20:52 1087SMART Disk Errors /var/log/mess ... -
segfault at xxx rip xxx rsp xxx error 4
2012-02-10 20:31 4560这种信息一般都是由内存访问越界造成的,不管是用户态程序还是内核 ... -
使用MegaCli工具查看Raid磁盘阵列状态
2012-02-09 10:18 3966Linux操作系统下使用MegaCli工具查看Raid磁盘阵列 ... -
比较不错的下载地址
2012-01-13 16:43 893http://ftp.gnome.org/pub/GNOME/ ... -
在linux下统计当前文件夹下的文件数
2011-11-23 16:10 9421) 统计当前文件夹下文件的个数 ls -l |grep &q ... -
SecureCRT自动记录日志
2011-10-11 10:46 11987今天在推特上看到有人 ... -
Linux命令行下统计当前文件夹下的文件个数
2011-07-25 10:47 1311统计某文件夹下文件的个数 ls -l |grep &quo ... -
Linux字符集的修改方法
2011-07-17 16:29 1163用export LANG=zh_CN.UTF-8这样只下次重起 ... -
让linux支持ntfs格式
2011-07-11 14:34 905资料: http://www.ixpub.net/thread ...
相关推荐
JAVA.NET.SOCKETEXCEPTION TOO MANY OPEN FILES解决方法,三种方案,临时,永久,根治
java.net.SocketException: Unrecognized Windows Sockets error: 0: no Inet4Address associated with interface 本文提供了在Win7或Vista系统下解决这个异常信息的办法。
NULL 博文链接:https://zhoudan241.iteye.com/blog/1432014
java.net.SocketException Connection reset 解决方法
最近纠结致死的一个java报错java.net.SocketException: Connection reset 终于得到解决
接口调用报错:java.net.SocketException: java.lang.ClassNotFoundException: Cannot find the specified class com.ibm.websphere.ssl.protocol.SSLSocketFactory
转:java.net.SocketException: Too many open files解决方法最近随着网站访问量的提高把web服务器移到linux下了,在移服务器的第二天,tomcat频繁的报 java.net.SocketException: Too many open files错误,错误...
Linux下运行tomcat或者was出现java.net.SocketException: 打开的文件过多错误 tomcat报“too many open files”的错误,解决办法如下:
Google I/O 2013推荐Android 网络通信框架Volley 下载下来后然后编译为jar包,再在自己的工程里import进来。
FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站...
socket 文件同步
在PDA开发时经常会遇到下面的错误,原因是缺少一个dll,只要在项目中引用这个dll就可以获得错误的描述,然后根据错误提示在解决问题!System.Net.WebException: 无法显示错误消息,原因是无法找到包含此错误消息的可...
import java.net.SocketException; public class UDPServer { public static void main(String[] args) { try { byte [] buffer = new byte[1024]; DatagramSocket socket = new DatagramSocket(4444); ...
34. import java.net.SocketException; 35. import java.net.UnknownHostException; 36. import java.util.Date; 37. import java.util.Scanner; 38. import java.util.Stack; 39. import java.util.prefs....
System.Net.Sockets.SocketException: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 想到阿里云喜欢用安全组屏蔽端口,于是我就赶紧去配置了安全规则。进站出站都配置了,结果还是...
1.解决服务器报错:java.net.SocketException: No buffer space available (maximum connections reached?): JVM_Bind 2.解决Windows Server 2003/2008 R2系统BUG导致windows缓冲区已满(no buffer space),Windows...
注意:由于压缩包大于15M,所以分两部分上传,这是第一部分!下载SSH2-1后,再解压这两个文件后就可用了。
syslog4j Syslog4j提供了BSD Syslog协议(RFC 3164)和“结构化syslog”协议草案(RFC Draft)的客户端和服务器实现。 警告 这是使用的重新打包的fork,因为原始软件包没有发布到Maven Central的最新版本。...
有时会抛出 java.net.SocketException: Invalid argument) Java 行家 运行upload.rb 配置 将 aws 凭据设置为 AwsCredentials.properties 具有标记列和别名列的 csv 文件。 令牌列应命名为“device_token”或...
Caused by: java.net.ConnectException: Connection refused at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:574) at ...