微服务
文章平均质量分 76
Small ink
人生一世,总有些片断当时看着无关紧要,而事实上却牵动了大局。
展开
-
【分表分库】SpringBoot整合ShardingSphere---Sharding-JDBC
ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(计划中)这3款相互独立的产品组成。他们均提供标准化的数据分片、分布式事务和数据库治理功能,可适用于如Java同构、异构语言、云原生等各种多样化的应用场景。ShardingSphere定位为关系型数据库中间件,旨在充分合理地在分布式的场景下利用关系型数据库的计算和存储能力,而并非实现一个全新的关系型数据库。原创 2023-01-29 11:47:39 · 2063 阅读 · 0 评论 -
【SpringBoot整合Redis+WebSoket】
socket属于长连接,其session只会保存在一台服务器上,其他负载及其不会持有这个session,此时,我们需要使用redis的发布订阅来实现,session的共享。因为现在很多项目都是前后分离的,所以前端走后端基本都是通过Nginx或公共网关来统一转发请求,WebSoket使用的是长连接默认的Nginx是不支持长连接的所以需要配置,请参考。sendMessage:发生消息的方法(自己封装的,并不限制,按要求扩展),因为我们使用的是redis的发布订阅方式所以我们使用的是Redis的订阅来发送消息。原创 2022-12-26 17:29:15 · 1519 阅读 · 0 评论 -
【rocketmq-client日志保存路径的问题、及消息积压查看】
由于项目中需要同步A系统数据到其他系统,所以我们使用了RocketMQ的广播形势来将A系统的数据同步到其他系统,但是日均同步的数量达到了三万次。久而久之就出现了服务器磁盘空间不足影响系统的使用,所以检查了服务器发现MQ的日志没有定时清理一直积压在服务器内部。现在日常开发中MQ的使用成了许多公司选择,常见的有“ActiveMQ、RabbitMQ、RocketMQ、Kafka”。Springboot项目可在启动类的main方法中设置,已验证有效。原创 2022-10-14 11:22:34 · 2893 阅读 · 0 评论 -
【RocketMQ】整合SpringBoot
另一个区别是消费失败时的处理不同,有序消费模式返回ConsumeOrderlyStatus.SUSPEND_CURRENT_QUEUE_A_MOMENT后,消费者会立马消费这条消息,而使用并发消费模式,返回ConsumeConcurrentlyStatus.RECONSUME_LATER后,要过好几秒甚至十几秒才会再次消费。顾名思义,有序消费模式是按照消息的顺序进行消费,但是除此之外,我发现和并发消费模式还有很大的区别的。并发消费模式则不会无限消费,而且消费失败后不会马上再消费。......原创 2022-08-08 10:40:02 · 2407 阅读 · 0 评论 -
【RocketMQ的使用】转载官方
比较常见的MQ有:ActiveMQ、RabbitMQ、RocketMQ、Kafka追求可用性:Kafka、 RocketMQ 、RabbitMQ追求可靠性:RabbitMQ、RocketMQ追求吞吐能力:RocketMQ、Kafka追求消息低延迟:RabbitMQ、Kafkamaven:gradle:2. 消息发送2.1 发送同步消息2.2 发送异步消息异步消息通常用在对响应时间敏感的业务场景,即发送端不能容忍长时间地等待Broker的响应。2.3 单向发送消息这种方式主要用在不特别关心发送转载 2022-08-04 15:27:56 · 360 阅读 · 0 评论 -
【@Async的使用及配置】
注解最简单的使用场景就是,异步发邮件等情况了💌!首先我们需要在启动类上加启用异步注解,然后在需要异步的类上加注解就行了。启动类:邮件发送实现类:自定义线程池有几种方法,就看友友们选那个了🌈。如何使用:第二种:第二种和第一种其实也差不多只是将线程池配置给了Spring的Async了,这种的使用就帮你解决了异步的方法上还要写这么多了,用了之后就可以这样写了,是不是很方便呢😉?第三种:第三种就是使用了Spring自己的默认线程池了不过我们也可以自己设置默认的线程池,在yml文件下添加如下...原创 2022-07-12 17:32:05 · 2756 阅读 · 2 评论 -
【Docker 安装 Nginx】
访问 Nginx 镜像库地址: https://hub.docker.com/_/nginx?tab=tags。查看本地镜像使用以下命令来查看是否已安装了 nginx:启动镜像复制要挂载的文件docker挂载是run时挂载,所以要先copy配置文件,如果不copy直接挂载启动容器时会从挂载的目录找配置文件,找不到会启动失败启动镜像说明:-e LANG=C.UTF-8 -e LC_ALL=C.UTF-8是解决nginx中文乱码-d :守护式容器在后台运行-p:端口映射,格式为 主机(宿主)端口原创 2022-07-12 15:46:05 · 530 阅读 · 0 评论 -
docker搭建nacos
使用官方安装脚本自动安装:卸载 docker删除安装包:删除镜像、容器、配置文件等内容:Docker安装MySQL:进入容器之后登录MySQL并设置远程访问用户:Docker安装Nacos:至此,我们已经可以使用nacos服务,UI地址:http://localhost:8848/nacos 账号:nacos 密码:nacos。接下来配置连接数据库不使用自己的:首先需要在数据库创建对应的nacos数据库,并执行sql文件。nacos-db.sql搭建Maven项目:创建Maven工程原创 2022-07-05 14:14:42 · 780 阅读 · 0 评论 -
docker搭建一个rocketmq
首先在你的服务器上安装上docker,没有的朋友可以看我相关的其他文档检查是否安装了docker打开网页dockerhub的仓库找到对应的rocketmq镜像文件选择图中的镜像仓库选择rocketmq-4.5.1版本的镜像将rocketmq-server和rocketmq-broker两个镜像拉到服务器上拉取broker镜像拉取server镜像另外再拉一个客户端镜像客户端镜像地址拉取server镜像检查你的服务器镜像,这时候应该有三个镜像根据镜像创建并启动对应的镜像先要创建启动server容器原创 2022-06-30 10:26:33 · 409 阅读 · 0 评论 -
Spring-Cloud-starter-gateway使用路由转发功能报503
💊最近新建了一个项目,使用gateway网关的时候发现怎么请求都没办法转发到对应的服务,经过一个小时的排除发现由于springcloud2020弃用了Ribbon,因此Alibaba在2021版本nacos中删除了Ribbon的jar包,因此无法通过lb路由到指定微服务,出现了503情况。以下是我使用的springboot和springcloud版本:解决:只需引入loadbalancer依赖即可解决问题🤡...原创 2022-06-29 14:27:40 · 1466 阅读 · 2 评论 -
认识微服务及SpringCloud的使用及配置
认识微服务:概念:微服务是系统架构的一种设计风格,将一个原本独立的服务拆分成多个小型服务,每个服务独立运行在在各自的进程中,服务之间通过 HTTP RESTful API 进行通信.每个小型的服务都围绕着系统中的某个耦合度较高的业务进行构建。微服务是一种经过良好设计的分布式架构方案,而全球的互联网公司都在积极尝试自己的微服务落地方案。其中在java领域最引人注目的是SpringCloud提供的方案。架构图:微服务架构特征3.1单一职责:微服务拆分粒度更小,每个服务都应对唯一的业务能力,做原创 2022-01-14 17:47:17 · 296 阅读 · 0 评论