骨灵冷火,是练药的好火哟。极冷,又极热。在冰冻中被烧死:)
1、认识 Solon Cloud Gateway
Solon Cloud Gateway 是基于 Solon Cloud、Vert.X 和 Solon Rx(reactive-streams) 接口实现。小特点:
- 纯响应式的接口体验
- 流式代理转发(又快,又省内存)
- 可改写所有请求数据,以及所有响应数据
打包大小为 7Mb 左右,"并发" 比同类友商高 200%。一个简单的"对比"应用示例:
https://gitee.com/opensolon/demo_solon_and_spring-gateway
2、经典架构(也是老气的架构)
3、Helloworld
有没有注册与发布服务,都可以用哦。不管是 php 或者 node.js 或得 java,只要是 http 服务都可互通。
假如我们有个 node.js 的"功能服务",接口请求地址为:http://localhost:8080/demo/hello?name=dami
。如何配置代理网关呢?
-
- 新建个空的 solon-lib 项目,添加 maven 依赖:
xml
<dependency>
<groupId>org.noear</groupId>
<artifactId>solon-cloud-gateway</artifactId>
</dependency>
-
- 添加分布式网关的应用配置(app.yml)
yaml
server.port: 9090
solon.cloud.gateway:
routes:
- id: demo
target: "http://localhost:8080" # 或 "lb://user-service"
predicates:
- "Path=/demo/**"
-
- 启动网关后,现在可以用网关地址了:
http://localhost:9090/demo/hello?name=dami