寻找可扩展的 api 解决方案
Looking for an scalable api solution
我是 Whosebug 上的新人,这是我的第一个问题。
抱歉我的错字或语法错误,我的英语不是很好。
情况:
我正在研究一种 API.
我们构建了一个向最终用户发送消息和警报的系统。最终用户可以通过应用程序(IOS、Android、Windows)、短信或......
在手机上接收消息和提醒
为此,另一个团队正在开发后端。此后端包含用于添加消息或警报(通知)的用户界面。此后端包含所有通知。此后端需要将所有实际通知推送到 API 系统 仅保留实际通知。
这 api 需要将新警报作为推送消息发送到应用程序。普通消息不会推送到终端设备。
终端设备和第 3 方用户可以从 API(如果配置了过滤器,则使用过滤器)询问数据(正常消息或警报)示例:给我所有消息来自城市 Heerlen 或包含单词 "car".
的所有消息
当后端插入新消息或警报时,后端会更新 api 数据。当 api 收到新警报时,他会发送新警报的新推送通知。
更新------------------------------------
这一切都是必要的,因为 API 和后端需要彼此分开操作。因此,当后端离线时,api 仍然可以工作。否则,当 api 关闭时,后端仍然有效。
结束更新-------------------------------------
api一直在线,但不需要处理很多请求。目前有警报,api 需要发出 2.000.000 条通知,因此可扩展性是必须的!警报后需要处理大量请求。
现在我的问题:
- 是否有可以针对我的问题配置或使用的现有软件解决方案?
- 我们能否更好地为这个问题构建自己的解决方案,也许基于一个框架?
- 是否有可用于创建具有此功能的 api 的框架?
非常感谢理解我糟糕的英语、问题并试图帮助我 ;-)
编辑------------------------------------
也许这张图片让我的情况更容易理解
Wished situation image
我想我自己找到了一些解决方案,但我不确定他们是否可以满足我的要求,我不确定我是否可以使用它来解决我的问题。
- 亚马逊API网关
- tyk.io
- WSO2
结束编辑------------------------------------ -
我找不到解决办法,所以我在学校和我的老师谈过,他告诉我,我如何解决这个问题并不重要。我唯一需要做的就是取消 api 与后端的链接,这样当 API 超时或离线时,后端仍然在线。否则 API 需要在后端维护时保持在线。我已经用这些信息更新了我的问题!
我做了很多研究,但找不到解决我问题的软件解决方案。但是我找到了解决我问题的其他解决方案。
我用自己的数据库创建了第二个后端。主后端管理第二个后端 "API_backend" 中的数据。此迷你后端仅提供 API 的数据。 API 网关(是的,我发现这是 API 东西的名称)从这个 "API_backend" 获取他的数据并在所有终端设备上提供它。
我画了一张图。访问它
我通过 google 云消息向应用程序发送推送消息解决了警报推送问题。在出现警报的情况下,应用程序重新确定它是警报而不是普通消息,然后它将向 API.
询问新的警报信息。
我是 Whosebug 上的新人,这是我的第一个问题。 抱歉我的错字或语法错误,我的英语不是很好。
情况: 我正在研究一种 API.
我们构建了一个向最终用户发送消息和警报的系统。最终用户可以通过应用程序(IOS、Android、Windows)、短信或......
在手机上接收消息和提醒为此,另一个团队正在开发后端。此后端包含用于添加消息或警报(通知)的用户界面。此后端包含所有通知。此后端需要将所有实际通知推送到 API 系统 仅保留实际通知。
这 api 需要将新警报作为推送消息发送到应用程序。普通消息不会推送到终端设备。
终端设备和第 3 方用户可以从 API(如果配置了过滤器,则使用过滤器)询问数据(正常消息或警报)示例:给我所有消息来自城市 Heerlen 或包含单词 "car".
的所有消息当后端插入新消息或警报时,后端会更新 api 数据。当 api 收到新警报时,他会发送新警报的新推送通知。
更新------------------------------------ 这一切都是必要的,因为 API 和后端需要彼此分开操作。因此,当后端离线时,api 仍然可以工作。否则,当 api 关闭时,后端仍然有效。 结束更新-------------------------------------
api一直在线,但不需要处理很多请求。目前有警报,api 需要发出 2.000.000 条通知,因此可扩展性是必须的!警报后需要处理大量请求。
现在我的问题: - 是否有可以针对我的问题配置或使用的现有软件解决方案? - 我们能否更好地为这个问题构建自己的解决方案,也许基于一个框架? - 是否有可用于创建具有此功能的 api 的框架?
非常感谢理解我糟糕的英语、问题并试图帮助我 ;-)
编辑------------------------------------
也许这张图片让我的情况更容易理解 Wished situation image
我想我自己找到了一些解决方案,但我不确定他们是否可以满足我的要求,我不确定我是否可以使用它来解决我的问题。
- 亚马逊API网关
- tyk.io
- WSO2
结束编辑------------------------------------ -
我找不到解决办法,所以我在学校和我的老师谈过,他告诉我,我如何解决这个问题并不重要。我唯一需要做的就是取消 api 与后端的链接,这样当 API 超时或离线时,后端仍然在线。否则 API 需要在后端维护时保持在线。我已经用这些信息更新了我的问题!
我做了很多研究,但找不到解决我问题的软件解决方案。但是我找到了解决我问题的其他解决方案。
我用自己的数据库创建了第二个后端。主后端管理第二个后端 "API_backend" 中的数据。此迷你后端仅提供 API 的数据。 API 网关(是的,我发现这是 API 东西的名称)从这个 "API_backend" 获取他的数据并在所有终端设备上提供它。
我画了一张图。访问它
我通过 google 云消息向应用程序发送推送消息解决了警报推送问题。在出现警报的情况下,应用程序重新确定它是警报而不是普通消息,然后它将向 API.
询问新的警报信息。