我正在使用没有任何内置缓存的Magento2 REST API,因此我介绍了一个基于公共模块的API。
基本上它的作用是在产品上缓存GET请求的结果(^\/V1\/products
对匹配POST
的路径的请求。)
显然,如果每次有人下订单时缓存都没有失效,那么库存数量等细节就不再有效,但这似乎是一个糟糕的选择。
我唯一能想到的是,根据网站的需要,计算好的缓存TTL(可能是X分钟),并接受有关库存数量的信息可能在短时间内出错(X - Y分钟) )。
当然,在购物车中添加产品的if os.path.isfile(fullpath):
请求将始终提供正确的输出(如果缺货则会出错),但可能与显示的内容存在一些不一致。
所以,我的问题是:这是一种有效的方法吗? 如果答案是否定的,你能指出我正确的方向吗?
答案 0 :(得分:1)
今天偶然发现了这一点。它可能对你有用或给你一些启发(免责声明:我没试过)
https://github.com/magespecialist/m2-MSP_APIEnhancer
如果你自己编写,我就不会使用ttl。更好的方法是使用缓存失效系统,并使现在过时的部分无效。比使整个缓存无效更棘手。