草庐IT

1.5 万字 + 40 张图解 HTTP 常见面试题(值得收藏)

作者:小林coding图解计算机基础网站:https://xiaolincoding.com大家好,我是小林,我最开始写的第一篇图解文章就是这篇:那时候我也就不到100读者,如今这篇阅读都快2万了。当时这篇有些地方没有解释到位,然后我周末抽时间把一些没解释清楚的地方重写了,而且还增加HTTP缓存技术方面的面试题,文章的内容相比以前多了5000+字和10+张图。不多说了,发车发车!HTTP基本概念HTTP是什么?HTTP是超文本传输协议,也就是HyperTextTransferProtocol。能否详细解释「超文本传输协议」?HTTP的名字「超文本协议传输」,它可以拆成三个部分:超文本传输协议1

万字详解 TypeScript 高级用法

一、字面量类型在TypeScript中,字面量不仅可以表示值,还可以表示类型,即字面量类型。TypeScript支持以下字面量类型:字符串字面量类型;数字字面量类型;布尔字面量类型;模板字面量类型。1、字符串字面量类型字符串字面量类型其实就是字符串常量,与字符串类型不同的是它是具体的值:typeName="TS";constname1:Name="test";//❌不能将类型“"test"”分配给类型“"TS"”。ts(2322)constname2:Name="TS";实际上,定义单个字面量类型在实际应用中并没有太大的用处。它的应用场景就是将多个字面量类型组合成一个联合类型,用来描述拥有明确

万字解析:Spring Security实现OAuth2协议及实战

文章篇幅较长,愿读者耐心看完。如有不足之处,请指正。一.OAuth2介绍1.1OAuth2是什么怎么用OAuth2是目前最流行的授权协议,用来授权第三方应用,获取用户数据。举个例子:快递员想要进入小区,有3种方式。1是业主远程开门,2是业主告诉门禁密码,3是使用令牌(Oauth2)。如图:令牌和密码的区别:令牌相当于火车票,密码相当于是钥匙。令牌是短期的,自动失效。密码是长期有效。令牌是可以撤销的,撤销立即生效。密码一般不允许他们撤销。令牌有权限范围,如车票座位为10车A15座。密码一般是完整权限。第三方登录演示(网易云客户端利用QQ扫码登录)网易云客使用QQ扫码登录中Oauth2协议各个角色

[C++]:万字超详细讲解多态以及多态的实现原理(面试的必考的c++考点)

文章目录前言一、多态的定义及实现1.多态的构成条件2.c++11的override和final3.重载,重写,重定义的比较4.抽象类5.多态的原理6.多继承中的虚函数表7.动态绑定和静态绑定总结前言多态的概念:多态的概念:通俗来说,就是多种形态,具体点就是去完成某个行为,当不同的对象去完成时会产生出不同的状态。举个栗子:比如买票这个行为,当普通人买票时,是全价买票;学生买票时,是半价买票;军人买票时是优先买票。学习多态前我们必须知道虚函数,虚函数的关键字为virtual,虚函数与之前学的虚继承没有任何关系,只是共用了同一个关键字。虚继承是为了解决多继承中数据冗余和二义性的问题,而虚函数是为了实

万字详解滴滴弹性云混部的落地历程

混部是指将不同的业务服务根据其相关特征,部署到相同的物理机/虚拟机上,以达到尽可能在保证重点业务服务质量的前提下,提升整个集群资源利用率,进而降低总成本。根据混部的类型,可以分为在线服务的混部和在离线服务混部两种。其中在线混部又可以分为公共集群在线业务之间的混部和隔离集群在线业务和存储服务的混部,在离线混部主要是在线业务与离线业务进行混部。混部作为一种业界通用的降本的手段,充满着非常多的技术挑战,总结如下:如何对业务进行合理的分级,不同级别的服务QoS如何定义如何对业务进行精细化的画像,指导集群进行更合理的调度装箱,降低资源争抢的概率单机如何进行内核层面的资源隔离策略,包括CPU、内存、IO、

RabbitMQ从原理到实战—基于Golang【万字详解】

文章目录前言一、MQ是什么?优势劣势二、MQ的用途1、应用解耦2、异步加速3、削峰填谷4、消息分发三、RabbitMQ是什么1、AMQP协议2、RabbitMQ包含的要素3、RabbitMQ基础架构四、实战1、Simple模式(即最简单的收发模式)2、WorkQueues模型3、Publish/Subscribe模型4、Routing模型5、Topics模型前言最近秋招开始找工作,顺便回顾消息队列并且总结。一、MQ是什么?消息队列(MessageQueue)是一种在应用程序之间传递消息的通信模式。它通过在发送者和接收者之间建立一个消息队列来实现异步通信和解耦。在消息队列模式中,发送者(Prod

自制ADK To Win11PE,加入原生explorer,初步修改注册表(图文1.1万字,很细) (2)

书接上回全网首发,自制ADKToWin11PE(1)中文+包我这里用的win11版本是10.0.22621.963(22H2)pe的制作其实就是文件和注册表的修改加入而已,难谈不上,就是烦本文讲的就是加入explorer中的文件和注册表操作,可能仅适用于Win11,win10也许适用(11和10的内核一样)Win11PE加入explorer1.权限更改1.1更改所有者为当前用户1.2替换子容器所有者1.3继承1.4添加当前用户权限1.5补充2.文件加入2.1tasklist2.1.1获取文件列表并去重2.2DependencyWalker2.3借鉴前人的文件列表(推荐小白!)3.注册表修改3.

万字详解map与set

文章目录一、map和set是什么?概念模型二、SetSet的特性Set的三种遍历方法三、Set的实现类HashSetLinkedHashSetTreeSet四、MapMap的特性TreeSet和HashSet的区别Map的三种遍历方式五、Map的实现类HashMapLinkedHashMapTreeMap六、小试牛刀一、map和set是什么?概念Map和set是一种专门用来进行搜索的容器或者数据结构,其搜索的效率与其具体的实例化子类有关。以前常见的搜索方式有:直接遍历,时间复杂度为O(N),元素如果比较多效率会非常慢二分查找,时间复杂度为,但搜索前必须要求序列是有序的上述排序比较适合静态类型的

Go 编程起航:十万字总结助你开启编程大门 - Golang 基础篇

文章目录程序元素标识符关键字字面量分隔符运算符注释常量变量变量声明init函数匿名变量基本数据类型基本数据类型类型转换基本类型转String类型复合数据类型数组数组声明数组初始化数组元素访问多维数组切片切片声明

Spring Boot项目中热点场景详解(万字总结)

前言「作者主页」:雪碧有白泡泡「个人网站」:雪碧的个人网站「推荐专栏」:★java一站式服务★★React从入门到精通★★前端炫酷代码分享★★从0到英雄,vue成神之路★★uniapp-从构建到提升★★从0到英雄,vue成神之路★★解决算法,一个专栏就够了★★架构咱们从0说★★数据流通的精妙之道★★后端进阶之路★文章目录前言引言优化数据库常用方法外键场景一:选择关联表还是添加字段选择搜索方式场景一:and和or选择查询方式后端整合Swagger+Knife4j接口文档Swagger原理:session共享——分布式操作方法序列化器——自定义序列化进一步优化——缓存预热操作思路再一次优化——分布