
微服务
文章平均质量分 87
澄风
平淡出奇
展开
-
总结ES Linux环境配置优化
· 禁用交换区· 增加文件描述符的数量· 确保足够的虚拟内存· 确保有足够的线程数上限· JVM DNS缓存设置· 临时目录不要挂载在noexec下原创 2023-01-17 16:10:47 · 788 阅读 · 0 评论 -
Rocketmq半消息(事务消息)详解
当我们在业务逻辑中发送消息时,消息与业务的事务之间难以保证一致性,如果业务代码出现异常,如果已发送的消息无法回滚,则很会出现数据不一致的情况,RocketMQ的事务消息支持在业务逻辑与发送消息之间提供事务保证,RocketMQ通过两阶段的方式提供事务消息的支持。首需要注意的是 事务消息(半消息) 仅仅只是保证本地事务和MQ消息发送形成整体的 原子性 ,而投递到MQ服务器后,并无法保证消费者一定能消费成功!事务消息。原创 2022-12-29 09:17:17 · 4401 阅读 · 0 评论 -
Openfeign 源码完全解析
我们在微服务架构上开发的时候,通讯框架基本上都用过dubbo/feign之类的。对于我们java生态来说grpc/thrift可能很少在用,如果我们使用的是SpringCloud alibaba 可以选用openfeign 和 dubbo,如果我们使用的是netflix可以选用openfeign作为RPC通讯框架。这里我只推荐使用SpringCloud alibaba,因为netflix已经撂挑子了,听说最近已经捡起来继续维护SpringCloud netflix了,但和SpringCloud ali...原创 2022-09-27 18:21:56 · 866 阅读 · 0 评论 -
Springboot 获取http数据、打印HTTP参数的4种方式 (便于生产排查问题)
Java的话本地打断点可以调试获取rest入参(httpheader),但是在生产环境可能我们获取入参(Httpheader/parameter)可能就没有那么的轻松了。我们可能在header中放置了很多自定的参数用来鉴权或者其他用途。如果排查问题的时候需要这些参数,我们有很多种选择去获取这些参数。.................................原创 2022-07-19 13:56:29 · 6209 阅读 · 0 评论 -
Springboot ApplicationRunner 详解
在项目中写了一个ApplicationRunner 来启动消费队列线程,结果启动的时候applicationRunner的run方法死活不被调用。通过debug发现,在springboot初始化完环境refresh context之后就会调用started listener然后调用application runner,如果started listner 存在阻塞的话就会导致后续的application runner 不被运行。......原创 2022-07-12 15:04:51 · 11787 阅读 · 0 评论 -
微服务架构总结
“微服务”一词源于Martin Fowler的名为Microservices的博文,可以在他的官方博客上找到:http://martinfowler.com/articles/microservices.html。 简单地说,微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作。被拆分成的每一个小型服务都围绕着系统中的某一项或一些耦合度较高的业务功能进行构建,并且每个服务都...原创 2022-06-30 15:55:45 · 711 阅读 · 0 评论