获得徽章 2
- #青训营笔记创作活动#
1月27日 day15
1.注释尽可能全面,写有意义的方法注释
2.项目拆分合理的目录结构
3. 不在循环里远程调用、或者数据库操作,优先考虑批量进行。
……展开评论点赞 - #青训营笔记创作活动#
1月26日 day14
个人区域网PAN(Personal Area Network),顾名思义可以是个人使用区域范围内的电脑等设备,用无线连接起来的网络。所以范围相对很小。
局域网LAN(Local Area Network),在地理上局限的范围,如1km左右。但可以将多个互连的局域网,来覆盖校园或者企业中。所以局域网也被称为校园网或企业网。
城域网MAN(Metropolitan Area Network),城域网的作用范围可跨越几个街区甚至整个城市,距离约也可以为5到50km,所以一般也是一个城市。
广域网WAN(Wide Area Network)范围通常为几十到几千公里,可以通过长距离运送主机所发送的数据,所以可以跨越不同国家,也是互联网的核心部分。展开评论点赞 - #青训营笔记创作活动#
1月25日 day13
本文的主要目的是在于先对MySQL的整体架构有一个基本认知,这也为咱们后续的文章打下了坚实的基础,因为毕竟想要深入研究一个技术,那定然不能如同管中窥豹一般,仅看一个细节点,而是更应该是先窥其全貌,再深入细节。展开评论点赞 - #青训营笔记创作活动#
1月24日 day12
文章开头通过抓包baidu的数据包,展示了用wireshark抓包的简单操作流程。
HTTPS会对HTTP的URL和Request Body都进行加密,因此直接在filter栏进行过滤http.host == "baidu.com"会一无所获。
HTTPS握手的过程中会先通过非对称机密去交换各种信息,其中就包括3个随机数,再通过这三个随机数去生成对称机密的会话秘钥,后续使用这个会话秘钥去进行对称加密通信。如果能获得这三个随机数就能解密HTTPS的加密数据包。
三个随机数,分别是客户端随机数(client random),服务端随机数(server random)以及pre_master_key。前两个,是明文,第三个是被服务器公钥加密过的,在客户端侧需要通过SSLKEYLOGFILE去导出。
通过设置SSLKEYLOGFILE环境变量,再让curl或chrome会请求HTTPS域名,会让它们在调用TLS库的同时导出对应的sslkey文件。这个文件里包含了三列,其中最重要的是第二列的client random信息以及第三列的pre_master_key。第二列client random用于定位,第三列pre_master_key用于解密。展开评论点赞 - #青训营笔记创作活动#
1月23日 day11
写出漂亮代码,需要一些规范:
1. 规范命名
2. 规范代码格式
3. 写好代码注释
4. try catch内部代码抽成一个方法
...展开评论点赞 - #青训营笔记创作活动#
1月22日 打卡day10
TCP为了实现可靠性,引入了重传机制、流量控制、滑动窗口、拥塞控制、分段以及乱序重排机制。而UDP则没有实现,因此一般来说TCP比UDP快。
TCP是面向连接的协议,而UDP是无连接的协议。这里的"连接"其实是,操作系统内核在两端代码里维护的一套复杂状态机。
大部分项目,会在基于UDP的基础上,模仿TCP,实现不同程度的可靠性机制。比如王者农药用的KCP其实就在基于UDP在应用层里实现了一套重传机制。
对于UDP+重传的场景,如果要传超大数据包,并且没有实现分段机制的话,那数据就会在IP层分片,一旦丢包,那就需要重传整个超大数据包。而TCP则不需要考虑这个,内部会自动分段,丢包重传分段就行了。这种场景下,其实TCP更快。展开评论点赞 - #青训营笔记创作活动#
1月21日 打卡day9
这篇文章挺有意思,与其说是技术文章,不如说是英语学习方法和搜索引擎使用方法,比较基础hhh评论点赞 - #青训营笔记创作活动#
1月20日 打卡day8
Kafka 和传统的消息系统(也称作消息中间件)都具备系统解耦、冗余存储、流量削峰、缓冲、异步通信、扩展性、可恢复性等功能。与此同时,Kafka 还提供了大多数消息系统难以实现的消息顺序性保障及回溯消费的功能。展开评论点赞 - #青训营笔记创作活动#
1月19日 打卡day7
使用HTTP不断轮询:存在卡顿
长轮询:将超时设置的很大,比如30s,在这30s内只要服务器收到了扫码请求,就立马返回给客户端网页。如果超时,那就立马发起下一次请求。
HTTP1.1,也是基于TCP协议的,同一时间里,客户端和服务器只能有一方主动发数据,这就是所谓的半双工。
websocket完美继承了TCP协议的全双工能力,并且还贴心的提供了解决粘包的方案。它适用于需要服务器和客户端(浏览器)频繁交互的大部分场景。比如网页/小程序游戏,网页聊天室,以及一些类似飞书这样的网页协同办公软件。
正因为各个浏览器都支持HTTP协议,所以websocket会先利用HTTP协议加上一些特殊的header头进行握手升级操作,升级成功后就跟HTTP没有任何关系了,之后就用websocket的数据格式进行收发数据。展开评论点赞 - #青训营笔记创作活动#
1月18日 打卡day6
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)
DHCP的工作原理也非常简单。
说白了,就是向某个管IP分配的服务器,也就是DHCP服务器,申请IP地址。其实一般家里用的路由器就自带这个功能。
DHCP Discover:在联网时,本机由于没有IP,也不知道DHCP服务器的IP地址是多少,所以根本不知道该向谁发起请求,于是索性选择广播,向本地网段内所有人发出消息,询问"谁能给个IP用用"。
DHCP Offer:不是DHCP服务器的机子会忽略你的广播消息,而DHCP服务器收到消息后,会在自己维护的一个IP池里拿出一个空闲IP,通过广播的形式给回你的电脑。
DHCP Request:你的电脑在拿到IP后,再次发起广播,就说"这个IP我要了"。
DHCP ACK:DHCP服务器此时再回复你一个ACK,意思是"ok的"。你就正式获得这个IP在一段时间(比如24小时)里的使用权了。后续只要IP租约不过期,就可以一直用这个IP进行通信了。展开评论点赞