
小笔记
勇敢牛牛_
不念往昔,无惧将来。
展开
-
【小笔记】一次kafka推送效率的优化
场景定时任务从Hbase扫描到数据后,经过处理推送到kafka,但是推送效率很低,导致积压了几千万的数据在Hbase中没有推送出去。分析导致推送效率低一般有3个方面导致:kafka的分区数太少由于kafka写数据是写入到分区中的,分区数越多,并行度约高,效率就越高。所以可以通过增加分区数来提高写入效率。但是分区改变会导致消费者间重新分配partition,有可能出现重复消费的情况。业务处理时间太长这个需要优化业务代码来解决了写线程数太少单线程发送消息的效率肯定很低了解决原创 2020-08-29 22:36:49 · 934 阅读 · 0 评论 -
【小笔记】Mybatis多数据源环境下的sql-id校验
场景系统同时支持mysql、oracle、mycat、gaussdb等多套数据库(环境),由于个个数据库语法的差异,为了更好的隔离开代码,采用分文件的形式来写sql,然而在开发过程中难免忘记少写一个数据库方言的sql,只有切换语言环境时才会发现问题。所以需要提前校验下各个环境下的sql语句是否有遗漏。实现import org.apache.commons.io.FileUtils;import org.apache.commons.io.filefilter.IOFileFilter;impor原创 2020-08-04 19:45:43 · 357 阅读 · 0 评论 -
【小笔记】mock server导致的HttpMessageNotReadableException问题记录
场景前端post请求发出后,后端无响应,一段时间后报错:I/O error while reading input message; nested exception is org.apache.catalina.connector.ClientAbortException分析及解决postman调用接口正常,问题在前端,但,前端不熟,遂google,在一个issues找到解决方案:https://github.com/PanJiaChen/vue-element-admin/issues/原创 2020-08-01 15:28:44 · 958 阅读 · 2 评论 -
【小笔记】多节点定时任务引起的对DB式分布式锁的思考
## 1. 场景定时任务定时扫表,每天进行数据上报。遇到一个问题:定时任务程序是多节点部署的,如何保证数据不会重复上报呢?原创 2020-07-23 22:09:16 · 846 阅读 · 0 评论 -
【小笔记】大数据量excel解析工具性能对比
Excel存储格式POI表格解析参考:https://poi.apache.org/components/spreadsheet/多线程读取EasyExcelHutool Excel工具原创 2020-07-07 13:15:36 · 3175 阅读 · 0 评论 -
【小笔记】Activiti扩展数据库支持类型
场景项目需要使用GaussDB,Activiti默认支持的数据库中不包含GaussDB,需要对其进行扩展。分析在其源码org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl.getDefaultDatabaseTypeMappings()中,写明了支持的数据库的类型:h2、hsql、mysql、oracle、postgres、mssql、db2并在初始化时进行了初始化:protected static Properties data原创 2020-06-25 12:48:21 · 2284 阅读 · 3 评论 -
【小笔记】SpringCloud Feign子线程调用丢失Request问题
场景:前端请求后端接口,由于后端接口涉及一系列复杂操作,为了快速响应,直接返回,使用子线程完成后续逻辑处理。该逻辑中涉及多个子系统之间的调用,原本的调用方式为使用RestTemplate,走服务名调用,并没有问题。后来接口改造为了调用方便,引入feign,于是导致获取不到irequest上下文及无法传递header及cookie等问题。问题复现:1、丢失herder及cookie2、丢失request问题原因:出于安全考虑,默认不会传递header及cookie;feign的默认隔离策略为线程原创 2020-06-23 00:35:05 · 1612 阅读 · 0 评论