我想描述一种复杂的建造者智能篮子方式(如商店)。
如果我想创建一个应用程序,那将会找到最便宜的收据成分。
让我们说一个tomotato意大利面食盘。
我的篮子就像那样
|-pasta
|-tomoto sauce
|-parmesan
|-meet
让我们为您提供每个元素的多个供应商,这些元素会为您带来每种成分或几种成分。
我最多可以拥有10名php工作人员,他们可以异步查找每种最便宜的成分价格。
如何管理您的购物篮数据,以确保任何工人总是将最便宜的价格放在好的情况下(配料),而不会丢失其他工人的数据。
这是一个非常抽象的问题,我不会使用成分,并且需要保留更多的数据,而不仅仅是双倍(价格)。但这个想法将完全相同。
问题:
1-如果您将物品存放在redis中,将其取出,更新面食的价格,也许,同时另一名工人已取出相同的物品来更新巴马干酪的价格。巴马干酪的价格可以多次更新,因为我们有几家供应商正在销售巴马干酪。 2-如果我使用锁定工作,我会让所有工作人员一直处于被阻止状态。在一个过程中,并且不会继续处理其他事情。
管理这些复杂情况有什么想法吗? 使用哪种数据存储? Redis / memCached / mongo?
提前感谢您提供任何帮助