- 博客(5)
- 收藏
- 关注
原创 实现基于epoll的reactor网络模型
后续会用这份 reactor 代码实现 http server(也就是C++选手熟知的烂大街的webserver)和 websocket server,后面还会更新知名的用 reactor 模型设计的网络库,如muduo等。它将数据从发送缓冲区写入到客户端套接字,并将套接字的事件重新设置为 EPOLLIN 以继续接收来自客户端的数据。reactor 将 io 管理,转变为事件管理,核心在于不同的 io 事件,对应不同的回调函数,先register(注册),后callback(回调)
2024-08-23 15:16:15
178
原创 IO多路复用(select/poll/epoll)——基础
本文主要介绍select/poll/epoll三大IO多路复用方法,主要介绍相关的函数使用。
2024-08-23 14:04:52
282
原创 socket网络编程——基础
使用套接字函数需要包含头文件 其实上述代码就是经典的一请求一线程模型,相比于大家所熟悉的IO多用复用,其实一请求一线程也不是一无是处,某种程度上来说是异步的,将IO就绪与IO收发数据分开,但是,一个请求就需要开一个线程,显然是很浪费资源的,并且 fd 也不好管理,如果有一种轻量级的线程就好了,也就是所谓的协程,这部分内容以后再详细讨论。
2024-08-22 19:04:59
876
原创 4台虚拟机实现百万并发
百万并发对epoll来说是小菜一碟,问题在于如何解除所有系统限制,可以打开的文件数量限制和五元组的限制是所有人都会遇到的问题,NAT表溢出是比较独特的问题,这两份代码是可以跑到百万并发的(在物理机性能不要太低的情况下),每个人系统的独特限制可能会不一样,如果你出现了新的问题,可以在评论区留言讨论!
2024-08-22 13:53:33
421
原创 VMware虚拟机无法联网ping不通
本人在测百万并发的时候,突然有一台虚拟机连不上网,把所有虚拟机重启之后居然都连不上网,也在网上查了不少博客,发现没有特别完整的解决方案,有些根本解决不了问题,所以本人整理了一下较为完整的虚拟机网络解决方案虚拟机版本:CentOS7.9。
2024-08-22 12:13:23
376
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人