我想配置一个网关,将多个单独的请求聚合为this link的单个请求。但是,我的用例允许用户创建其他服务。
用户提交请求:
POST http://gatway_ip/cards/foo
该图如下:
+------------------+ +-----------------+ +-----------------+
| | | | | |
| transactions | | User info | | dynamic info |
| | | | | |
+------------------+ +-----------------+ +-----------------+
| | |
+----------+ +--------+ |
| | |
| | |
+----v-----v---+ |
| | |
| /cards/foo <----------------------------+
| |
+--------------+
|
|
|
+
User
用户可以按需启动/停止动态信息。网关合并来自各种服务的json响应。例如:
交易:
{"amount": 4000}
用户信息:
{ "name": "foo" }
动态信息:
{ "wifeName": "bar" }
网关的响应是:
{
"amount": 4000,
"name": "foo",
"wifeName": "bar"
}
据我所知:
对于具有动态后端的网关聚合是否有任何解决方案?
已编辑
解决1
有关nginx自动重新加载的信息,请参见NVIDIA configurations,我们可以利用Kubernetes ConfigMap的优势,步骤如下:
backend.json
配置,该配置由lua在事件init_by_lua*
上加载(*是块或文件)backend.json
,并使用inotify监视ConfigMap更改但是,此link声称inotify无法正常工作,因为共享存储是一个重要文件系统