- 博客(17)
- 资源 (20)
- 问答 (15)
- 收藏
- 关注
原创 ThreadLocal详解
定义ThreadLocal的作用是提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递的复杂度。源码分析ThreadLocal的实现是这样的:每个Thread 维护一个 ThreadLocalMap 映射表,这个映射表的 key 是 ThreadLocal实例本身,value 是真正需要存储的 Object。也就是说 ThreadLocal 本身并不存储值,它只是作为一个 key 来让线程从 ThreadLocalMap 获取 value。值
2020-09-09 16:50:43
149
原创 Mongodb基础介绍
一种NoSQL(非关系型数据库)数据库关系型数据库的三个特点:1.事务,2.表关联,3.表结构约束。而非关系型数据库无事务可以大大提高性能。数据库之间没有关联。key-value结构没有表约束。MapReduce分发归纳Mongodb提供对MapReduce内置引擎的支持去热点、数据均匀Chunk数据会以 chunk 为单位(默认64MB)根据 shardKey 分散到后端1或多个 shard 上。①当一个chunk的大小超过配置中的chunk size时,MongDB的后
2020-08-03 17:02:50
205
原创 Mongodb复合索引使用规则
1、非多多益善 2、最左前缀原则 [A,B,C]:[A]、[A,B]、[A,B,C] 3、查询条件顺序无关 4、查询优化器
2020-08-03 16:56:51
1036
原创 异常处理规范
1、在框架层面粗狂的捕获和处理异常不可取的。2、finally代码块中的异常需要注意,避免覆盖原始异常。3、不能将异常定义为静态变量,避免异常栈信息异常public class Main { public static void main(String[] args) { try { wrong(); } catch (Exception ex) { System.out.println("createO
2020-05-10 21:00:13
500
原创 Redis持久化与主从同步原理
Redis持久化概念持久化保证了即使 redis 服务重启也能保留数据,主要有以下两种方式来实现持久化:1、RDB:在指定的时间间隔内生成数据集的时间快照(point-in-timeanapshot)。2、AOF:记录服务器执行的所有写操作命令,并在服务器启动时,通过重写执行这些命令来还原数据集。Redis的主从复制概念 主 redis 中的数据和从 red...
2020-04-16 10:45:15
286
1
原创 哈希函数
避免哈希冲突的两种方式①开放寻址法 当一个Key通过哈希函数获取的对应下标被占用就寻找下一个空档位置。②链表法 每一个元素不仅是一个Entry对象,还是一个链表的头结点。每一个Entry对象通过next指针指向下一个Entry节点...
2020-03-31 20:09:45
134
原创 Redis性能优化注意点
Redis单线程的理解 同一时间只只占用一个CPU,只能有一个指令在运行,并行是不存在的。本文我们将使用以下手段,来提升 Redis 的运行速度:缩短键值对的存储长度; 使用 lazy free(延迟删除)特性; 设置键值的过期时间; 禁用长耗时的查询命令; 使用 slowlog 优化耗时命令; 使用 Pipeline 批量操作数据; 避免大量数据同时失效; 客...
2020-03-26 10:22:49
445
原创 代码精进——重构
1、重构的目的 对软件内部结 构的改善,目的是在不改变软件的可见行为的情况下,使其更易理解,修改成本更低。在保持功能不变的前提下, 利用设计思想、原则、模式、编程规范等理论来优化代码,修改设计上的不足,提高代码质。 随着业务需求等因素的不断迭代,代码总会越写越乱,造成维护成本过高,所以重构代码是不可避免的。...
2020-02-08 20:10:50
209
原创 初识Mongodb
一种NoSQL(非关系型数据库)数据库 关系型数据库的三个特点:1.事务,2.表关联,3.表结构约束。而非关系型数据库无事务可以大大提高性能。数据库之间没有关联。key-value结构没有表约束。MapReduce分发归纳 Mongodb提供对MapReduce内置引擎的支持去热点、数据均匀Chunk 数据会以 chunk 为单位(默认64MB)根据...
2019-12-01 21:22:47
146
原创 Mongodb之Chunk研究
数据分布策略Sharded cluster支持将单个集合的数据分散存储在多个shard上,用户可以指定根据集合内文档的某个字段即shard key来分布数据,目前主要支持2种数据分布的策略,范围分片(Range based sharding)或hash分片(Hash based sharding)。范围分片如上图所示,集合根据x字段来分片,x的取值范围为[minKey, maxKe...
2019-10-14 12:31:17
940
原创 分布式相关知识点
基本概念1、什么是分布式,什么是集群,二者有什么区别?2、分布式的 CAP理论、BASE理论?3、什么是分布式的数据一致性?4、2PC、3PC、TCC等还有就是和分布式相关的一些工具、框架、中间件等,如:1.消息队列:Kafka、ActiveMQ、RabbitMQ、RocketMQ2.RPC框架:Dubbo、gRPC3.分布式缓存:Redis、Memcached4....
2019-09-10 20:23:51
164
原创 设计模式中的主要原则
1、单一职责原则一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。from:百度百科2、开闭原则(Open Close Principle)开闭原则就是...
2019-09-06 09:24:37
101
原创 消息队列概要
学习资料:RocketMQ 官方文档: https://rocketmq.apache.org/docs/quick-start/RocketMQ 中国开发者中心:http://rocketmq.cloud/zh-cn/ Kafka 官方文档: http://kafka.apache.org/documentation/RabbitMQ 官方文档: https://www.rabb...
2019-09-05 20:07:22
125
原创 压力测试相关
使用Jmeter进行接口测试和压力测试的配置和使用https://blog.csdn.net/m0_37529303/article/details/75453230
2019-08-23 07:43:11
110
原创 设计模式分类总结
范围 创建型 结构型 行为型 对象创建 Singleton(单例) Prototype(原型) Factory Method(工厂方法) Abstract Factory(抽象工厂) Builder(建造者) ...
2019-08-21 10:13:51
71
原创 java基础
为什么要使用内部类?①主要原因:使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。②内部类的其他好处 1、内部类可以用多个实例,每个实例都有自己的状态信息,并且与其他外围对象的信息相互独立。2、在单个外围类中,可以让多个内部类以不同的方式实现同一个接口,或者继承同一个类...
2019-04-29 10:14:51
632
转载 RxJava学习总结
https://www.jianshu.com/p/44a513d4c38a总结:①在 RxJava 中 doFinally 和 doAfterTerminate 这两个操作符很类似,都会在 Observable 的 onComplete 或 onError 调用之后进行调用。②doFinally 除了拥有 doAfterTerminate 的特性之外,还会在下游(downstream...
2019-04-23 17:59:15
107
针对一个字段,sql如何实现高效的多值查询
2016-11-29
如何给一下抽象类写一个泛型单例
2016-11-09
java short 类型转换问题
2016-10-25
JAVA如何快色的比较两个类里面的值是否相同
2016-10-24
如何高效实现以下需求
2016-10-21
如何利用java写一个定时任务,每天删除文件
2016-10-21
Java是否可以实现类似C#一样的泛型约束
2016-10-21
Spring java.lang.NullPointerException异常
2016-10-18
在MyEcplise中新建一个文件夹,但是显示的是一个包
2016-10-17
如何用JAVA写一个Windows服务
2016-10-17
如何用Java写一个控制台程序
2016-10-12
如何用MyEcplise打开一个项目文件
2016-09-23
SSIS 将数据导入数据库问题
2015-04-24
将一个var类型乱序执行
2015-04-24
服务器提交了协议冲突 Section=ResponseStatusLine
2015-04-02
TA创建的收藏夹 TA关注的收藏夹
TA关注的人