摘要:使用Promethues监控你的应用! 阅读全文
posted @ 2019-10-24 08:34 张坚 阅读 (29) 评论 (0) 编辑
摘要:之前我们讲了使用 "Prometheus监控服务器" 状态,今天我们使用Prometheus监控下数据库。 安装配置 从 "mysqld_exporter" 下载好mysql的exporter,上传至服务器。 修改exporter配置 在root目录下建立文件 .my.cnf,输入mysql的访问参 阅读全文
posted @ 2019-10-22 08:32 张坚 阅读 (34) 评论 (0) 编辑
摘要:相关概念 微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics。 Logging 用于记录离散的事件。例如,应用程序的调试信息或错误信息。它是我们诊断问题的依据。比如我们说的ELK就是基于Logging。 Metrics 用于记录可聚合的数据。例如,队列的当前深度可 阅读全文
posted @ 2019-10-20 10:02 张坚 阅读 (213) 评论 (0) 编辑
摘要:之前一篇文章中我们讲了基于Mysql8的读写分离(文末有链接),这次来说说分库分表的实现过程。 概念解析 垂直分片 按照业务拆分的方式称为垂直分片,又称为纵向拆分,它的核心理念是专库专用。 在拆分之前,一个数据库由多个数据表构成,每个表对应着不同的业务。而拆分之后,则是按照业务将表进行归类,分布到不 阅读全文
posted @ 2019-10-17 17:23 张坚 阅读 (226) 评论 (0) 编辑
摘要:继承这个概念做java开发的同学应该都很熟悉了,继承指的是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。 数据库设计的时候也是有继承关系的,在数据库设计方法论中继承有三种,分别是具体表继承(Concrete Table Inh 阅读全文
posted @ 2019-10-12 08:26 张坚 阅读 (98) 评论 (0) 编辑
摘要:在实际的生产环境中,为了确保数据库的稳定性,我们一般会给数据库配置双机热备机制,这样在master数据库崩溃后,slave数据库可以立即切换成主数据库,通过主从复制的方式将数据从主库同步至从库,在业务代码中编写代码实现读写分离(让主数据库处理 事务性增、改、删操作,而从数据库处理查询操作)来提升数据 阅读全文
posted @ 2019-10-11 15:30 张坚 阅读 (1245) 评论 (13) 编辑
摘要:如果有人问你“数据库事务有哪些特性”?你可能会很快回答出原子性、一致性、隔离性、持久性即ACID特性。那么你知道InnoDB如何保证这些事务特性的吗?如果知道的话这篇文章就可以直接跳过不看啦( ^.^ ) 先说结论: redo log重做日志用来保证事务的持久性 undo log回滚日志保证事务的原 阅读全文
posted @ 2019-10-09 17:30 张坚 阅读 (250) 评论 (0) 编辑
摘要:A系统与B系统之间有很多接口交互,但是有一段时间接口经常报错,作为开发如果不能第一时间知道问题且及时解决的话就会收到业务投诉,当月绩效凉凉。 如果你也有这种场景,那么你就需要一个及时告警的功能。 实现方案 实现及时告警分以下两种场景: 有ELK日志收集 没有ELK日志收集 没有ELK日志收集的方案 阅读全文
posted @ 2019-10-05 12:34 张坚 阅读 (66) 评论 (0) 编辑
摘要:这篇文章以一个问题开始,如果你知道答案的话就可以跳过不看啦@(o・ェ・)@ Q:在一个批量任务执行的过程中,调用多个子任务时,如果有一些子任务发生异常,只是回滚那些出现异常的任务,而不是整个批量任务,请问在Spring中事务需要如何配置才能实现这一功能呢? 隔离级别 隔离性(Isolation)作为 阅读全文
posted @ 2019-09-29 15:55 张坚 阅读 (218) 评论 (0) 编辑
摘要:一、什么是Disruptor 从功能上来看,Disruptor 是实现了“队列”的功能,而且是一个有界队列。那么它的应用场景自然就是“生产者-消费者”模型的应用场合了。 可以拿 JDK 的 BlockingQueue 做一个简单对比,以便更好地认识 Disruptor 是什么。 我们知道 Block 阅读全文
posted @ 2018-04-14 09:58 张坚 阅读 (171) 评论 (0) 编辑