碰到这么个问题
网站有一块搜索功能,调用了第三方的服务,通过搜索关键词,第三方服务返回一个JSON数据列表,可以直接展示列表页,是没有问题的,
但是关键还有一个详情页,第三方的服务只提供列表数据(列表里的items包含了所有详情数据),没有提供通过ID什么的单独返回详情的功能,
我考虑了几种方式 都有不妥的地方
第一,把列表存 session
优点: 自动过期,存取方便,一个用户一个,多用户同时使用不要考虑数据乱串
缺点: 这个列表,如果用户多翻几页有点大啊,用户多了,更不得了了
第二,把列表存临时文件
优点:没啥优点,能够完成任务而已
缺点: 开销太大,还要定期去处理删除无用的临时文件
第三,存数据库
优点:也没有啥特别的优点,和存文件差不多
缺点:每一次搜索都会写入一堆数据到数据库,用户点击的可能只是其中一两个,但不得不把所有数据全存进去,开销估计比存文件还大
由于网站跑在虚拟主机上,什么redis memcache 都不要想了,不支持,
存客户端,也不要想了,调有这个服务(不是哪个第三方API,是自己网站封装了的API)有网页端,支付宝小程序,微信小程序,要改起来,太麻烦了
所以这个临时数据 ,到底存哪里,还请各位提供一些好的思路