我们的开源项目kkFileView v2.2.0发布了

kkfileview 文件在线预览 此项目为文件文档在线预览项目解决方案,项目使用流行的 spring boot 搭建,易上手和部署,部署好后可以独立提供预览服务,使用 http 接口访问,不需要和应用集成,具有跨系统跨语言使用的特性。提供 zip/tar.gz 发行包、自定义配置文件、和启动/停止脚本等,极大方便部署使用,同时官方发布 Docker 镜像,方便容器环境中部署使用。基本支持主流办公文档的在线...

阅读全文 »

JPA项目多数据源模式整合sharding-jdbc实现数据脱敏

JPA项目多数据源模式整合sharding-jdbc实现数据脱敏

前言 前一篇博文,已经完整的介绍了数据库脱敏的场景以及方案,来自京东数科的Encrypt-JDBC开源项目通过对数据源中间代理的方式透明化的实现了这个功能,但是,功能虽然实现了,sql兼容的小问题还是很多,比如目前还不支持子查询,数据库定义的关键字不允许使用,等等问题,反观我们需要加解密的字段,其实占比非常小,即使遇到了和组件不兼容的地方也可以稍加改动解决掉...

阅读全文 »

Sharding-JDBC数据库字段加解密透明化方案

Sharding-JDBC数据库字段加解密透明化方案

前言 近期,博主公司应安全审计要求,需要对数据库中的用户关键信息做加密处理,这样,即使生产数据被脱裤,也不会泄露用户的敏感信息,在做了初步的需求归纳和功能分析后,我们制定了简单的开发方案,将需要加解密的字段通过配置和注解的方式标记出来,尝试使用hibernate的filter和Interceptor针对用户sql做拦截,做到透明化加解密。但是这个方案很快被否决了,查询结果集没法...

阅读全文 »

剖析dubbo服务注册到nacos的过程

剖析dubbo服务注册到nacos的过程

剖析dubbo服务注册到nacos的过程 前面聊到到了我们的dubbo服务从redis迁移到nacos注册中心,迁移后发现,会时不时的抛一个异常ERROR com.alibaba.nacos.client.naming - [CLIENT-BEAT] failed to send beat:, 所以有了这个剖析过程,当然最后查明异常是我们的SLB网络映射问题,和nacos没有关系。 dubbo版本:2.7.4.1 nacos client版本:1.0.0 nacos server版本:1.1.3 简述过程 dubbo侧:dubbo通过nacos注册中心实现,注册服务到...

阅读全文 »

dubbo升级2.7.4.1平滑迁移到nacos

dubbo升级2.7.4.1平滑迁移到nacos

前言 dubbo是一款非常优秀的服务治理型RPC框架,dubbo的优秀在于,庞大的架构体系、精湛的模块设计、灵活的SPI设计、丰富的组件实现,博主做微服务技术选型考察dubbo时,非常惊叹在那个年代别人就已经能够产出如此优秀的项目,以至于后面每逢别人说想要学习架构设计时,我都会推荐他读读dubbo的代码,学习下dubbo的架构设计原则。常说dubbo不仅仅是一款RPC框架,是因为他的服务治理...

阅读全文 »

解析OpLog订阅MongoDB的数据变更就这么简单

解析OpLog订阅MongoDB的数据变更就这么简单

前言 我们开源了一个订阅分发mysql的binlog的项目,一直用的非常好,忽然有天开发说能不能支持MongoDB的数据订阅呢,MongoDB的使用度也挺广泛的。安排。经过简单的了解后发现MongoDB也有类似binlog的机制,最终花了两天时间把功能完成,并统一抽象集成到binlog开源项目中,使用和binlog同一套订阅分发模型管理MongoDB数据源。整个过程非常顺利,比整mysql的binlog要简单的多了。 binlog数据订阅...

阅读全文 »

2019,kl的年终总结报告

2019,kl的年终总结报告

前言碎语 笔耕不辍,很多事情不记就忘了,今天听群友感慨说今年的年终总结还没写,忽然发现,我已经遗漏掉2018的年终总结了,回过头来看, 《2017,kl的年终总结报告 》 里吹过的牛逼在2018年虽然都实现了,但是回想下总感觉缺乏点清晰感。恰逢又要回家了,年末很多事情却又多了起来,即如此,还是要写写2019年那些事,因为2019年对我个人和团队来说,都是变化非常大,非常有...

阅读全文 »