如何更好地实现网站更新状态的需求?

WBOY
Libérer: 2016-06-06 20:41:03
original
940 Les gens l'ont consulté

我有这样一个需求。
有一系列的项目,这些项目分别由使用用户与审核人员操作。

用户添加一个项目A,审核人员审核项目A,这时候状态会随之更新。
但是有些状态,它不是实时修改的。比方说,这个项目A有一个状态修改的触发时间,到了这个时间点,项目A就会自动的改变状态。

我现在是每次打开项目时,都去查一下有哪些符合条件可以修改状态的时间点,如果找到了,就去修改它的状态。这样做的效率很低,因为项目一多,列表就打开很慢。
我想请问各位有没有更好的方法,在项目有很多状态的情况下,实现触发修改。

回复内容:

我有这样一个需求。
有一系列的项目,这些项目分别由使用用户与审核人员操作。

用户添加一个项目A,审核人员审核项目A,这时候状态会随之更新。
但是有些状态,它不是实时修改的。比方说,这个项目A有一个状态修改的触发时间,到了这个时间点,项目A就会自动的改变状态。

我现在是每次打开项目时,都去查一下有哪些符合条件可以修改状态的时间点,如果找到了,就去修改它的状态。这样做的效率很低,因为项目一多,列表就打开很慢。
我想请问各位有没有更好的方法,在项目有很多状态的情况下,实现触发修改。

有简单的方法,也有复杂的方法。

简单的,写个定时器,利用定时器程序去过呢关心,定期执行程序检查项目是否到了时间点,这样就能把更新操作和你打开项目的操作解耦。

复杂点的,消息队列,特别是复杂系统里面,一个事件的更新,可能会引起多个数据的联动修改。那么主事件触发后,会往消息队列中放一条消息,多个消息监听者收到消息后,会各自处理自己相关的信息数据。

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!