Loading

摘要: 面试--Go函数返回局部变量的指针是否安全 点击查看代码 package main func add(x,y int) *int{ res := 0 res = x + y return &res } func main() { add(1,2) } ![image](https://img2022.cnblogs.com/blog/1670 阅读全文
posted @ 2022-09-20 17:03 DoDo神 阅读(37) 评论(0) 推荐(0)
摘要: 面试--Go方法值接收者和指针接收者区别 点击查看代码 package main import "fmt" type Person struct { age int } // 如果实现了接收者是指针类型的方法,会隐含地也实现了接收者是值类型的IncrAge1方法。 // 会修改age的值 func (p *Person) IncrAge1( 阅读全文
posted @ 2022-09-20 16:55 DoDo神 阅读(39) 评论(0) 推荐(0)
摘要: 计算机网络--TCP、UDP协议分别属于什么层 分层?为什么要分层? 应用层:为计算机用户提供接口和服务 表示层:数据处理(编码解码、加密解密) 会话层:管理(建立、维护、重连)通信会话 传输层:管理端到端的通信连接 网络层:数据路由(决定数据在网络的路径) 数据链路层:管理相邻节点之间的数据通信 物理层:数据通信的光电物理特性 网络层 OSI模 阅读全文
posted @ 2022-09-20 16:16 DoDo神 阅读(2649) 评论(0) 推荐(0)
摘要: kafka--Producer知识 Producer发送模式 同步发送 异步发送 异步发送回调 Producer源码讲解 Producer发送流程:1.构建对象 2.发送消息 KafkaProducer构建clientId,为了给metricConfig(上报指标),初始化Serializer,加载partition负载均衡器,初始化 阅读全文
posted @ 2022-09-20 09:44 DoDo神 阅读(52) 评论(0) 推荐(0)
摘要: 极客--普通索引和唯一索引应该怎样选择? 不同的业务场景下,应该选择普通索引还是唯一索引? 查询过程 select id from T where k = 5 这个查询语句在索引树上查找过程:显示通过B+树从树根开始,按层搜素叶子节点,也就是图中右上角的这个数据页,然后可以认为数据页内部通过二分法来定位记录 对于普通索引来说,查找到满足条件 阅读全文
posted @ 2022-09-19 22:36 DoDo神 阅读(43) 评论(0) 推荐(0)
摘要: 极客--事务到底是隔离还是不隔离 可重复读隔离级别,事务T启动的时候会创建一个read-view,之后事务T执行期间,即使其他事务修改了数据,事务T看到仍然在启动时看到的一样。也就是说,一个可重复读的隔离级别下执行的事务,好像与世无争,不受影响,那么等到事务自己获取到行锁更新数据的时候,它读到的是什么呢? begin/start t 阅读全文
posted @ 2022-09-19 21:19 DoDo神 阅读(29) 评论(0) 推荐(0)
摘要: 极客--全局锁和表锁、行锁 根据加锁的范围,Mysql里面的锁大致可以分成全局锁、表级锁和行锁 全局锁 Flush tables with read lock。当你需要整个库处于只读状态的时候,可以使用这个命令,之后其他线程以下语句会被阻塞;数据更新语句(数据的增删改)、数据定义语句(包括建表、修改表结构等)和更新类事务的提交 阅读全文
posted @ 2022-09-19 20:20 DoDo神 阅读(45) 评论(0) 推荐(0)
摘要: 极客--深入浅出索引 索引是怎样工作的? 索引的出现是提高数据查询效率,就像教科书中的目录一样。 索引的常见模型 哈希表 哈希表是一种以键值存储的结构,我们只需要输入待查找的键即为key,就可以找到对应的值Value.哈希的思路很简单,把值放大数组里,用一个哈希函数把key换算成一个确定的位置,然后把value放在数组的 阅读全文
posted @ 2022-09-18 16:06 DoDo神 阅读(24) 评论(0) 推荐(0)
摘要: 极客--事务隔离为什么你改了我还看不见? 查询余额、做加减法、更新余额等,这些操作必须保证是一体的,不然等程序查完之后,还没做减法之前,你这100块,完全可以借着这个时间再查一次,然后再给另外一个朋友转账,如果银行这么整,不就乱了么? 事务就是保证一组数据库操作,要么全部成功,要么全部失败。在Mysql中,事务支持是在引擎层实现的。Mysq 阅读全文
posted @ 2022-09-17 20:29 DoDo神 阅读(47) 评论(0) 推荐(0)
摘要: 极客--日志系统:一条SQL更新语句是如何执行的? 前篇我们知道,一个查询语句的执行流程,并介绍执行过程中涉及的模块,一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎 一条更新语句的执行流程 update T set c = c + 1 where ID = 2 首先连接器的工作,TCP三次握手,账号密码校验 阅读全文
posted @ 2022-09-15 21:58 DoDo神 阅读(63) 评论(0) 推荐(0)