http-client的使用方式

主要演示一下http-client的使用方式,基本与Feign差不多,但是做了一些扩展,具体示例可以参考对应的测试用例

pom.xml
1
2
3
4
5
<dependency>
<groupId>com.cowave.zoo</groupId>
<artifactId>http-client</artifactId>
<version>2.7.6</version>
</dependency>

schedule-fom的使用方式

说明一下schedule-fom的常见使用场景和使用方式

pom.xml
1
2
3
4
5
6
7
8
9
10
<dependency>
<groupId>com.cowave.zoo</groupId>
<artifactId>schedule-fom</artifactId>
<version>2.7.6</version>
</dependency>
<!-— 需要依赖一下micrometer-core,版本根据使用的spring版本选择 —->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
</dependency>

读.《明朝那些事儿》

1
2
3
《临江仙·滚滚长江东逝水》 ——明·杨慎
滚滚长江东逝水,浪花淘尽英雄。是非成败转有空,青山依旧在,几度夕阳红。
白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢,古今多少事,都付笑谈中。

系统设计的一些概念

系统设计主要在于理解权衡取舍:一致性与可用性、延迟与吞吐量、简单性与灵活性。

扩展不仅仅是“增加服务器数量”。你还必须考虑负载均衡、分片、复制和瓶颈问题。

分布式系统中出现故障是正常现象,因此需要采用速率限制、断路器、重试和隔离层等可靠性模式。

缓存、队列和发布/订阅是提高性能和解耦的最佳选择,但它们也带来了关于一致性和顺序的新挑战。

可观测性和安全性概念,例如跟踪、SLI、OAuth、TLS 和零信任,对于不仅速度快而且安全、可调试的系统至关重要。