spring boot整合mongo查询抛converter的异常

spring boot整合mongo查询抛converter的异常

前言碎语 使用过spring boot的人都知道spring boot约定优于配置的理念给我们开发中集成相关技术框架提供了很多的便利,集成mongo也是相当的简单,但是通过约定的配置信息来集成mongo有些问题。当你的字段包含 Timestamp这种类型时,读取数据的时候会抛一个类型转换的异常,如 No converter found capable of converting from type [java.util.Date] to type [java.sql.Timestamp],是因为,mongo本身时间类型为Date,在...

阅读全文 »

使用BlockingQueue队列处理高并发下的日志

使用BlockingQueue队列处理高并发下的日志

前言碎语 当系统流量负载比较高时,业务日志的写入操作也要纳入系统性能考量之内,如若处理不当,将影响系统的正常业务操作,之前写过一篇 《spring boot通过MQ消费log4j2的日志 》 的博文,采用了RabbitMQ消息中间件来存储抗高并发下的日志,因为引入了中间件,操作使用起来可能没那么简便,今天分享使用多线程消费阻塞队列的方式来处理我们的海量日志 waht阻塞队列? 阻塞队列...

阅读全文 »

SQL优化神器-SQLAdvisor

前言碎语 曾几何时,你为了一条sql效率寻遍互联网的每个角落,也许,你会读到这么一篇sql优化的文章 《MySQL索引原理及慢查询优化 》 ,然后你恍然大悟,sql索引还有一个叫 最左前缀匹配的原则,并不是一味的建索引就可以解决慢查询的问题。今天,有这样一个工具,在你还在思考如何最左前匹配的时候 ,他已经帮你解析快速分析出你的sql,并给出索引优化建议,是不是很nice,好...

阅读全文 »

solr初探-安装使用

solr初探-安装使用

前言碎语 Solr是一个高性能,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,和Elasticseach一样是一款非常优秀的全文搜索引擎 写此文的目的也是看网上诸多的安装使用教程都比较老了,步骤也比较繁琐,下面介绍的方法简单高效 安装使用 前提是已经有...

阅读全文 »

读写分离--美团数据库中间件DBProxy

读写分离--美团数据库中间件DBProxy

前言碎语 好久没更博了,今天给大家分享一款数据库中间件- 美团DBProxy! 我们都知道,随着数据量的不断增大,传统的直连数据库对数据进行访问的方式已经无法满足一般公司的需求。相对于分库分表,通过数据库中间件,可以更简单轻松的对数据库进行水平扩展,由原来单台数据库扩展到多台数据库,数据库中间件通过路由规则将数据的访问请求路由到其中一台数据库上,从而大...

阅读全文 »

spring boot之retry方法调用失败重试

spring boot之retry方法调用失败重试

前言碎语 很多场景会用到重试的机制,比如:rpc服务调用失败重试,文件上传oss失败重试,http接口调用失败重试,支付回调失败重试等等,一切因为网络,非逻辑性错误等不确定因素引起的失败都可以加上重试的机制,来增强系统的健壮性,博主也处理过文件上传到第三方oss服务失败增加重试的事例,在这之前不知道spring有个spring-retry项目,所以采用的是限制次数的递归调用的方式...

阅读全文 »

spring boot通过MQ消费log4j2的日志

spring boot通过MQ消费log4j2的日志

前言碎语 当系统的并发比较高的时候,日志的处理输出也是一种性能的开销负担,所以,选择一个中间件来处理消费日志必不可少!下面是spring boot整合log42结合spring amqp来消费处理系统日志的实例,只需要简单的三步 1.添加相关jar依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-amqp/artifactIdexclusionsexclusiongroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-logging/artifactId...

阅读全文 »