#安卓开发#关于位置共享的实现

2019-10-05 20:26:56 +08:00
 plagps
近期想为 app 加上位置共享的功能,具体的功能设想是,当前设备通过扫码加入到指定的位置共享群中,然后可将群内所有人的位置实时的显示在地图上。
具体是创建者请求服务器创建一个位置共享群( post 或者 get ),服务器返回一个唯一的群 ID,而后其它用户通过该 ID,加入到群中,而后启动 TimerTask ,隔 5 秒钟(实时性不高),向服务器发送自己的位置信息( post ),服务器返回(json)组内其它成员的位置信息,以此循环。
APP 日活用户不多,只有 3000 左右,所以感觉压力不大,计划用阿里云,1 核 1G 2M 带宽
后端 spring mvc +sqlite
所有请求都是走 http
请问各位大佬该套方案有什么不妥没,或者大家有更好的实现方式,求赐教!
10753 次点击
所在节点    Android
16 条回复
opengps
2019-10-05 23:01:24 +08:00
3000 不是同时在线,峰值按照 100 估算没有什么不妥,很容易实现,注意用好缓存,每秒写入 100 的量在硬盘上很难,在内存里很轻松,我有用网页的 h5 有过一个 demo,地址 https://www.opengps.cn/Share/ShareLocation/Index.aspx?f=v
laminux29
2019-10-06 02:21:43 +08:00
不要感觉压力大不大,要进行计算压力大不大。包括内存与带宽。
also24
2019-10-06 02:29:55 +08:00
如果用户量更大一点,也许会选择直接搞个 mqtt,然后订阅指定 topic,还可以顺便用遗嘱功能做 “最后定位”
wolegequ
2019-10-06 09:23:13 +08:00
好奇应用场景
plagps
2019-10-06 09:25:40 +08:00
@wolegequ 这个场景很常见 位置共享嘛。。。
plagps
2019-10-06 09:26:08 +08:00
@laminux29 不知道怎么算。。
plagps
2019-10-06 09:32:51 +08:00
@opengps 谢谢老哥 你的网站流量大不大?
qilishasha
2019-10-06 10:06:44 +08:00
现在搞传销都用上钉钉了,人脸识别打卡实时位置,结果精准“文明返乡”
starsriver
2019-10-06 10:21:01 +08:00
我觉得流量不算什么,除了把静态缓存以外的数据传输几百个字节。

这么点计算量根本不是问题,又不是密集型计算。就算是一千个人,五秒刷新一次,也才几十 k 流量。
starsriver
2019-10-06 10:23:21 +08:00
话说,我一个工控机和阿里云双核差不多的配置,做种经常几千个连接,cpu 使用率才 7%左右。
opengps
2019-10-06 10:30:18 +08:00
@plagps 还行吧,每天 1000ip
@starsriver 上传不用考虑 2M 的服务端出带宽。工控机属于物理机,而且很多是 SSD 硬盘,单机性能其实远超阿里云同配置。
plagps
2019-10-06 11:13:18 +08:00
@opengps 兄弟 咋联系你
opengps
2019-10-06 11:21:03 +08:00
@plagps 微信 id 同 v2 id
twoyuan
2019-10-06 12:35:53 +08:00
app 那里没必要用 TimerTask 吧?定位位置变化应该都会有回调的
richard1122
2019-10-06 13:05:10 +08:00
协议的话推荐 stomp over websocket,spring boot 自带集成了,前段时间用过很方便,并且将上报数据跟接收数据分开,不需要固定的一来一回。

数据可以先用 redis 存取
plagps
2019-10-06 14:31:51 +08:00
@richard1122 谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/606477

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX