摘要: “要把知识梳理成系统的结构,要让头脑中的知识层次清楚,为此,我们需要阅读恰当的东西,需要不断地练习,需要克服种种困难。 成长没有捷径可走。需要的是一个一个坚实的突破。” http://zhangtielei.com/posts/blog-programmer-learn.html 阅读全文
posted @ 2021-06-03 17:52 技术-刘腾飞 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 自定义同步器 假如你想要实现一个自定义同步器,官方推荐的做法是将继承了AQS类的子类作为自定义同步器的内部类,而自定义同步器中相关的操作只需代理成子类中对应的方法即可。往下用一个简单的例子看看如何实现自己的锁,由于同步器被分为两种模式,独占模式和共享模式,所以例子也对应给出。 独占式 独占模式采取的 阅读全文
posted @ 2020-12-08 16:49 技术-刘腾飞 阅读(235) 评论(0) 推荐(0) 编辑
摘要: AOP AOP面向切面编程,生成目标方法所属类的代理类。代理类和目标类的关系:代理类继承目标类,并重载了目标类的方法。代理类重载方法体里加入了切面业务逻辑和目标类方法的调用。 用户如何使用:从容器中获取目标类,实际上是获取代理类的实例, 代理类实例调用重载了父类的方法,就实现了AOP。 AOP为As 阅读全文
posted @ 2020-12-05 18:03 技术-刘腾飞 阅读(116) 评论(0) 推荐(0) 编辑
摘要: ElasticSearch一看就懂之分词器edge_ngram和ngram的区别 1 year ago edge_ngram和ngram是ElasticSearch自带的两个分词器,一般设置索引映射的时候都会用到,设置完步长之后,就可以直接给解析器analyzer的tokenizer赋值使用。 这里 阅读全文
posted @ 2020-11-16 20:18 技术-刘腾飞 阅读(2512) 评论(0) 推荐(0) 编辑
摘要: 简介 对于用户来说,响应的快慢是判断一个系统的重要指标,缓存就是必不可少的优化工具,在一个高并发的场景中往往占有着非常重要的角色,所以开发人员需要根据不同的应用场景来选择不同的缓存框架,比如分布式缓存redis,或者进程缓存GuavaCache。 收存储的元素,而GuavaCache是一款非常优秀的 阅读全文
posted @ 2020-11-07 14:45 技术-刘腾飞 阅读(625) 评论(0) 推荐(0) 编辑
摘要: struct -- 结构体 struct Go语言中,也和C或者其他语言一样,我们可以声明新的类型,作为其它类型的属性或字段的容器。 例如,我们可以创建一个自定义类型person代表一个人的实体。 这个实体拥有属性:姓名和年龄。这样的类型我们称之struct。 如下代码所示: type person 阅读全文
posted @ 2020-10-27 10:45 技术-刘腾飞 阅读(219) 评论(0) 推荐(0) 编辑
摘要: main函数和init函数 Go里面有两个保留的函数:init函数(能够应用于所有的package)和main函数(只能应用于package main)。 这两个函数在定义时不能有任何的参数和返回值。 虽然一个package里面可以写任意多个init函数,但这无论是对于可读性还是以后的可维护性来说, 阅读全文
posted @ 2020-10-26 16:21 技术-刘腾飞 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 传值与传指针 当我们传一个参数值到被调用函数里面时,实际上是传了这个值的一份copy, 当在被调用函数中修改参数值的时候,调用函数中相应实参不会发生任何变化,因为数值变化只作用在copy上。 为了验证我们上面的说法,我们来看一个例子 package main import "fmt" //简单的一个 阅读全文
posted @ 2020-10-26 16:07 技术-刘腾飞 阅读(474) 评论(0) 推荐(0) 编辑
摘要: Go语言中的内建函数new和make是两个用于内存分配的原语(allocation primitives)。简单来说,new只分配内存,make用于slice,map,和channel的初始化。 内置函数new按指定类型长度分配零值内存,返回指针,并不关心类型内部构造和初始化方式。 内置函数make 阅读全文
posted @ 2020-10-26 15:55 技术-刘腾飞 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 粘包和拆包 产生粘包和拆包问题的主要原因是,操作系统在发送TCP数据的时候,底层会有一个缓冲区,例如1024个字节大小,如果一次请求发送的数据量比较小,没达到缓冲区大小,TCP则会将多个请求合并为同一个请求进行发送,这就形成了粘包问题;如果一次请求发送的数据量比较大,超过了缓冲区大小,TCP就会将其 阅读全文
posted @ 2020-10-23 15:58 技术-刘腾飞 阅读(802) 评论(0) 推荐(0) 编辑