我有一个链接到我的网站的 MySql 数据库,它有一个带有任务列表的表(列由下面的“/”分隔),即:
任务1/doTask1.sh/待办事项
任务2/doTask2.sh/完成
任务3/doTask3.sh/待办事项
任务4/doTask4.sh/待办事项
ETC...
在对我的网站的每个请求中,我希望执行“待办事项”任务,然后由服务器标记为“完成”。任务只能执行一次。但问题来了。
如果什么:
用户 A 选择标记为“待办事项”的任务。doTask1.sh 执行并标记为完成,由用户 A 的请求触发。用户 B 选择标记为“待办事项”的任务(仅限任务 3 和任务 3,因为任务 1 已完成)。doTask3.sh 执行并标记为完成,由用户 A 的请求触发。doTask3.sh 再次执行,由用户 B 的请求触发。doTask4.sh 也是如此。
由于同时存在数据库连接,使用 PHP/Nginx/MySql 会发生这种情况吗?如果是,如何绕过/避免这个问题?
在这个例子中,我使用了 doTaskx.sh 来简化情况。实际上,此列将包含任务描述,支持我的网站的 PHP 脚本将根据该描述执行任务。