java - 如何在 android 应用程序中持续监听 Dynamo DB 更改?
问题描述
我正在开发一个 Android 应用程序,我将多个设备的经纬度值存储在 Dynamo Db 表中并尝试获取它们并实时在地图上显示它们的位置。所以我想知道如何持续监听 Dynamo DB Table 中的数据变化。目前我正在使用“计时器”,它每 1 秒重复一次并获取最新的经纬度值。但这不是一个好的解决方案。这个你能帮我吗。
解决方案
您可以通过使用 DynamoDB Streams 调用的 lambda 函数来实现这一点。因此,您不必定期提取数据,但 AWS 服务会将数据推送到您的设备。基本上,当 Dynamodb 有更新时,Lambda 会处理并返回结果。
根据您的用例,我可以看到两种可能的路径来检索 lambda 处理的数据。
- 处理完数据后,lambda 可以调用您的设备订阅的 SNS 主题。
- 您的设备可以侦听代理到 lambda 函数的 API 网关的套接字连接。
https://docs.aws.amazon.com/lambda/latest/dg/with-ddb-example.html https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.html https:// aws.amazon.com/blogs/compute/announcing-websocket-apis-in-amazon-api-gateway/
推荐阅读
- c++ - 实施“数字战争”的最优策略
- html - Angular 8过滤器:保留文本区域输入的换行符
- python - 通过 Python 根据 if 条件添加新行
- c# - SMTP 地址没有与之关联的邮箱
- spring-boot - 带有 Keycloak SSO 身份验证的 Spring+Vue.js 应用程序:XSS 堵塞?
- excel - 将 Kubernetes 从 v1.11 升级到 v1.15
- laravel - 在 laravel 5.8 中的数据库迁移中已经存在基表或视图
- python - 根据 12 小时格式创建时间箱作为 pandas 中的列
- angular - 如何让 Angular 应用程序在启动时读取 cookie
- javascript - 图表与鼠标悬停时的旧值重叠