关于 app 后端如何保存用户个人资料的问题

2015-11-06 18:07:33 +08:00
 shuimu98

因为是从游戏服务器转到 app 服务器开发,所以有些想法不知道是否适用当前的应用场景。

场景如下:
app 客户端在用户登录后,需要向服务器请求拉取用户的个人信息,例如:昵称、图像、好友列表之类的信息,如果每次请求都需要查询数据库,会对数据库造成很大的压力吗?

基于上面的考虑,我用游戏服务器的思路,当用户登录后,缓存用户的资料到 redis 中,这样可以避免频繁查询数据库,但是,有个问题,用户越多, redis 中缓存的用户数据就越多,所以我想增加一个定时器,定时清理超过一段时间的数据,保证 redis 缓存的数据不会过大。

因为第一次做 app 服务器,所以请大神分析下我的思路是否正确,谢谢。

1945 次点击
所在节点    服务器
1 条回复
billlee
2015-11-06 19:23:26 +08:00
用 redis 做缓存是正确的思路。另外 redis 做缓存用的时候,是可以设置每个 key 的过期时间的,还可以设置内存限制,在超过限制时自动 drop 掉旧的内容。所以好像没什么必要用定时器。

另外,还可以在 HTTP 层面做缓存,利用 nginx 的缓存功能,绕过 app 服务器。

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

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

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

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

© 2021 V2EX