上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 56 下一页
摘要: 1、分布式锁目前可能存在的问题(基于redis客户端jedis)加锁: set key value [expiration EX seconds|PX milliseconds] [NX|XX]该加锁方式是从Redis2.8之后便支持这种原子性加锁方式,之前设置setnx和设置过期时间不是原子性的。 阅读全文
posted @ 2021-06-28 15:16 郭慕荣 阅读(685) 评论(0) 推荐(0) 编辑
摘要: 一、复习跳跃表1.1 什么是跳跃表对于一个单链表来讲,即便链表中存储的数据是有序的,如果我们要想在其中查找某个数据,也只能从头到尾遍历链表。这样查找效率就会很低,时间复杂度会很高,是 O(n)。 如果我们想要提高其查找效率,可以考虑在链表上建索引的方式。每两个结点提取一个结点到上一级,我们把抽出来的 阅读全文
posted @ 2021-06-28 11:17 郭慕荣 阅读(212) 评论(0) 推荐(0) 编辑
摘要: using filesort 一般出现在 使用了 order by 语句当中。using filesort不一定引起mysql的性能问题。但是如果查询次数非常多,那么每次在mysql中进行排序,还是会有影响的。这里的优化方式是在order by 的字段建立索引,解决方法如下:从where条件开始,依 阅读全文
posted @ 2021-06-28 09:58 郭慕荣 阅读(621) 评论(0) 推荐(0) 编辑
摘要: Dubbo的集群容错策略正常情况下,当我们进行系统设计时候,不仅要考虑正常逻辑下代码该如何走,还要考虑异常情况下代码逻辑应该怎么走。当服务消费方调用服务提供方的服务出现错误时候,Dubbo提供了多种容错方案,缺省模式为failover,也就是失败重试。Failover Cluster:失败重试当服务 阅读全文
posted @ 2021-06-26 15:28 郭慕荣 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 一、为什么需要主从复制?1、在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情景,通过读从库也可以保证业务的正常运作。2、做数据的热备3、架构的扩展。业务量越来越大,I 阅读全文
posted @ 2021-06-25 15:11 郭慕荣 阅读(607) 评论(0) 推荐(0) 编辑
摘要: put多个线程同时向Node[]的同一个位置插入时,会发生覆盖,只有一个线程的操作会被保留。如下图源码,假如有A、B两个线程,同时在执行put且数组下标都为1,两个线程同时运行到第一个红框位置,判断tab[1]为null,A线程先执行tab[1]=NodeA,B线程再执行tab[1]=NodeB,这 阅读全文
posted @ 2021-06-24 13:27 郭慕荣 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 一.ArrayList继承了AbstractList,实现了List接口,底层实现基于数组,因此可以认为是一个可变长度的数组。二.在讲扩容机制之前,我们需要了解一下ArrayList中最主要的几个变量: //定义一个空数组以供使用 private static final Object[] EMPT 阅读全文
posted @ 2021-06-22 20:43 郭慕荣 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 有时候需要索引很长的字符列,这会让索引变得大且慢。通常可以索引开始的部分字符,这样可以大大节约索引空间,从而提高索引效率。但这样也会降低索引的选择性。索引的选择性是指不重复的索引值(也称为基数,cardinality)和数据表的记录总数的比值,范围从1/T到1之间。索引的选择性越高则查询效率越高,因 阅读全文
posted @ 2021-06-17 11:54 郭慕荣 阅读(901) 评论(0) 推荐(0) 编辑
摘要: 一、前提概要什么是MVCC?MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问,在编程语言中实现事务内存。MVCC在MySQL InnoDB中的实现主要是为了提高数据库并发性 阅读全文
posted @ 2021-06-16 14:41 郭慕荣 阅读(24123) 评论(4) 推荐(6) 编辑
摘要: 幻读:幻读指的是一个事务在进行一次查询之后发现某个记录不存在,然后会根据这个结果进行下一步操作,此时如果另一个事务成功插入了该记录,那么对于第一个事务而言,其进行下一步操作(比如插入该记录)的时候很可能会报错。从事务使用的角度来看,在检查一条记录不存在之后,其进行插入应该完全没问题的,但是这里却抛出 阅读全文
posted @ 2021-06-15 18:02 郭慕荣 阅读(567) 评论(0) 推荐(0) 编辑
上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 56 下一页