🐏SpringCloud
文章平均质量分 81
葵花宝典之微服务
共饮一杯无
CSDN内容合伙人,杭州开发者社区主理人,Java领域优质创作者,2022年度博客之星TOP15,CSDN博客专家,51CTO 专家博主,华为云享专家,阿里云专家博主,InfoQ专家博主,持续输出干货,欢迎关注。
鲜衣怒马意气风发,愿你归来仍是少年。
展开
-
SpringCloud Alibaba 之Nacos集群部署-高可用保证
当第一个节点(ip1)启动后,节点角色会变为 Candidate(参选者),ip1 节点在每一个任期开始时便会尝试向其他节点发出投票请求,征求自己能否成为 Leader(领导者)节点。在当前案例,因为 ip1 发起选举投票,但 ip2/ip3 两个节点不在线,尽管 ip1 会投自己一票,但在总 3 票中未过半数,因此无法成为 Leader。因为第一次选举没有产生 Leader,过段时间在下一个任期开始时,ip1 任期自增加 1,同时会再次向其他节点发起投票请求争取其他节点同意,直到同意票过半。原创 2023-02-22 10:02:51 · 15880 阅读 · 30 评论 -
用户积分和积分排行榜功能微服务实现
在互联网应用中经常会有积分的概念,会员积分是一种成长手段,就像游戏中的等级一样,通过积分叠加,让用户深刻感受到自己的价值在提升。积分的诞生远早于互联网产品,积分从本质上讲是衡量用户消费或贡献行为的标尺,是维护忠诚度的一个重要手段。在积分运营中,积分一般作为商家向会员或顾客发行的虚拟货币而存在。用户通过特定行为获取积分,再通过积分兑换奖品、优惠券、特权等商品来消耗积分。在电商体系中,要获取更多积分往往需要产生更多消费额,而获得的积分又可以在消费时抵扣部分现金,这方面主要的代表是京东的京豆。原创 2023-01-11 09:29:55 · 5607 阅读 · 76 评论 -
Redis实现朋友圈,微博等Feed流功能,实现Feed流微服务(业务场景、实现思路和环境搭建)
在互联网领域,尤其现在的移动互联网时代,Feed流产品是非常常见的,比如我们每天都会用到的朋友圈,微博,就是一种非常典型的Feed流产品,还有图片分享网站Pinterest,花瓣网等又是另一种形式的Feed流产品。除此之外,很多App的都会有一个模块,要么叫动态,要么叫消息广场,这些也是Feed流产品,可以说,Feed流产品是遍布天下所有的App中。解决Feed流最核心的两个问题:一个是存储,另一个是推送。原创 2022-12-15 10:19:58 · 5762 阅读 · 57 评论 -
秒杀微服务实现抢购代金券功能
现在日常购物或者餐饮消费,商家经常会有推出代金券功能,有些时候代金券的数量不多是需要抢购的,那么怎么设计可以保证代金券的消耗量和秒杀到的用户保持一致呢?怎么设计可以保证一个用户只能秒杀到一张代金券呢?秒杀场景有以下几个特点:秒杀场景的应对,一般要从以下几个方面进行处理,如下:本文以抢购代金券为例,来进行数据库表的设计。抢购活动表订单表创建秒杀服务pom依赖引入相关依赖如下:配置文件关系型数据库实现代金券秒杀相关实体引入抢购代金券活动信息全局异常处理添加代金券秒杀活动代金券活原创 2022-11-27 11:31:51 · 8824 阅读 · 107 评论 -
SpringCloud Gateway网关为认证中心和用户微服务构建统一的认证授权入口
本文主要内容是通过构建一个网关微服务,作为统一的认证授权和访问入口。原创 2022-10-28 16:26:15 · 7562 阅读 · 75 评论 -
spring Cloud微服务 security+oauth2认证授权中心自定义令牌增强,并实现登录和退出
访问oauth/token,oauth2默认返回的授权token信息如下:如果不自定义可以看到访问oauth/token,默认访问的是TokenEndpoint下的接口/*** Oauth2 控制器} /*** 自定义 Token 返回对象** @return= null) {} }原创 2022-10-24 23:09:32 · 6367 阅读 · 46 评论 -
SpringCloud整合spring security+ oauth2+Redis实现认证授权
在微服务构建中,我们一般用一个父工程来通知管理依赖的各种版本号信息。父工程pom文件如下:构建eureka注册中心在SpringCloud微服务体系中服务注册中心是一个必要的存在,通过注册中心提供服务的注册和发现。具体细节可以查看我之前的博客,这里不再赘述。我们开始构建一个eureka注册中心,对应的yml配置文件如下:对应的项目启动类代码如下:至此,一个单体的服务注册中心搭建完成。上文我们已经完成了注册中心的搭建,接下来我们开始搭建认证授权中心。我们同样在父工程下面新建一个子工程,作为认证授权中心原创 2022-10-15 21:15:50 · 22341 阅读 · 91 评论 -
【云原生】SpringCloud系列之客户端负载均衡Ribbon
在微服务架构中,负载均衡是必须使用的技术,通过它来实现系统的高可用、集群扩容等功能。负载均衡可以分为两种:服务端负载均衡和客户端负载均衡。通常所说的负载均衡指服务器负载均衡,可通过硬件设备或软件来实现,硬件比如:F5、Array等,软件比如:LVS、Nginx等。负载均衡按实现方式分类可区分为:服务端负载均衡(比如Nacos负载均衡)与客户端负载均衡。SpringCloud Ribbon是基于客户端的负载均衡工具,它可以将面向服务的 REST 模板请求自动转换成客户端负载均衡的服务调用。执行过程如下图:原创 2022-07-01 11:20:09 · 7087 阅读 · 19 评论 -
【云原生】腾讯带着北极星(spring-cloud-tencent)也来卷云原生了,一起瞅瞅吧
北极星是腾讯开源的服务发现和治理中心,致力于解决分布式或者微服务架构中的服务可见、故障容错、流量控制和安全问题。虽然,业界已经有些组件可以解决其中一部分问题,但是缺少一个标准的、多语言的、框架无关的实现。北极星在腾讯内部的服务注册数量超过百万,日接口调用量超过十万亿,通用性和稳定性都得到了大规模的验证。Spring Cloud Tencent 于6月14日正式对外开源,作为腾讯开源的一站式微服务框架,Spring Cloud Tencent 实现了 Spring Cloud 标准微服务 SPI ,开发者可原创 2022-06-24 18:18:55 · 8702 阅读 · 5 评论 -
【云原生】SpringCloud系列之服务治理Eureka
Netflix Eureka 是一款由 Netflix 开源的基于 REST 服务的注册中心,用于提供服务发现功能。Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 进行了二次封装,主要负责完成微服务架构中的服务治理功能。Spring Cloud Eureka 是一个基于 REST 的服务,并提供了基于 Java 的客户端组件,能够非常方便的将服务注册到 Spring Cloud Eureka 中进行统一管理。...原创 2022-06-24 13:05:10 · 7490 阅读 · 23 评论 -
When allowCredentials is true, allowedOrigins cannot contain the special value since that cannot
问题描述SpringBoot升级后跨域请求报如下错误java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*" since that cannot be set on the "Access-Control-Allow-Origin" response header. To allow credentials to a set原创 2022-03-08 14:51:05 · 16385 阅读 · 1 评论 -
SpringCloud版本升级后bootstrap.yml配置不生效
问题描述由于springcloud gateway网关漏洞需要升级,想着直接把整个SpringCloud和SpringCloud Alibaba整体做个升级。升级后发现bootstrap.yml配置文件配置不生效。之前版本:<spring-boot.version>2.3.4.RELEASE</spring-boot.version><spring-cloud.version>Hoxton.SR8</spring-cloud.version><原创 2022-03-08 14:24:05 · 9708 阅读 · 4 评论 -
Spring Cloud Gateway远程代码执行漏洞风险
Spring Cloud Gateway远程代码执行漏洞风险原创 2022-03-08 10:23:04 · 10007 阅读 · 0 评论 -
linux下载安装zipkin
Docker直接基于最新镜像启动:docker run -d -p 9411:9411 openzipkin/zipkin docker-compose.yml参考官方配置,如下地址:https://github.com/openzipkin-attic/docker-zipkin/blob/master/docker-compose.ymlJava如果你安装了Java 8或更高,最快的方法获取最新版本作为一个独立的可执行jar:curl -sSL https://zipkin.io/qui原创 2021-12-01 10:37:02 · 8598 阅读 · 0 评论 -
Windows下载安装zipkin
Zipkin 是由推特开发的分布式链路追踪系统,用于对 Sleuth 产生的日志加以收集并采用可视化的数据对链路追踪进行分析与图表展示,Zipkin 是典型的 C/S(客户端与服务端)架构模式,需要独立部署 Zipkin 服务器,同时也需要在微服务内部持有Zipkin客户端才可以自动实现日志的推送与展示。下载Spring Cloud Edgware 版本之后,改为强制采用官方提供的 Jar 包的形式启动。下载地址:https://repo1.maven.org/maven2/io/zipkin/zip原创 2021-12-01 10:35:30 · 11543 阅读 · 0 评论 -
Nacos基本概念和单机部署
基本概念在 Spring Cloud Alibaba 生态中,由 Nacos 中间件同时承担注册中心和配置中心职责,需要独立部署。官方地址为:https://nacos.io/zh-cn/index.html 是阿里开源项目,官方定义为:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。功能动态配置服务动态配置服务让您能够以中心化、外部化和动态化的方式管理所有环境的配置。动态配置消除了配置变更时重新部署应用和服务的需要。配置中心化管理让实现无状态服务更简单,也让按需弹性扩展服务更容易原创 2021-11-26 09:13:35 · 13742 阅读 · 0 评论 -
Nacos客户端注册报错
问题描述Nacos客户端注册报错:failed to req API__nacos_v1_ns_instance_list after all servers([xxx_8848]) tried_ ErrCode_503, ErrMsg_server is DOWN now, please try again later!我靠,突然发现服务全都注册不到nacos,但是访问nacos的UI地址又发现nacos是启动着的,并且相关config配置也可以正常显示![image.png](https://im原创 2021-11-10 16:31:43 · 19622 阅读 · 2 评论