09 2022 档案
摘要:
点击查看代码 package main func add(x,y int) *int{ res := 0 res = x + y return &res } func main() { add(1,2) }  *int{ res := 0 res = x + y return &res } func main() { add(1,2) }  IncrAge1(
阅读全文
点击查看代码 package main import "fmt" type Person struct { age int } // 如果实现了接收者是指针类型的方法,会隐含地也实现了接收者是值类型的IncrAge1方法。 // 会修改age的值 func (p *Person) IncrAge1(
阅读全文
摘要:
分层?为什么要分层? 应用层:为计算机用户提供接口和服务 表示层:数据处理(编码解码、加密解密) 会话层:管理(建立、维护、重连)通信会话 传输层:管理端到端的通信连接 网络层:数据路由(决定数据在网络的路径) 数据链路层:管理相邻节点之间的数据通信 物理层:数据通信的光电物理特性 网络层 OSI模
阅读全文
分层?为什么要分层? 应用层:为计算机用户提供接口和服务 表示层:数据处理(编码解码、加密解密) 会话层:管理(建立、维护、重连)通信会话 传输层:管理端到端的通信连接 网络层:数据路由(决定数据在网络的路径) 数据链路层:管理相邻节点之间的数据通信 物理层:数据通信的光电物理特性 网络层 OSI模
阅读全文
摘要:
Producer发送模式 同步发送 异步发送 异步发送回调 Producer源码讲解 Producer发送流程:1.构建对象 2.发送消息 KafkaProducer构建clientId,为了给metricConfig(上报指标),初始化Serializer,加载partition负载均衡器,初始化
阅读全文
Producer发送模式 同步发送 异步发送 异步发送回调 Producer源码讲解 Producer发送流程:1.构建对象 2.发送消息 KafkaProducer构建clientId,为了给metricConfig(上报指标),初始化Serializer,加载partition负载均衡器,初始化
阅读全文
摘要:
不同的业务场景下,应该选择普通索引还是唯一索引? 查询过程 select id from T where k = 5 这个查询语句在索引树上查找过程:显示通过B+树从树根开始,按层搜素叶子节点,也就是图中右上角的这个数据页,然后可以认为数据页内部通过二分法来定位记录 对于普通索引来说,查找到满足条件
阅读全文
不同的业务场景下,应该选择普通索引还是唯一索引? 查询过程 select id from T where k = 5 这个查询语句在索引树上查找过程:显示通过B+树从树根开始,按层搜素叶子节点,也就是图中右上角的这个数据页,然后可以认为数据页内部通过二分法来定位记录 对于普通索引来说,查找到满足条件
阅读全文
摘要:
可重复读隔离级别,事务T启动的时候会创建一个read-view,之后事务T执行期间,即使其他事务修改了数据,事务T看到仍然在启动时看到的一样。也就是说,一个可重复读的隔离级别下执行的事务,好像与世无争,不受影响,那么等到事务自己获取到行锁更新数据的时候,它读到的是什么呢? begin/start t
阅读全文
可重复读隔离级别,事务T启动的时候会创建一个read-view,之后事务T执行期间,即使其他事务修改了数据,事务T看到仍然在启动时看到的一样。也就是说,一个可重复读的隔离级别下执行的事务,好像与世无争,不受影响,那么等到事务自己获取到行锁更新数据的时候,它读到的是什么呢? begin/start t
阅读全文
摘要:
根据加锁的范围,Mysql里面的锁大致可以分成全局锁、表级锁和行锁 全局锁 Flush tables with read lock。当你需要整个库处于只读状态的时候,可以使用这个命令,之后其他线程以下语句会被阻塞;数据更新语句(数据的增删改)、数据定义语句(包括建表、修改表结构等)和更新类事务的提交
阅读全文
根据加锁的范围,Mysql里面的锁大致可以分成全局锁、表级锁和行锁 全局锁 Flush tables with read lock。当你需要整个库处于只读状态的时候,可以使用这个命令,之后其他线程以下语句会被阻塞;数据更新语句(数据的增删改)、数据定义语句(包括建表、修改表结构等)和更新类事务的提交
阅读全文
摘要:
索引是怎样工作的? 索引的出现是提高数据查询效率,就像教科书中的目录一样。 索引的常见模型 哈希表 哈希表是一种以键值存储的结构,我们只需要输入待查找的键即为key,就可以找到对应的值Value.哈希的思路很简单,把值放大数组里,用一个哈希函数把key换算成一个确定的位置,然后把value放在数组的
阅读全文
索引是怎样工作的? 索引的出现是提高数据查询效率,就像教科书中的目录一样。 索引的常见模型 哈希表 哈希表是一种以键值存储的结构,我们只需要输入待查找的键即为key,就可以找到对应的值Value.哈希的思路很简单,把值放大数组里,用一个哈希函数把key换算成一个确定的位置,然后把value放在数组的
阅读全文
摘要:
查询余额、做加减法、更新余额等,这些操作必须保证是一体的,不然等程序查完之后,还没做减法之前,你这100块,完全可以借着这个时间再查一次,然后再给另外一个朋友转账,如果银行这么整,不就乱了么? 事务就是保证一组数据库操作,要么全部成功,要么全部失败。在Mysql中,事务支持是在引擎层实现的。Mysq
阅读全文
查询余额、做加减法、更新余额等,这些操作必须保证是一体的,不然等程序查完之后,还没做减法之前,你这100块,完全可以借着这个时间再查一次,然后再给另外一个朋友转账,如果银行这么整,不就乱了么? 事务就是保证一组数据库操作,要么全部成功,要么全部失败。在Mysql中,事务支持是在引擎层实现的。Mysq
阅读全文
摘要:
前篇我们知道,一个查询语句的执行流程,并介绍执行过程中涉及的模块,一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎 一条更新语句的执行流程 update T set c = c + 1 where ID = 2 首先连接器的工作,TCP三次握手,账号密码校验
阅读全文
前篇我们知道,一个查询语句的执行流程,并介绍执行过程中涉及的模块,一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎 一条更新语句的执行流程 update T set c = c + 1 where ID = 2 首先连接器的工作,TCP三次握手,账号密码校验
阅读全文
摘要:
执行一条查询语句,看整体流程 select * from T where ID = 10 大体上,Mysql分为Server层和存储引擎层两部分。 Server层包括连接器、查询缓存、分析器、优化器、执行器。涵盖Mysql的大多数核心服务功能,以及所有的内置函数(日期、时间、数学和加密函数等) 所以
阅读全文
执行一条查询语句,看整体流程 select * from T where ID = 10 大体上,Mysql分为Server层和存储引擎层两部分。 Server层包括连接器、查询缓存、分析器、优化器、执行器。涵盖Mysql的大多数核心服务功能,以及所有的内置函数(日期、时间、数学和加密函数等) 所以
阅读全文
摘要:SpringCloud Sleuth SpringCloud Sleuth实现的功能:它是自动为当前应用构建各通信通道的跟踪机制 通过RabbitMQ、Kafka(或者其他任何SpringCloud Stream绑定器实现的消息中间件传递的请求) 通过Zuul、Gateway代理传递请求 通过Res
阅读全文
摘要:
逃逸分析有什么作用 c/c++毒药,go蜜糖。 c/c++内存是手动释放的,导致程序写代码的时候,程序员如履薄冰。 golang堆栈内存透明,golang将复杂的内存机制交给了编译器。 golang的逃逸分析将变量内存分配的该去的地方,局部变量优先分配到栈上,全局变量分配到堆上 如果变量都分配到堆上
阅读全文
逃逸分析有什么作用 c/c++毒药,go蜜糖。 c/c++内存是手动释放的,导致程序写代码的时候,程序员如履薄冰。 golang堆栈内存透明,golang将复杂的内存机制交给了编译器。 golang的逃逸分析将变量内存分配的该去的地方,局部变量优先分配到栈上,全局变量分配到堆上 如果变量都分配到堆上
阅读全文
摘要:SpringCloud Gateway的作用 路由转发,它与第一代网关Zuul不同的是:gateway是同步非阻塞的(netty+webflux实现的);Zuul是同步阻塞的。 SpringCloud Gateway工作模型及其解读 请求发送到网关,经由分发器请求匹配到相应的HandlerMappi
阅读全文
摘要:
JWT的基本概念 JSON WEB Token是一种开放标准,它定义一种紧凑、自包含的方式,用于作为JSON对象在各方之间安全传输消息。 JSON服务器通过每次校验整个返回的JSON数据 JWT的结构及其含义 JWT由三个部分组成:Header、Payload(真实的数据)、Signature(签名
阅读全文
JWT的基本概念 JSON WEB Token是一种开放标准,它定义一种紧凑、自包含的方式,用于作为JSON对象在各方之间安全传输消息。 JSON服务器通过每次校验整个返回的JSON数据 JWT的结构及其含义 JWT由三个部分组成:Header、Payload(真实的数据)、Signature(签名
阅读全文
摘要:
Actuator Endpoints(端点) Endpoints是Actuator核心部分,它用来监视应用程序交互; SpringBoot Actuator 内置很多Endpoints,并支持扩展; SpringBoot Actuator提供原生端点三类: 应用配置类:自动配置信息、Spring B
阅读全文
Actuator Endpoints(端点) Endpoints是Actuator核心部分,它用来监视应用程序交互; SpringBoot Actuator 内置很多Endpoints,并支持扩展; SpringBoot Actuator提供原生端点三类: 应用配置类:自动配置信息、Spring B
阅读全文
摘要:
Alibaba Nacos基本架构解读 服务、配置服务、名字服务 服务 SpringCloud Restful Service集成服务 配置服务 动态配置信息,修改配置的时候可以无感知切换配置 名字服务 服务注册、服务发现 Alibaba Nacos概念解读 **服务注册中心:**它是服务,实例及元
阅读全文
Alibaba Nacos基本架构解读 服务、配置服务、名字服务 服务 SpringCloud Restful Service集成服务 配置服务 动态配置信息,修改配置的时候可以无感知切换配置 名字服务 服务注册、服务发现 Alibaba Nacos概念解读 **服务注册中心:**它是服务,实例及元
阅读全文
摘要:
dependencyManagement与dependencies区别 父模块声明 点击查看代码 <dependencyManagement> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connect
阅读全文
dependencyManagement与dependencies区别 父模块声明 点击查看代码 <dependencyManagement> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connect
阅读全文
摘要:
单体架构 优点:开发、部署、上线简单 缺点:耦合度高,牵一发懂全身 垂直应用架构 优点:服务部署独立、水平扩展容易 缺点:搭建复杂、服务之间关系错综复杂、维护困难 SOA架构 SOA架构粒度更粗,将一整块系统封装起来 微服务架构 微服务收益 单个服务语言的不受限制 对于整个应用来说,代码不再耦合不会
阅读全文
单体架构 优点:开发、部署、上线简单 缺点:耦合度高,牵一发懂全身 垂直应用架构 优点:服务部署独立、水平扩展容易 缺点:搭建复杂、服务之间关系错综复杂、维护困难 SOA架构 SOA架构粒度更粗,将一整块系统封装起来 微服务架构 微服务收益 单个服务语言的不受限制 对于整个应用来说,代码不再耦合不会
阅读全文

浙公网安备 33010602011771号