Category Archives: JAVA

对于mysql,redis,Kafka,zookeeper磁盘缓存技术使用分析

大部分组件是基于磁盘存储的,但由于CPU速度和磁盘速度之间的鸿沟,都会使用缓存技术来提高性能,缓存简单来说就是一块内存区域,首先将从磁盘读到的数据放在缓存中,之后查询或修改时直接操作缓存,对于缓存中的数据则以一定的频率刷新到磁盘上,怎样缓存,缓存多少,何时刷新,这些影响着整个组件的性能。在看过一些关于mysql等组件的架构原理后,会发现不论是基于磁盘的mysql数据库和Kafka消息中间件zookeeper分布式协调框架,还是基于内存的redis数据库,它们都设计了完善的内存和磁盘之间数据交互实现。

SpringCloud-Gateway对multipart/form-data等其他POST请求类型的body体进行多次打开

本次代码仅在以下版本中测试通过

这几天在用g… Read More »

Java性能调优分享

Java性能调优分享 这次分享还是之前在公司对项目进行性能调优时,前期的调研,以及积累的一些经验,之前公司产品… Read More »

微服务架构的多种部署模式

故本文将阐述三个关键部署模式,并分析它们的好处和弊端。

1. 编程语言特定的发布包格式,例如Java JAR或WAR文件。我并不推荐这种做法,之所以介绍这个选项,是因为这个部署方法有各种显著的缺点,会促使你思考和选择其他更为合理和现代化的部署技术。
2. 将服务部署为虚拟机,把服务打包为虚拟机镜像,这个镜像封装了服务的技术栈,这样可以简化部署。
3. 将服务部署为容器,这些容器比虚拟机更轻量级。

关于mybatis-plus中Service和Mapper的分析

在后端开发过程中,如果有用到mybatis-plus,肯定会发现在其内部存在着两种数据库操作接口,Iservice和BaseMapper,如果只是用增删改查会发现两者的功能是一致的,除了方法名称有所不同,其他的基本相似。对此,我颇为好奇,便打开两个接口的源码进行对比。