社区
网络编程
帖子详情
如何得知socket的缓存大小,这个缓存是否有上限,是否会溢出?
neteee_sina
2012-02-17 09:10:11
我有一个客户端的socket接受服务器来的数据,因为这个客户端有大量的占用cpu的任务来执行,以至于有时会堆积接受来的数据而没有处理。
我想知道,这个被缓存起来的socket数据,是
(1) 在系统内存空间还是在用户内存空间?
(2) 缓存大小有限制吗? 如果知道/设置这个限制值
(3) 会不会遇到一个数值以后就溢出,或者操作系统干脆丢掉后续的数据,直到这个socket句柄有缓存可写?
...全文
554
3
打赏
收藏
如何得知socket的缓存大小,这个缓存是否有上限,是否会溢出?
我有一个客户端的socket接受服务器来的数据,因为这个客户端有大量的占用cpu的任务来执行,以至于有时会堆积接受来的数据而没有处理。 我想知道,这个被缓存起来的socket数据,是 (1) 在系统内存空间还是在用户内存空间? (2) 缓存大小有限制吗? 如果知道/设置这个限制值 (3) 会不会遇到一个数值以后就溢出,或者操作系统干脆丢掉后续的数据,直到这个socket句柄有缓存可写?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Eleven
2012-02-17
打赏
举报
回复
1. SOCKET系统缓冲区
2. SOCKET的接收缓冲区,默认好像是8K,可以通过getsockopt()函数SO_RCVBUF得到,
getsockopt(SOCKET, SOL_SOCKET, SO_RCVBUF, ...);
通过setsockopt设置SO_RCVBUF设置。
setsockopt(SOCKET, SOL_SOCKET, SO_RCVBUF, ...);
3. TCP如果系统缓冲区满,如果没有及时recv接收的话,就不能再发送数据了,send就会失败,UDP的话,如果接收端的SOCKET的系统buffer满了,后面到来的包会被丢掉。
fishion
2012-02-17
打赏
举报
回复
setsockopt,指定SO_RCVBUF设置接收缓冲区大小写。如果数据超过了缓冲区能接收的大小,那系统就不会再接收发过来的数据
smwhotjay
2012-02-17
打赏
举报
回复
mysql配置文件的解释
mysql配置文件的解释。
linux
socket
接收
缓存
,linux
socket
缓存
问题:同时与多个主机建立连接,如果这些主机同时发生数据到本地,本地又没有调用recv接收,
会
是什么情况?解答:系统为每个
socket
建立一个
缓存
,IP层组包进程在收到数据包后
会
把数据放入
socket
缓存
。应用程序通过
socket
系统调用和远程主机进行通讯,每一个
socket
都有一个读写缓冲区。读缓冲区保存了远程主机发送过来的数据,如果读缓冲区已满,则数据
会
被丢弃。写缓冲期保存了要发送到远程主机的数...
java tcp内存
溢出
_java栈内存
溢出
咋产生?jvm给每个
socket
连接的receive
缓存
区分37KB内存...
java栈内存
溢出
场景是什么,怎么验证?堆内存
溢出
和stackoverflow就不说啦。说的是outOfMemory补充下我谈①下自己的看法(我们的讨论限定于比较常见的HotSpot VM):①.线程栈内存:线程创建时,线程占用的栈内存
大小
可以通过-Xss设置,那么我们可以认为 栈的深度X栈桢所占用内存=线程的栈内存
大小
。那么对①个线程而言,是
会
先达到线程的栈深度限制(StackOverFlowE...
25 | 过期
缓存
:如何防止
缓存
被流量打穿?
这一讲我们将对一直零散介绍的
缓存
做个全面的总结,同时讨论如何解决
缓存
被流量打穿的场景。在分布式系统中,
缓存
无处不在。比如,浏览器
会
缓存
用户 Cookie,CDN
会
缓存
图片,负载均衡
会
缓存
TLS 的握手信息,Redis
会
缓存
用户的 session,MySQL
会
缓存
select 查询出的行数据,HTTP/2
会
用动态表
缓存
传输过的 HTTP 头部,TCP
Socket
Buffer
会
缓存
TCP 报文,Page Cache
会
缓存
磁盘 IO,CPU
会
缓存
主存上的数据,等等。
关于Linux TCP接收
缓存
以及接收窗口的一个细节解析
关于Linux TCP接收
缓存
以及接收窗口的一个细节解析_Netfilter,iptables/OpenVPN/TCP guard:-(-CSDN博客_linux tcp
缓存
关于TCP的接收
缓存
以及通告窗口,一般而言懂TCP的都能说出个大概,但是涉及到细节的话可能理解就不那么深入了。由于我最近的工作与TCP有关,顺便又想起了很久之前遇到的一个问题:明明在接收端有8192字节的接收
缓存
,为什么收了不到8000字节的数据就ZeroWindow了呢?当时我的解决方案是直接扩大接收
缓存
完事,然后就没有然后了。后来深
网络编程
18,363
社区成员
64,187
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章