能将三次握手理解到这个深度,面试官拍案叫绝!
能将三次握手理解到这个深度,面试官拍案叫绝! 原创张彦飞allen开发内功修炼2021-07-22 08:28 收录于话题#开发内功修炼之网络篇30个 大家好,我是飞哥! 在后端相关岗位的入职面试中,三次握手的出场频率非常的高,甚至说它是必考题也不为过。一般的答案都是说客户端如何发起 SYN 握手进入 SYN_SENT 状态,服务器响应 SYN 并回复 SYNACK,然后进入 SYN...
能将三次握手理解到这个深度,面试官拍案叫绝! 原创张彦飞allen开发内功修炼2021-07-22 08:28 收录于话题#开发内功修炼之网络篇30个 大家好,我是飞哥! 在后端相关岗位的入职面试中,三次握手的出场频率非常的高,甚至说它是必考题也不为过。一般的答案都是说客户端如何发起 SYN 握手进入 SYN_SENT 状态,服务器响应 SYN 并回复 SYNACK,然后进入 SYN...
应读者要求,今天分享单机百万 TCP 连接测试源码 原创张彦飞allen开发内功修炼2021-02-18 19:08 收录于话题#开发内功修炼之网络篇30个 点击上方蓝字”开发内功修炼“,关注并设为星标 飞哥的硬核文章将第一时间送达~~~ 在看完服务器、客户端的两篇单机达成百万 TCP 连接的文章以后,有很多同学反馈也想实际动手做做实验,感受一下。为了方便大家,我今天就把我实验时使...
synchronized关键字的基本语义 synchronized锁什么? 锁对象。是一个对象锁 可能锁的对象包括: this,临界资源对象,Class类对象
并发编程:ReentrantLock的加锁和解锁过程 ReentrantLock 和Aqs的关系 加锁流程 解锁流程 1. 和Aqs的关系 2. 加锁流程 第一个线程t1,第一次加锁,没有加锁之前 aqs(NonfairSync)的状态 t1加锁成功后 第二个线程t2尝试加锁,如果加锁成功 t2加锁失败,会创建队列 private N...
分布式事务( 图解 + 史上最全 + 吐血推荐 ) 参考链接系统架构知识图谱(一张价值10w的系统架构知识图谱) https://www.processon.com/view/link/60fb9421637689719d246739 秒杀系统的架构 https://www.processon.com/view/link/61148c2b1e08536191d8f92f 先来看下为...
设计模式简介 设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。 设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证...
📜 解释器模式 (Interpreter Pattern) 深度解析 1. 模式动机与定义 1.1. 模式动机:固定文法的解释执行 在软件开发中,我们经常需要处理一些具有固定文法规则的“语言”,例如正则表达式、SQL 查询、简单的数学表达式,或者领域特定语言 (DSL)。 核心问题:如何为这种语言定义一种表示方式,并使其能够解释该语言中的句子? 解决方案:解释器模式将语言的...
模板方法模式 (Template Method Pattern) 深度解析 1. 模式动机与定义 1.1. 模式动机:封装不变的算法骨架 在面向对象编程中,经常会遇到多个子类拥有基本相同的方法和逻辑,只是其中少数几个步骤的实现细节不同的情况。 问题:如果每个子类都重复编写这些通用方法,会导致代码冗余,难以维护。 解决方案:将这些公有的方法和算法流程提取到父类(抽象类)中,形...
过滤器(Filter):当你有一堆东西的时候,你只希望选择符合你要求的某一些东西。定义这些要求的工具,就是过滤器。 拦截器(Interceptor):在一个流程正在进行的时候,你希望干预它的进展,甚至终止它进行,这是拦截器做的事情。 监听器(Listener):当一个事件发生的时候,你希望获得这个事件发生的详细信息,而并不想干预这个事件本身的进程,这就要用到监听器。 一、Filter ...
🎯 策略模式 (Strategy Pattern) 深度解析 1. 模式动机与定义 1.1. 模式动机:灵活选择和替换算法 在完成一项任务时,往往可以有多种不同的方法或算法来实现同一功能(如查找、排序、计算等)。 问题:如果将所有算法硬编码在一个类中,并通过 if...else... 或 switch 语句选择执行,会导致: 封装算法的类将十分复杂且难以维...