spring内置的RPC使用大全

spring-rpc 什么是rpc? rpc(Remote Procedure Call)封装了内部实现的远程调用过程就是rpc,rpc主要为了简化远程服务调用。java体系的rpc,除了dubbo,集java大成者spring还默认提供了如下等Rpc组件支持。本项目就是这些Rpc组件的接入使用示例,基础环境使用spring boot2.x版本 spring-rmi-rpc spring-hessian-rpc spring-http-rpc spring-jms-rpc spring-amqp-rpc spring-ws-rpc 基础环境 spring boot 2.0.5.RELEASE activemq (spring-jms-rpc使...

阅读全文 »

spring batch线上问题定位纪实

spring batch线上问题定位纪实

前言碎语 最近线上spring batch的一个问题围绕博主近两周时间,甚是扰神。具体现象为,spring batch执行中莫名其妙线程就卡住了,不往下走了。下面会详细描述整个问题的排查过程 环境说明 spring batch分区环境,共6个分片,两台实例,分别6个线程处理,由xxljob任务调度触发日切job,配置由apollo管理。 排查过程 1.xxljob长连接导致 why?因为我们有项目是老项目,任务调度使用的quartz,原...

阅读全文 »

Apollo应用之动态调整线上数据源(DataSource)

Apollo应用之动态调整线上数据源(DataSource)

前言碎语 博主之前写过使用apollo的配置动态推送能力来动态修改线上环境的日志输出级别,具体可见《 spring boot动态调整线上日志级别 》,今天来实现一个类似的应用场景,动态变更线上数据源。主要应用场景如:测试时不重启服务切换数据源,准生产无缝切换生产环境,应用端读写分离策略动态化等等,更多的使用场景欢迎在留言区补充。 实现思路 通过对主流数据源(c3p0,dbcp2,tomc...

阅读全文 »

spring batch进阶-基于RabbitMQ远程分区Step

spring batch进阶-基于RabbitMQ远程分区Step

前言碎语 关于spring batch概念及基本使用,可移步 《spring batch精选,一文吃透spring batch 》 ,本文主要内容为spring batch的进阶内容,也就是spring batch的扩展(Multithreaded Step 多线程执行一个Step;Parallel Step 通过多线程并行执行多个Step;Remote Chunking 在远端节点上执行分布式Chunk作;Partitioning Step 对数据进行分区,并分开执行;)的 Partitioning Step。本文构建的实例可为主服务,从服务,主从混用...

阅读全文 »

spring batch数据库表数据结构

spring batch数据库表数据结构

前言碎语 博客因为域名未被实名被暂停解析,申请实名加审批到域名重新可用,上下折腾导致博客四五天不能访问,这期间也成功了使用spring batch Integration 完成了spring batch分区远程的工程搭建,期间有使用ActiveMQ(JMS)的实现也有基于RabbitMQ(AMQP)的实现,最终选择了基于RabbitMQ的远程主从模式搭建项目,最终项目模型支持一主多从,多主多从,主从混用的使用,极大的提高了批处理...

阅读全文 »

spring batch精选,一文吃透spring batch

spring batch精选,一文吃透spring batch

前言碎语 批处理是企业级业务系统不可或缺的一部分,spring batch是一个轻量级的综合性批处理框架,可用于开发企业信息系统中那些至关重要的数据批量处理业务.SpringBatch基于POJO和Spring框架,相当容易上手使用,让开发者很容易地访问和利用企业级服务. spring batch 具有高可扩展性的框架,简单的批处理,复杂的大数据批处理作业都可以通过SpringBatch框架来实现。 spring batch官方文档: https://doc...

阅读全文 »

spring boot动态调整线上日志级别

spring boot动态调整线上日志级别

前言碎语 日志模块是每个项目中必须的,用来记录程序运行中的相关信息。一般在开发环境下使用DEBUG级别的日志输出,为了方便查看问题,而在线上一般都使用INFO级别的日志,主要记录业务操作的日志。那么问题来了,当线上环境出现问题希望输出DEBUG日志信息辅助排查的时候怎么办呢?修改配置文件,重新打包然后上传重启线上环境,之前确实是这么做的。下面会介绍使用动态调...

阅读全文 »