- 博客(16)
- 收藏
- 关注
原创 Rabbitmq
通过以上步骤,你可以在 Spring Boot 项目中有效使用 RabbitMQ 的 Virtual Hosts。虚拟主机可以帮助你在同一 RabbitMQ 服务器上隔离不同的应用程序或环境,提升管理灵活性和安全性。特性RabbitMQRocketMQKafka协议AMQP自定义协议(类似于 JMS)自定义协议消息模型Broker 模式,多种交换机模型Topic-Tag 模型Pub/Sub,Topic-Partition 模型吞吐量中等,适合中小型应用高,适合高并发事务。
2024-09-30 23:52:19 585
原创 阿里云实现大文件上传
OSS 存储文件:阿里云 OSS 用于存储大文件,支持高可靠的存储和管理。CDN 加速:阿里云 CDN 将文件分发到全球的边缘节点,加速访问,减少延迟。返回 CDN 链接:在 Spring Boot 项目中上传文件后,返回经过 CDN 加速的访问链接,提高用户访问速度。通过阿里云OSS实现文件存储;使用分片上传来提升大文件上传效率;可使用CDN加速文件读取;通过OSS提供的多线程或异步处理提升并发读写效率。
2024-09-26 18:18:29 751
原创 微服务架构下的 Spring Cloud OpenFeign
使用 @FeignClient 注解声明了对 service-b 的 REST 调用,并通过服务名称 service-b 在 Nacos 中进行服务发现。2. Nacos:提供服务注册和发现功能,多个 service-b 实例通过 Nacos 注册,service-a 通过 Feign 客户端调用并负载均衡。:自动进行客户端负载均衡,不再需要额外的配置,它内置在 Spring Cloud 生态中。
2024-09-25 15:54:00 1043
原创 OAuth2.0 在分布式微服务下的统一认证授权
统一在网关层面(SpringCloud Gateway)认证鉴权,微服务只负责自身业务,代码耦合性低,方便后续的扩展。把认证服务器独立出来,和网关解耦。例:springcloud检查令牌是否存在。
2024-09-24 19:57:24 691
原创 JWT 令牌认证
在使用阿里云 KMS 进行 JWT 签名和验签的情况下,您可以省略 JwtAccessTokenConverter,而是直接调用 KMS API 来完成这些操作。这样不仅减少了代码复杂性,还提高了安全性,因为密钥管理由 KMS 负责。
2024-09-23 23:15:57 1100
原创 OAuth2.0 资源服务器
/ 自定义登录路径@Override// 从请求中获取用户名和密码// 构造认证对象// 使用 AuthenticationManager 进行认证@Override// 自定义认证成功逻辑,比如生成 JWT 或设置响应头// 可以在这里添加 JWT token 返回");@Override// 自定义认证失败逻辑JwtAuthenticationLoginFilter 过滤器/***/@Autowired/*** 登录成功处理器*/
2024-09-23 16:05:49 1058
原创 OAuth2.0认证授权协议
OAuth 是一个开放标准,该标准允许用户让第三方应用访问该用户在某一网站上存储的私密资源(如头像、照片、视频等),而在这个过程中无需将用户名和密码提供给第三方应用。实现这一功能是通过提供一个令牌(token),而不是用户名和密码来访问他们存放在特定服务提供者的数据。采用令牌(token)的方式可以让用户灵活的对第三方应用授权或者收回权限。互联网应用中最常见的 OAuth2 就是各种第三方登录,例如:QQ 授权登录、微信授权登录等。它们允许用户通过 QQ 或微信账号来登录其他网站或应用,而不需要为这些网站或
2024-09-22 19:29:03 1082
原创 微服务架构中的nacos
CAP中,分布式系统要保障整体的服务,因此(Partition tolerance)分区容错性必然存在。CA不能同时存在是因为分区之间的通信可能失败。在发生网络分区时,为了保持一致性,系统可能会拒绝一些请求,从而降低可用性。反之,如果继续提供服务(保证可用性),可能会导致不同节点之间的数据不一致。
2024-09-20 16:15:57 225
原创 微服务架构中的Spring Cloud LoadBalancer
你可以实现 org.springframework.cloud.loadbalancer.core.LoadBalancer 接口,或者使用现有的负载均衡器(如 RandomLoadBalancer、RoundRobinLoadBalancer 等)。在配置了自定义负载均衡器之后,当应用程序发起对 user-service 的调用时,Spring Cloud LoadBalancer 会自动使用你定义的负载均衡逻辑。这意味着,你不需要额外的代码来触发自定义的负载均衡算法,它会在处理请求时自动生效。
2024-09-20 15:55:10 341
原创 微服务架构中的springcloud gateway
多个 user-service 实例注册到 Nacos 中,服务名称相同(如 user-service),但每个实例的 IP 和端口不同。
2024-09-20 15:35:29 846
原创 微服务架构中的nginx作用
客户端发送请求,Nginx 作为反向代理首先接收请求。Nginx 根据配置,将请求通过负载均衡策略分发到多个 Gateway 实例。如果某个 Gateway 实例不可用,健康检查模块可以将其剔除。Gateway 接收到请求后,根据自身配置的路由规则,将请求转发到下游的微服务。Gateway 将微服务的响应返回给 Nginx,Nginx 最终将响应发送给客户端。
2024-09-20 14:53:07 1014
原创 微服务实现单点登录业务流程
客户端请求到达网关。网关检测是否有有效的 Token。如果没有有效 Token,网关重定向用户到 OAuth2 认证服务器。用户在认证服务器登录,认证服务器返回授权码。网关用授权码换取 Access Token 和 ID Token。网关将 Access Token 转发给下游微服务。微服务验证 Access Token 后提供资源。
2024-09-20 11:08:06 869
原创 阿里云实现验证电话号码功能
在 Spring Boot 开发的 CRM 系统中,用户注册时可以通过阿里云短信服务来校验电话号码。这个流程一般是通过发送短信验证码(OTP - One-Time Password)到用户的手机号码,并要求用户在系统中输入验证码,来验证电话号码的真实性和用户对该号码的控制权。
2024-09-20 00:28:39 543
原创 阿里云实现邮件校验功能
阿里云邮件推送服务用于发送验证邮件。用户注册时生成唯一验证链接或验证码。通过邮件将验证链接发送给用户。用户点击链接后,CRM系统通过校验 token来激活用户账户。这种方式确保了用户提供的电子邮件是有效的,并且用户对其邮箱有控制权。
2024-09-19 23:44:09 388
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人