摘要:
1.MySQL高可用 主从复制 一主多备 多主多备 2.MySQL主从复制 主机所有写的数据都会生成二进制SQL日志执行文件,从机只需要将SQL日志执行文件获取到,然后进行数据同步即可 2.1 MySQL环境搭建 2.1.1 连接到虚拟机,在/usr/local下新建一个文件夹为mysql,将tar 阅读全文
摘要:
1.索引 1.1 数据查询缓存和缓冲区 ##再次查询会不会比第一次快,为什么会比第一次查询快? ##1.默认query_cahce是开启的,如果查询缓存开启了,第一次查询数据的时候,读取的是数据文件,第二次会执行查询缓存,所以第二次查询会很快 ##如果数据更新,需要重新再缓存 SHOW GLOBAL 阅读全文
摘要:
1.数据库优化概述 为什么要进行数据库优化 1、 避免网站页面出现访问错误 由于数据库连接timeout产生页面5xx错误 由于慢查询造成页面无法加载 由于阻塞造成数据无法提交 2、 增加数据库的稳定性 很多数据库问题都是由于低效的查询引起的 3、 优化用户体验 流畅页面的访问速度 良好的网站功能体 阅读全文
摘要:
一.造成重复消费的原因 在于回馈机制。正常情况下,消费者在消费消息时候,消费完毕后,会发送一个ACK确认信息给消息队列(broker),消息队列(broker)就知道该消息被消费了,就会将该消息从消息队列中删除。 不同的消息队列发送的确认信息形式不同,例如RabbitMQ是发送一个ACK确认消息,R 阅读全文
摘要:
生产者: /** * 生产者 */ public class Provider { public static void main(String[] args) throws MQClientException, InterruptedException, RemotingException, MQ 阅读全文
摘要:
1.安装JDK 1.1 检查当前虚拟机环境有没有JDK rpm -qa|grep java 1.2 卸载 rpm -e --nodeps xxxxxx(自己的openjdk) 1.3 安装JDK 在/usr/local新建一个java文件夹,然后将tar包上传到文件夹下 切换到/usr/local/ 阅读全文
摘要:
1.消费者在消费数据的过程当中报错,那么就会自动重试 2.如果消费者报错,会自动重试,但是数据已经真实拿到,可能会造成重复消费,幂等性问题 思路,每一次监听到数据后,获取到消息的全局ID,每一条相同的消息,ID都是相同的 启动类添加 public static String MESSAGEID; / 阅读全文
摘要:
1.开启队列持久化 只需要添加三行代码 jmsTemplate.setDeliveryMode(2); jmsTemplate.setExplicitQosEnabled(true); jmsTemplate.setDeliveryPersistent(true); 2. 开启主题持久化,启动类添加 阅读全文
摘要:
队列方式 1. 导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <!-- spring boot web支 阅读全文
摘要:
JMS消息可靠机制 ActiveMQ消息签收机制: 客戶端成功接收一条消息的标志是一条消息被签收,成功应答。 消息的签收情形分两种: 1、带事务的session 如果session带有事务,并且事务成功提交,则消息被自动签收。如果事务回滚,则消息会被再次传送。 2、不带事务的session 不带事务 阅读全文