java
杂念玩儿蛋去
这个作者很懒,什么都没留下…
展开
-
一次SpringBoot 整合Dubbo踩坑
其实也不能算是踩坑,可能是自己比较坑。最近打算搭个SpringBoot + Dubbo的demo,项目是成功跑起来了。但是有个问题,就是Dubbo的生产者服务,报的异常会抛给消费者,这点没什么,因为是Dubbo自己本身的机制,怪就怪在异常跑出去后,Dubbo框架居然没有打印异常的堆栈。所有在生产者产生的异常,都在消费者打印出来。举个栗子图中右侧高亮部分,按理说肯定会报数组越界异...原创 2019-07-02 12:48:46 · 504 阅读 · 0 评论 -
Redis数据结构
Redis的数据结构Redis有5种基础数据结构,分别为:string (字符串)、list (列表)、set (集合)、hash (哈希) 和 zset (有序集合)。String字符串,redis中的所有数据结构都是k-v结构。String的使用非常广泛,一般作为缓存减轻数据库压力时,就是把数据转换为json字符串存如redis,使用时再取出来反序列化。Redis的字符串...原创 2019-05-19 13:15:52 · 215 阅读 · 0 评论 -
MySQL的索引
B+Tree引用文章:https://www.cnblogs.com/dongguacai/p/7241860.html所有数据都保存在叶子节点上。相较于B树,范围查找效率更高。即MySQL的InnoDB引擎,表中数据都是根据主键的索引顺序存放。每一个索引在InnoDB中都对应一个B+树。主键索引就是建表时候有primary key的字段,比如说id。又叫聚簇索引。...原创 2019-04-01 21:55:59 · 145 阅读 · 0 评论 -
MySQL的锁
锁的种类1.全局锁FTWRL顾名思义,对整个数据库实例加锁。FTWRL : MySQL提供的对数据库实例加全局锁的方法 Flush tables with read lock对应的释放锁:UNLOCK TABLES这个命令,让数据库实例处于只读状态,以下操作会被锁住(阻塞),数据更新语句(数据的增删改)、数据定义语句(包括建表、修改表结构等)和更新类事物的提交语句。场景:一般锁全库...原创 2019-02-24 21:06:20 · 153 阅读 · 0 评论 -
实际开发中缓存应用
实际开发中缓存应用缓存应该放在哪?1.先淘汰缓存2.先修改DB3.双淘汰缓存为什么不是更新缓存而是淘汰缓存?缓存击穿缓存应该放在哪?中所周知,缓存作为分担数据库压力的NOSQL数据库,设置的位置正确,可以提高很多效率。但是,如果放的位置不正确,很可能导致线上BUG。一般来说,代码实现都是 先查缓存→有数据直接返回 →没有数据查询MySQL→设置缓存。查询的话这种没问题。如果是高并发下修改数...原创 2019-02-22 22:39:59 · 439 阅读 · 0 评论 -
MySQL事物隔离级别
MySQL事物隔离级别MySQL的引擎事物隔离级别读未提交读提交可重复读串行化读提交功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与...原创 2018-12-09 11:32:41 · 131 阅读 · 0 评论 -
动态代理浅析
一、简单来说: JDK动态代理只能对实现了接口的类生成代理,而不能针对类 CGLIB是针对类实现代理,主要是对指定的类生成一个子类,覆盖其中的方法(继承)二、Spring在选择用JDK还是CGLiB的依据: (1)当Bean实现接口时,Spring就会用JDK的动态代理 (2)当Bean没有实现接口时,Spring使用CGlib是实现 (3)可以强制使用CG...原创 2018-09-05 10:38:11 · 135 阅读 · 0 评论