我想把最后一次插入数据库的记录ID保存下载,下载调用该方法时又去读取。插入完又覆盖原来的记录ID。怎么做性能比较好?保存到数据库?保存到文件?使用缓存会不会被刷掉?
我想把最后一次插入数据库的记录ID保存下载,下载调用该方法时又去读取。插入完又覆盖原来的记录ID。怎么做性能比较好?保存到数据库?保存到文件?使用缓存会不会被刷掉?
如果是有redis
或者memcache
作为缓存的话设置key
永不过期可以解决(redis
可持久化数据,但不排除宕机后丢失),每次插入后更新值,相对性能较好,保存数据库和文件也可以解决问题,也可以两者同时使用,既保存到数据库又放入缓存,更新时增加成本但可靠性更好,也可以换种思路,每次去数据库查询,对于innodb
引擎的mysql
数据表,主键查询效率较高,id
逆序取第一条也是不错的方案,如果用了连接池性能更好。
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
5 回答1.4k 阅读
递归算法符合这个业务