摘要: 一、mycat注解 1.1、注解原理 概念 MyCat 对自身不支持的 Sql 语句提供了一种解决方案——在要执行的 SQL 语句前添加额外的一段由注解SQL 组织的代码,这样 Sql 就能正确执行,这段代码称之为“注解”。注解的使用相当于对 mycat 不支持的 sql语句做了一层透明代理转发,直 阅读全文
posted @ 2020-11-26 23:30 童话述说我的结局 阅读(759) 评论(0) 推荐(0) 编辑
摘要: 一、mycat分片规则 经过上一篇幅讲解,应该很清楚分片规则配置文件rule.xml位于$MYCAT_HOME/conf目录,它定义了所有拆分表的规则。在使用过程中可以灵活使用不同的分片算法,或者对同一个分片算法使用不同的参数,它让分片过程可配置化,只需要简单的几步就可以让运维人员及数据库管理员轻松 阅读全文
posted @ 2020-11-26 23:22 童话述说我的结局 阅读(530) 评论(0) 推荐(1) 编辑
摘要: 随着业务变得越来越复杂,用户越来越多,集中式的架构性能会出现巨大的问题,比如系统会越来越慢,而且时不时会宕机,所以必须要解决高性能和可用性的问题。这个时候数据库的优化就显得尤为重要,在说优化方案前,先分析下数据库性能瓶颈的原因有哪些; 1.1数据库性能瓶颈的分析 比如说在高并发的情况下连接数不够了。 阅读全文
posted @ 2020-11-15 20:39 童话述说我的结局 阅读(1640) 评论(0) 推荐(0) 编辑
摘要: 一、认证的两种方式的介绍 1. 基于Session的认证方式 在之前的单体架构时代,我们认证成功之后都会将信息存入到Session中,然后响应给客户端的是对应的Session中数据的key,客户端会将这个key存储在cookie中,之后都请求都会携带这个cookie中的信息,结构图如下 但是随着技术 阅读全文
posted @ 2020-10-11 17:30 童话述说我的结局 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 一.什么是线程池 在 Java 中,如果每个请求到达就创建一个新线程,创建和销毁线程花费的时间和消耗的系统资源都相当大,甚至可能要比在处理实际的用户请求的时间和资源要多的多。如果在一个 Jvm 里创建太多的线程,可能会使系统由于过度消耗内存或“切换过度”而导致系统资源不足为了解决这个问题,就有了线程 阅读全文
posted @ 2020-10-08 21:32 童话述说我的结局 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 一、Hash表 1. 什么是Hash表 hash函数就是根据key计算出应该存储地址的位置,而哈希表是基于哈希函数建立的一种查找表 2. hash函数设计的考虑因素 计算散列地址所需要的时间(即hash函数本身不要太复杂) 关键字的长度 表长 关键字分布是否均匀,是否有规律可循 设计的hash函数在 阅读全文
posted @ 2020-10-06 22:27 童话述说我的结局 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 一.阻塞队列 阻塞队列是一个队列,它最大的特点就是阻塞的线程满足条件就会被自动唤醒,不需要我们人为的判断。 当队列为空时,从队列中获取元素的操作就会被阻塞; 当队列为满时,从队列中添加元素的操作就会被阻塞。 二.阻塞队列的好处 之前总结的线程间通信,需要判断对应的值,一个生产者与一个消费者,在判断状 阅读全文
posted @ 2020-10-05 23:12 童话述说我的结局 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 在前面篇幅中讲 synchronized 的时候,有讲到 wait/notify 的基本使用,结合 synchronized 可以实现对线程的通信,既然 J.U.C 里面提供了锁的实现机制,那 J.U.C 里面应该也有提供类似的线程通信的工具;这个工具类就是 Condition 工具类。Condit 阅读全文
posted @ 2020-10-05 21:52 童话述说我的结局 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 昨天有说过后面讲ReentrantLock,今天我们这篇幅就全局的讲解下,我们在Lock出来前,解决并发问题没得选只能用Synchronized。 一.ReentrantLock PK synchronized (1)synchronized是独占锁,加锁和解锁的过程自动进行,易于操作,但不够灵活。 阅读全文
posted @ 2020-10-05 16:18 童话述说我的结局 阅读(535) 评论(0) 推荐(0) 编辑
摘要: 前面篇幅讲了很多理论及原理性东西,今天想了想,来点现实场景的东西把前面的内容串一串 一. 死锁产生的原因 1) 系统资源的竞争 通常系统中拥有的不可剥夺资源,其数量不足以满足多个进程运行的需要,使得进程在 运行过程中,会因争夺资源而陷入僵局,如磁带机、打印机等。只有对不可剥夺资源的竞争 才可能产生死 阅读全文
posted @ 2020-10-04 22:41 童话述说我的结局 阅读(270) 评论(0) 推荐(0) 编辑