我有这样一个需求。
有一系列的项目,这些项目分别由使用用户与审核人员操作。
用户添加一个项目A,审核人员审核项目A,这时候状态会随之更新。
但是有些状态,它不是实时修改的。比方说,这个项目A有一个状态修改的触发时间,到了这个时间点,项目A就会自动的改变状态。
我现在是每次打开项目时,都去查一下有哪些符合条件可以修改状态的时间点,如果找到了,就去修改它的状态。这样做的效率很低,因为项目一多,列表就打开很慢。
我想请问各位有没有更好的方法,在项目有很多状态的情况下,实现触发修改。
回复内容:
我有这样一个需求。
有一系列的项目,这些项目分别由使用用户与审核人员操作。
用户添加一个项目A,审核人员审核项目A,这时候状态会随之更新。
但是有些状态,它不是实时修改的。比方说,这个项目A有一个状态修改的触发时间,到了这个时间点,项目A就会自动的改变状态。
我现在是每次打开项目时,都去查一下有哪些符合条件可以修改状态的时间点,如果找到了,就去修改它的状态。这样做的效率很低,因为项目一多,列表就打开很慢。
我想请问各位有没有更好的方法,在项目有很多状态的情况下,实现触发修改。
有简单的方法,也有复杂的方法。
简单的,写个定时器,利用定时器程序去过呢关心,定期执行程序检查项目是否到了时间点,这样就能把更新操作和你打开项目的操作解耦。
复杂点的,消息队列,特别是复杂系统里面,一个事件的更新,可能会引起多个数据的联动修改。那么主事件触发后,会往消息队列中放一条消息,多个消息监听者收到消息后,会各自处理自己相关的信息数据。

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增强codemodocultion,可验证性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

选择DependencyInjection(DI)用于大型应用,ServiceLocator适合小型项目或原型。1)DI通过构造函数注入依赖,提高代码的测试性和模块化。2)ServiceLocator通过中心注册获取服务,方便但可能导致代码耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)启用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替换loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化进行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)

tomakephpapplicationsfaster,关注台词:1)useopcodeCachingLikeLikeLikeLikeLikePachetoStorePreciledScompiledScriptbyTecode.2)MinimimiedAtabaseSqueriSegrieSqueriSegeriSybysequeryCachingandeffeftExting.3)Leveragephp7 leveragephp7 leveragephp7 leveragephpphp7功能forbettercodeefficy.4)

到ImprovephPapplicationspeed,关注台词:1)启用opcodeCachingwithapCutoredUcescriptexecutiontime.2)实现databasequerycachingusingpdotominiminimizedatabasehits.3)usehttp/2tomultiplexrequlexrequestsandredececonnection.4 limitsclection.4.4

依赖注入(DI)通过显式传递依赖关系,显着提升了PHP代码的可测试性。 1)DI解耦类与具体实现,使测试和维护更灵活。 2)三种类型中,构造函数注入明确表达依赖,保持状态一致。 3)使用DI容器管理复杂依赖,提升代码质量和开发效率。

databasequeryOptimizationinphpinvolVolVOLVESEVERSEVERSTRATEMIESOENHANCEPERANCE.1)SELECTONLYNLYNESSERSAYCOLUMNSTORMONTOUMTOUNSOUDSATATATATATATATATATATRANSFER.3)


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript开发工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境