微服务技术体系
文章平均质量分 83
微服务技术系列的功能实现及原理分析、包含SpringCloud、Neflix、Alibaba等功能实现机制
夏壹-10分分享
分享
展开
-
SpringBoot对外接口IP黑白名单的设计与实施
IP黑白名单机制是确保接口安全性的重要措施之一。在Spring Boot中,我们可以利用拦截器机制实现IP黑白名单限制,需要我们根据实际情况进行配置和调整。需要创建一个自定义的拦截器类,实现HandlerInterceptor接口。在preHandle方法中,我们可以检查请求的IP地址是否在黑白名单中。原创 2024-06-25 11:00:04 · 850 阅读 · 0 评论 -
带你认识Spring Boot Starter
Spring Boot Starter 是一组便捷的依赖描述符,它们封装了特定技术或功能的所有必要依赖项和配置,使开发者能够快速将这些功能集成到 Spring Boot 项目中。每个 Starter 都对应一个功能或技术栈,通过引入相应的 Starter,开发者无需手动配置和管理多个相关依赖项,就能轻松启用该功能。原创 2024-06-18 10:20:54 · 1208 阅读 · 0 评论 -
Spring boot 注解实现幂等性
创建一个新的 Java 注解类,通过 @interface 关键字来定义,并可以添加元注解以及属性。/*** 《像乌鸦一样思考》让孩子学会观察和独立思考!*/@Retention(RetentionPolicy.RUNTIME) // 程序运行时有效@Target(ElementType.METHOD) // 方法注解/*** 请求标识符的参数名称,默认为"requestId"*//*** 幂等有效时长(单位:秒)*//*** 微观小世界】奇趣探险,启程进入神秘的微观世界!原创 2024-06-14 14:21:41 · 670 阅读 · 1 评论 -
SpringBoot值得注意的5件小事
提供了更大的灵活性,能够控制响应的各个方面,包括HTTP状态码、响应头、响应体等,使得程序能够更精确地构建响应结果,根据业务需求返回不同的HTTP状态码等。其实使用IDEA可以很直观的注意到这个问题,毕竟它已经给出了警告和提示,任何有代码强迫症的选手都应该干掉这条可恶的波浪线!比如下面这个App的配置,当需要处理大量属性或复杂配置结构时,它提供的便利性和长远影响远大于建个类所花费的时间。使用构造函数注入或@Resource。,一个是可读性变强,另一个是可以让service返回业务的结果,而且控制器的结果。原创 2024-06-13 12:10:50 · 575 阅读 · 5 评论 -
【权限设计系列】「认证授权专题」微服务架构的登陆认证问题
在微服务架构下,必须对企业的平台生态进行合理的业务划分,每个业务板块将自成系统,这些系统业务比较独立,应当独立拆分。每个系统又可根据各自的业务模型进行切分,将业务模型和用户需求统筹分析后建立恰当的领域模型,形成独立的服务。另外,企业平台的客户范围比较复杂,有2B的业务,也有2C的,还有 2G(goverment)的,因此平台级的统一身份管理必须涉及组织实体和个人实体两类,其中组织实体包括机关(G)、企业单位(B)、团体组织(B)等,这类似于多租户架构的概念,但又比传统多租户架构复杂。原创 2023-09-06 07:12:15 · 289 阅读 · 0 评论 -
Spring Boot单元测试
单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证的过程就叫单元测试。单元测试是开发人员编写的一小段代码,用于检验被测代码的一个很小的、很明确的(代码) 功能是否正确。执行单元测试就是为了证明某段代码的执行结果是否符合我们的预期。如果测试结果符合我们的预期,称之为测试通过,否则就是测试未通过(或者叫测试失败)Java 中的最小测试单元就到方法了,也就说对方法的测试就是单元测试。原创 2023-05-18 17:51:37 · 1467 阅读 · 0 评论 -
SpringBoot国际化
Spring Boot Validation起初其并不直接支持读取Spring Boot自身的国际化配置(通过spring.messages进行配置),而是需要在resources/ValidationMessages.properties中进行配置的国际化属性才会生效,而后续在Spring Boot 2.6+版本才支持Validation与Spring Boot自身的国际化配置相结合。当我们在开发国际化的网站时,后端接口的信息需要根据用户所使用的语言返回对应的内容。原创 2023-02-01 15:39:26 · 3241 阅读 · 2 评论 -
Spring Boot日志配置logback
logback在Spring Boot项目中使用特别注意异步打印队列大小、丢弃大小、是否阻塞。此外log节点注意additivity属性值原创 2022-11-16 22:00:00 · 3354 阅读 · 0 评论 -
微服务接口幂等性设计
一,什么是幂等性所谓幂等性,就是对接口的多次调用所产生的结果和调用一次结果是一致的。即不用担心重复执行。二,业务场景用户在线下单,下单后系统需要生成对应的工单,用户通过在线工单跟进后续服务状态。在这个过程中可能会出现了几个问题:1,用户在前端重复提交,造成同样的订单创建多笔。2,订单服务调用工单服务由于网络原因或者其他原因失败,发起重试,可造成工单服务创建多笔。三,技术...原创 2019-10-15 19:55:42 · 759 阅读 · 0 评论 -
微服务项目分层
一,起因铁打的营盘流水的兵,在后人接手前人留下的项目时,经常咆哮一番,其中一个重要问题就是项目分层架构不清晰,分工不明确,可读性很差,没有办法维护和升级。经常出现推翻了重做,要不就忍着哪里出BUG补哪里。二,经典分层controller层为控制层,用来接受用户的请求。不会涉及太多的业务处理操作,一般交给service层来处理。service层主要用来处理一些业务逻辑,不做...原创 2019-10-11 18:26:41 · 2202 阅读 · 0 评论