Spring Cloud 组件之注册中心

Eureka(已停更说明

集群架构原理:

对于eureka自身来说,其集群构建的原理简单来说就是 相互注册,相互守望,最后作为一个整体给外界提供注册服务

  • Eureka Server(类比物业公司)提供服务注册的服务,Eureka Client 会在 Eureka Server 中进行注册,这样server端注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到;
  • Eureka Client (类比业主)具备一个内置的、使用轮询(round-robin)负载算法的负载均衡器。在应用启动之后,客户端将会向 Eureka Server 发送心跳(类比交物业费,默认周期为30s),如果 Eureka Server 在多个心跳周期内没有收到某个节点的心跳,Eureka Server 将会从服务注册表中把这个节点移除掉(默认90s)。


Shiro的常用组件介绍

Shiro 概述

在 Java 安全框架的领域中,如果说 Spring Security 是全副武装、规则森严的 “重装骑士”,那么 Apache Shiro 则更像是一位身轻如燕、化繁为简的 “太极宗师”。

长期以来,开发者们往往被 “安全” 二字背后的复杂性所震慑:权限绕过、Session 丢失、加密算法选型、多数据源对冲…… 这些问题如同乱麻一般交织在业务代码中。而 Shiro 的出现,核心宗旨只有八个字:“简单易用,直觉开发”

设计模式之模板和委派

模板模式

什么是模板模式?

想象一下,你和朋友决定一起做一道菜,比如 “炒青菜”。你们都知道做这道菜的基本流程是固定的:‌买菜 -> 洗菜 -> 切菜 -> 炒菜 -> 装盘。这个流程就是 “算法的骨架”。但是,每个人炒菜的“细节”可以不一样:你可能喜欢放点蒜末提香、朋友可能喜欢加一勺醋、你们可能用的锅、火候也不同。‌模板设计模式,就是为了解决这种 流程固定,细节可变 的情况而设计的。它把“炒菜”这个固定流程写在一个“父类”(可以理解为一个标准菜谱)里,这个流程是不能改的。而 “炒菜” 这个具体步骤则被定义成一个 “抽象方法”,交给具体的 “子类” 去实现。