qq18457852
qq18457852
全部文章
分类
c++(55)
Linux内核与操作系统(12)
linux系统编程与网络编程(31)
代码随笔(4)
分布式系统与中间件(1)
服务器架构设计(2)
深度学习(6)
网络与数据库(7)
设计模式(2)
题解(1)
归档
标签
去牛客网
登录
/
注册
qq18457852的博客
全部文章
(共121篇)
服务器设计:心跳机制
心跳机制是定时发送一个自定义的结构体(心跳包),让对方知道自己还活着,以确保连接的有效性的机制。 应用场景: 在长连接下,有可能很长一段时间都没有数据往来。理论上说,这个连接是一直保持连接的,但是实际情况中,如果中间节点出现什么故障是难以知道的。更要命的是,有的节点(防火墙)会自动把一定时间之内...
2019-12-19
0
984
tcp长连接保活与心跳机制
TCP Keepalive的起源 TCP协议中有长连接和短连接之分。短连接环境下,数据交互完毕后,主动释放连接; 长连接的环境下,进行一次数据交互后,很长一段时间内无数据交互时,客户端可能意外断电、死机、崩溃、重启,还是中间路由网络无故断开,这些TCP连接并未来得及正常释放,那么,连接的另一方并不...
2019-12-19
0
619
reactor模式与事件驱动
https://blog.csdn.net/baidu20008/article/details/41378761
2019-12-19
0
506
trivial,non-trival, pod
Trivial(平凡)和Non-Trivial(不平凡)是对于class(类)的或者类中的四个函数而言的: 1.构造函数 2.拷贝构造函数 3.赋值函数 4.析构函数 Trivial 其中Trivial(平凡)的概念本人的理解是无意义的,Trivial是相对于Non-Tr...
2019-12-19
0
1128
mutable
常函数就是带const修饰的函数,为什么要有常函数这个概念,因为为了封装的良好性,优势我们用到的一些函数并不需要我们去改变类中的参数,和成员变量,仅仅只是为了显示和输出的作用,因此才引进常函数,multable的英文意思主要是可变的,我们了解到c++中,一件事情并不是绝对的,如果有常函数,那么一定有...
2019-12-19
0
489
c++内存对象模型
http://mp.blog.csdn.net/postedit
2019-12-19
0
432
c和c++内存模型
C分为四个区:堆,栈,静态全局变量区,常量区 C++内存分为5个区域(堆栈全常代 ): 堆 heap : 由new分配的内存块,其释放编译器不去管,由我们程序自己控制(一个new对应一个delete)。如果程序员没有释放掉,在程序结束时OS会自动回收。涉及的问题:“缓冲区溢出”、“内存泄露...
2019-12-19
0
505
udp实现可靠传输
做项目正好需要用可靠传输UDP来做传输层,基本思路还是在应用层模仿TCP,超时重传,滑动窗口等机制,三次握手,四次挥手过于复杂,简化成了2次握手,仅确认SEQ或者ACK,如果没有收到正确的报文则重传报文。数据包在发送之前会先存到数据队列,实现缓存,每次发包从数据去取,超时重传时间,超时重传最大次数也...
2019-12-19
0
1140
服务器架构设计模式(一)
相比与单机程序设计,多机分布式程序面临着更多的挑战,比如网络通信,多机并发,临界区同步,事件的分离与处理,不同操作系统的移植性。要想开发出健壮的,性能优秀的,跨平台的服务器/中间件,需要十分有经验的架构师,开发能力十分强悍,对底层认识很深的程序员。而设计模式帮助缓解了很多内在的和偶然的软件复杂性。模...
2019-12-19
0
658
UML类图详解
UML类图在架构设计中还是很重要的,一篇总结类图很好的文章 UML类图与类的关系详解 虚线箭头指向依赖; 实线箭头指向关联; 虚线三角指向接口; 实线三角指向父类; 空心菱形能分离而独立存在,是聚合; 实心菱形精密关联不可分,是组合; 上面是UML的语法。 在画类图的时候,理清...
2019-12-19
0
617
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页