当我"consul members"在consul服务器和客户端上运行时,我收到此错误.端口处于LISTENING状态,我确保没有防火墙阻塞.我在consul客户端运行时遇到此错误:
检索成员时出错:获取http://127.0.0.1:8500/v1/agent/members:
拨打tcp 127.0.0.1:8500:connectex:由于目标计算机主动拒绝连接,因此无法建立连接.
当我使用私有IP发出上述请求时,我得到了所需的输出.我可以在任何地方更改配置,以便它在私有IP上侦听请求吗?
为了获得socket syscall(like recv)错误,哪个更好(在性能级别)?
errnoSO_ERROR用作getsockopt()optname?我认为errno(__error()在我的系统上定义)更快,因为它不是系统调用.我对吗 ?
SO_ERROR的优点是:获取后自动错误重置,我们确信错误只涉及我们的套接字.它更安全.
你觉得哪一个更好?这两者之间的性能真的不同吗?
当使用SO_RECVBUF调用setsockopt时,然后转向并使用SO_RECVBUF调用getsockopt,它似乎告诉我它将缓冲区大小设置为我要求它设置的两倍.有人知道为什么会这样吗?
有问题的代码:
https://gist.github.com/rdp/8443238
输出:
setting it as 2222
[udp @ 0x1a72ec0] end receive buffer size reported is 4444
Run Code Online (Sandbox Code Playgroud)
仅在linux中,在其他操作系统上似乎将其报告为我设置的值.谢谢.