对于【bug】Socketoperationonnon-socket感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解socketnobufferspace,并且为您提供关于c#–System
对于【bug】Socket operation on non-socket感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解socket no buffer space,并且为您提供关于c# – System.Net.Sockets.SocketException创建websocket连接时、Caused by: java.net.SocketException: Connection reset by peer: socket write erro、Failed to unlink socket file /tmp/mongodb-27017.sock Operation not permitted、IDEA 启动 tomcat 报 java.net.SocketExceptionsocket closed的宝贵知识。
本文目录一览:- 【bug】Socket operation on non-socket(socket no buffer space)
- c# – System.Net.Sockets.SocketException创建websocket连接时
- Caused by: java.net.SocketException: Connection reset by peer: socket write erro
- Failed to unlink socket file /tmp/mongodb-27017.sock Operation not permitted
- IDEA 启动 tomcat 报 java.net.SocketExceptionsocket closed
【bug】Socket operation on non-socket(socket no buffer space)
bug代码
1 #include <iostream>
2 #include <stdio.h>
3 #include <errno.h>
4 #include <sys/types.h>
5 #include <sys/socket.h>
6 #include <netinet/in.h>
7 #include <netinet/ip.h>
8 #include <string.h>
9
10 #define handdle_error(msg)\
11 do{perror(msg);exit(EXIT_FAILURE);}while(0)
12
13 #define BACK_LOG 10
14 #define BUF_SIZE 1024
15 int main(int argc, char** argv)
16 {
17 int sfd, cfd;
18 if (sfd = socket(AF_INET, SOCK_STREAM, 0) == -1)
19 handdle_error("create socket fail:");
20
21 struct sockaddr_in servaddr;
22 memset(&servaddr, 0, sizeof(sockaddr_in));
23 servaddr.sin_family = AF_INET;
24 servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
25 servaddr.sin_port = htons(6666);
26 if ((bind(sfd, (struct sockaddr*)&servaddr, sizeof(servaddr))) == -1)
27 handdle_error("bind socket error:");
28
29 if ((listen(sfd, BACK_LOG)) == -1)
30 handdle_error("listen socket fail:");
31
32 char buf[BUF_SIZE];
33 int rcv;
34 std::cout << "prepare to receive message" << std::endl;
35 while (1)
36 {
37 if ((cfd = accept(sfd, (sockaddr*)NULL, NULL)) == -1)
38 {
39 std::cout << "accept socket fail:%s(error no:%d)" << strerror(errno) << errno << std::endl;
40 continue;
41 }
42 if (rcv = recv(cfd, (void*)buf, BUF_SIZE, 0) < 0)
43 {
44 std::cout << "recv socket fail:%s(error no:%d)" << strerror(errno) << errno << std::endl;
45 continue;
46 }
47 buf[rcv] = ''\0'';
48 std::cout << "receive message from client is:" << buf << std::endl;
49 }
50 return 0;
51 }
编译OK,运行报错
根据提示说明是第26行报错
但是看代码一点问题没有
原因是socket创建sfd那里除了问题,正确写法,见右侧
这种()不匹配问题往往十分隐晦,一个好的方法是在()两侧流出空格,这样在语法高亮器的辅助下更容易发现问题
c# – System.Net.Sockets.SocketException创建websocket连接时
using System; using WebSocketSharp; namespace WebsocketTest { class Program { public static void Main(string[] args) { try { using (var ws = new WebSocketSharp.WebSocket("ws://192.168.18.186:7884")) { Console.WriteLine("started"); ws.Connect(); ws.Send("START"); Console.ReadLine(); } }catch(Exception ex) { Console.WriteLine(ex.Message); Console.ReadLine(); } } } }
但是我无法创建与在另一台机器上运行的websocket服务器的连接.我收到这样的错误信息
09-05-2017 16:20:41|Fatal|WebSocket.connect:0|System.Net.sockets.socketException (0x80004005): No connection Could be made because the target machine actively refused it 192.168.18.186:7884 at System.Net.sockets.TcpClient..ctor(String hostname,Int32 port) at WebSocketSharp.WebSocket.setClientStream() at WebSocketSharp.WebSocket.doHandshake() at WebSocketSharp.WebSocket.connect()
与我的代码有关的问题是什么?有什么好的websocket库可用吗?
解决方法
如果telnet可以连接,则客户端lib可能存在问题.实际上有一个内置于.NET中的Web套接字客户端,您应该可以使用它(ClientWebSocket
)
Caused by: java.net.SocketException: Connection reset by peer: socket write erro
今天做了个过滤图片的servlet,功能是用来匹配自定义的文件后缀,如果是该后缀,则通过该文件的id到数据库的附件中将文件读出并将byte[]写入response的out流中,但经常会报错,初步排查原因是由于浏览器的Aborted,阻止了请求的响应,异常如下:ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:366)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:433)
at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:348)
在BAIDU和GOOGLE上找了下原因,大概归结为:
ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error的原因是由于处理http连接时,正在输出内容时,用户关闭了IE,会出现一个"ClientAbortException",属于I/O处理中出现的一个异常,应用服务器应该会捕捉。
Connection reset by peer的原因:
经常出现的Connection reset by peer: 原因可能是多方面的,不过更常见的原因是:
①:服务器的并发连接数超过了其承载量,服务器会将其中一些连接Down掉;
②:客户关掉了浏览器,而服务器还在给客户端发送数据;
③:浏览器端按了Stop
很多人都说是客户端造成的,没有办法控制,是个比较郁闷的问题。
但是,我担心的是:虽然前台没有任何出错的迹象,但是后台会记录这个异常,日志也会疯狂爆满,时间长了,肯定会DOWN掉的,还没找到好的解决办法。
暂时HACK式的解决方法:
把下载文件的代码放在try……catch块中,在catch部分使用判断避免让系统抛出ClientAbortException,具体方法可以这样:
try{
...
}catch(Exception ex){
String simplename = ex.getClass().getSImpleName();
if(!"ClientAbortException".equals(simplename)){
ex.printStackTrace();
}
}
这样可以解决该异常的发生,进而不让日志文件暴涨
Failed to unlink socket file /tmp/mongodb-27017.sock Operation not permitted
2019-09-05T14:59:25.718+0800 W - [initandlisten] Detected unclean shutdown - /data/mongodb/data/mongod.lock is not empty.
2019-09-05T14:59:25.718+0800 E NETWORK [initandlisten] Failed to unlink socket file /tmp/mongodb-27017.sock Operation not permitted
2019-09-05T14:59:25.718+0800 F - [initandlisten] Fatal Assertion 40486 at src/mongo/transport/transport_layer_asio.cpp 171
2016-07-12T16:52:28.912+0800 E NETWORK [initandlisten] Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted
2016-07-12T16:52:28.912+0800 I - [initandlisten] Fatal Assertion 28578
2016-07-12T16:52:28.912+0800 I - [initandlisten]
从红色的提示可以看出是因为/tmp/mongodb-27017.sock这个文件没有操作权限。
rm -rf /tmp/mongodb-27017.sock
原因分析:
查看该文件情况如下:
可以看到这个文件的所有者是root用户,因为在准备环境的时候用的是root用户,而当时用root用户启动过一个没成功,后面修改配置文件过后用mongodb用户启动就出现了这个问题。
觖方法:
直接把该文件删除掉用Mongodb用户启动就行了。
可以看到这一次就是mongodb用户创建的文件了
————————————————
版权声明:本文为CSDN博主「doegoo」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/doegoo/article/details/51906165
IDEA 启动 tomcat 报 java.net.SocketExceptionsocket closed

我们今天的关于【bug】Socket operation on non-socket和socket no buffer space的分享已经告一段落,感谢您的关注,如果您想了解更多关于c# – System.Net.Sockets.SocketException创建websocket连接时、Caused by: java.net.SocketException: Connection reset by peer: socket write erro、Failed to unlink socket file /tmp/mongodb-27017.sock Operation not permitted、IDEA 启动 tomcat 报 java.net.SocketExceptionsocket closed的相关信息,请在本站查询。
本文标签: