0%

Spock实践(一)

背景

​ 单元测试算是一个老生常谈的问题了,在实际的情况中,总是需要在单元测试与进度之间进行一个权衡,而往往实际上权衡时都是偏向进度一方,甚至很多自信的开发者都不推崇进行单元测试的编写,觉得单元测试费时费力,并且在需求调整又需要重新进行单元测试的编写,其实还有很大一部分原因是因为目前在Spring体系中,常用的单元测试框架就是基于PowerMock或者MockTo等,由于这些框架依赖Spring容器,所以在编写过程需要频繁的启动Spring容器进行单元测试的测试,导致过程比较繁琐。

阅读全文 »

mysql索引优化

​ 描述使用explain命令中的每列所代表的含义,以及出现某些慢查询时的一些优化。

阅读全文 »

tk.mybaits动态表名

背景

​ 由于目前项目中多采用模块化的方式进行组件的整合,在新服务的搭建时为了尽可能保证新服务指向的数据库中的表名统一于服务名,比如新服务是订单模块,希望这个模块指向的数据库中的表名都是以ORDER_开头。且一些二次开发的组件中也有使用mysql进行数据的相关处理,故希望可以通过统一处理的方式进行表名动态化。

阅读全文 »

tk.mybaits和mybatisPlus兼容性

背景

​ 项目早期建设时底层采用了tk.mybatis方式来对数据访问层进行数据处理,而后再更新Springboot的同时因为一些不知原因(只能说我级别不够,不知领导的深意,但确实tk.mybatis官网已经没有维护了)又在底层引入了mybatisPlus,所以新代码采用mybatisPlus编写,旧模块任然使用tk.mybatis编写。

阅读全文 »

数据库和缓存双写一致性

背景

​ 使用缓存在存储热点数据是常用的提交系统响应速度的一种解决方案,但是在更新数据时如何确保数据库和缓存中的数据一致性,特别是在高并发的场景下,应如何保证双写数据的一致性。

阅读全文 »

mysql日志文件

mysql在进行数据的存储过程中,为了处理数据、预防数据丢失、查询数据优化等的场景的需要,约定了一些日志文件系统。

阅读全文 »

redis学习笔记(二)

主从复制

​ 主从复制是将一台redis服务器设置为主服务器master,复制到其他多台从服务slave上,主服务器负责读写操作,从服务器只能读。数据的复制只能是主服务器到从服务器。当主服务器宕机时,可以让从服务器接管主服务器接管,保证系统不至于停机,否则在主服务器重启到恢复数据的这个过程中,服务一直处于停机状态。主从服务器之间通过心跳的机制检查服务器间的连接状态

阅读全文 »

Springboot请求响应乱码

背景

在一个项目中出现了一个比较棘手的问题,情况是这样的:由于项目场景的需要,引入了公司技术架构部门在activiti工作流的基础上进行二次开发的工作流组件,使用该组件,需要实现几个获取岗位信息、人员信息相关的接口,工作流组件通过restTemplate调用这些接口来获取对应的人员、岗位信息用于工作流服务的节点信息显示,在开发过程中一切正常且部署到开发环境中调试过程中也是一切正常,但是当部署到测试环境后,发现接口出现乱码。

阅读全文 »