Spring Cloud 入门
Spring Cloud教程
服务与缺省地址端口号
- 注册中心eureka:http://127.0.0.1:8761/
- 链路追踪Zipkin:http://localhost:9411/zipkin/dependency/
- rabbitMQ:http://127.0.0.1:15672/
RPC和Rest
这是两种不同的单体链接方式。RPC使用同步机制,容易造成阻塞。Rest使用异步机制,不容易造成阻塞,但是容易产生信息丢失(Rest的具体实现就是各种消息队列中间件)。
消息中间件
消息队列 已经逐渐成为企业应用系统 内部通信 的核心手段。它具有 低耦合、可靠投递、广播、流量控制、最终一致性 等一系列功能。
当前使用较多的 消息队列 有 RabbitMQ(erlang语言编写)
、RocketMQ
、ActiveMQ(Java语言)
、Kafka
、ZeroMQ
、MetaMQ
等,而部分 数据库 如 Redis
、MySQL
以及 phxsql
也可实现消息队列的功能。
广泛来说,电商、金融 等对 事务一致性 要求很高的,可以考虑 RabbitMQ
和 RocketMQ
,对 性能要求高 的可考虑 Kafka
。
RabbitMQ的四种Exchange模式:
- fanout:广播模式。消息来了后发送给所有Queue。
- Direct:队列模式。消息来了后发给指定的Queue,其它Queue收不到。
- Topic:主题模式。Queue根据消息类型来接收消息。
第三方
流程
先通过oa-web-starter的微服务对整个项目启动,oa-web-starter这个微服务的
- web-api负责在apollo熔断的时候,提供熔断的信息。
- web-service负责使用mybatis进行repository层的操作,同时进行service层的操作。
- web-starter负责进行项目的启动,环境信息的配置。