Database 缓存还是存储在数据库中?

Database 缓存还是存储在数据库中?,database,api,caching,gmail,memcached,Database,Api,Caching,Gmail,Memcached,我正在开发一个以Gmail imap API为后端的web邮件客户端。如果我想在用户的收件箱中保存电子邮件,我是否最好使用memcache之类的东西来存储从API调用接收到的数据?还是把它放在数据库中以便以后调用更好?两者都有。从api获取结果集时,将电子邮件存储在db中。同时将其保存在memcache中。如果没有任何变化,则在短时间内将其从缓存中拉出。如果缓存过时,则每隔一段时间从数据库中刷新一次访问。检查api时,若在缓存版本中发现差异,则刷新它,将结果保存到db,然后将新数据添加到缓存中

我正在开发一个以Gmail imap API为后端的web邮件客户端。如果我想在用户的收件箱中保存电子邮件,我是否最好使用memcache之类的东西来存储从API调用接收到的数据?还是把它放在数据库中以便以后调用更好?

两者都有。从api获取结果集时,将电子邮件存储在db中。同时将其保存在memcache中。如果没有任何变化,则在短时间内将其从缓存中拉出。如果缓存过时,则每隔一段时间从数据库中刷新一次访问。检查api时,若在缓存版本中发现差异,则刷新它,将结果保存到db,然后将新数据添加到缓存中

这将改善用户体验,减少api调用和数据库访问

记住:包括数据库在内的一切都只是另一个缓存层——具有不同的访问特性和性能权衡