一.问题分析
之所以要缓存菜品,是因为当众多用户频繁操作点单时,会频繁的对数据库进行访问和增删改查等操作。这样会导致数据库的运行压力巨大,因此我们要将菜品数据缓存到redis当中。当用户访问数据库中的数据时,首先访问redis中的数据,如果没有再去访问数据库中的数据。

但是在缓存菜品数据时,我们要考虑如下问题:
1.缓存数据时以什么数据单位来缓存。
2.哪些数据要缓存,哪些数据不缓存。
3.当缓存后的数据在sql数据库中发生修改后,如何确保缓存数据与sql数据库中的数据保持一致。
首先我们要考虑是一份菜品缓存一条数据,还是所有的菜品保存一份缓存数据?因为小程序是按照分类来展示菜品,因此redis的每条记录展示一个分类,即分类名和其中的菜品。
key我们可以使用“dish_”+分类id。而value我们使用String字符串来存储分类下的数据。
