近期想为 app 加上位置共享的功能,具体的功能设想是,当前设备通过扫码加入到指定的位置共享群中,然后可将群内所有人的位置实时的显示在地图上。
具体是创建者请求服务器创建一个位置共享群( post 或者 get ),服务器返回一个唯一的群 ID,而后其它用户通过该 ID,加入到群中,而后启动 TimerTask ,隔 5 秒钟(实时性不高),向服务器发送自己的位置信息( post ),服务器返回(json)组内其它成员的位置信息,以此循环。
APP 日活用户不多,只有 3000 左右,所以感觉压力不大,计划用阿里云,1 核 1G 2M 带宽
后端 spring mvc +sqlite
所有请求都是走 http
请问各位大佬该套方案有什么不妥没,或者大家有更好的实现方式,求赐教!
具体是创建者请求服务器创建一个位置共享群( post 或者 get ),服务器返回一个唯一的群 ID,而后其它用户通过该 ID,加入到群中,而后启动 TimerTask ,隔 5 秒钟(实时性不高),向服务器发送自己的位置信息( post ),服务器返回(json)组内其它成员的位置信息,以此循环。
APP 日活用户不多,只有 3000 左右,所以感觉压力不大,计划用阿里云,1 核 1G 2M 带宽
后端 spring mvc +sqlite
所有请求都是走 http
请问各位大佬该套方案有什么不妥没,或者大家有更好的实现方式,求赐教!
16 条回复 • 2019-10-06 14:31:51 +08:00
|
1
opengps 2019 年 10 月 5 日 via Android 3000 不是同时在线,峰值按照 100 估算没有什么不妥,很容易实现,注意用好缓存,每秒写入 100 的量在硬盘上很难,在内存里很轻松,我有用网页的 h5 有过一个 demo,地址 https://www.opengps.cn/Share/ShareLocation/Index.aspx?f=v
|
|
2
laminux29 2019 年 10 月 6 日
不要感觉压力大不大,要进行计算压力大不大。包括内存与带宽。
|
|
3
also24 2019 年 10 月 6 日
如果用户量更大一点,也许会选择直接搞个 mqtt,然后订阅指定 topic,还可以顺便用遗嘱功能做 “最后定位”
|
|
4
wolegequ 2019 年 10 月 6 日 via Android
好奇应用场景
|
|
8
qilishasha 2019 年 10 月 6 日 via iPhone
现在搞传销都用上钉钉了,人脸识别打卡实时位置,结果精准“文明返乡”
|
|
9
starsriver 2019 年 10 月 6 日 via Android
我觉得流量不算什么,除了把静态缓存以外的数据传输几百个字节。
这么点计算量根本不是问题,又不是密集型计算。就算是一千个人,五秒刷新一次,也才几十 k 流量。 |
|
10
starsriver 2019 年 10 月 6 日 via Android
话说,我一个工控机和阿里云双核差不多的配置,做种经常几千个连接,cpu 使用率才 7%左右。
|
|
11
opengps 2019 年 10 月 6 日 via Android
|
|
14
twoyuan 2019 年 10 月 6 日
app 那里没必要用 TimerTask 吧?定位位置变化应该都会有回调的
|
|
15
richard1122 2019 年 10 月 6 日 via iPhone 协议的话推荐 stomp over websocket,spring boot 自带集成了,前段时间用过很方便,并且将上报数据跟接收数据分开,不需要固定的一来一回。
数据可以先用 redis 存取 |
|
16
plagps OP @richard1122 谢谢
|