热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

PHP不依赖系统自动执行机制-VIVIAN&DEREK

PHP不依赖系统自动执行机制-VIVIAN&DEREK
不依赖系统,以及不依赖yii事物机制,则考虑人为触发。触发可以写在总体的公共页面上,但是考虑到对数据库以及WWW服务器的压力问题,程序的延迟问题,需要对执行函数进行一些优化。

首先,我们考虑对数据库的压力,每次点击页面,我们都让他触发监听系统,监听系统首先要判断此时是否需要更新我们的任务队列(任务队列我把他存在了缓存文件里),如果不需要更新,则只需要对缓存文件里的执行队列进行时间正排序,对已经超时的队列进行执行即可。但我们要考虑什么时候更新队列文件,以及如何更新,这样才能减轻系统压力。

我的思路是,首先,缓存文件可能会被人为删除或者超时失效,则每次先检测是否存在缓存文件(按任务/用户/类型进行分别生成缓存),如果不存在,重新查询数据库,生成缓存文件(已经超时的直接执行,执行不成功的再扔进缓存队列)。

接下来是每次访问,如果有缓存文件,先对文件中的超时任务处理,然后更新缓存文件。此时遇到一个问题,就是操作时对缓存队列的影响,可能我们会需要在缓存队列的开头或者中间的某个位置插入待执行队列,这时我们可以手动删除已存在的队列就好了,下一次触发时,由于找不到缓存文件,则会重新生成最新的缓存队列。

当我们执行完一个任务的时候,队列中的这个条目会删除,如果队列为空,则重新查询,生成队列,这样就能保证最小次数的访问数据库。还有一个问题,比如对订单自动确认收货的监控,如果是用户前台的更新,则需要同时删除此用户的缓存和该用户所属的后台管理员的缓存,这样才能保证相关人员在浏览这个订单的时候,看到的都是最新的状态。同理,后台管理员的修改订单,也应同时删除所有相关人员的缓存队列。


推荐阅读
  • 本文详细介绍了Java Web应用程序中的过滤器(Filter)功能,包括其作用、实现方式及配置方法。过滤器可以在请求到达目标资源之前对其进行预处理,并在响应返回给客户端之前进行后处理。 ... [详细]
  • 深入解析Nginx中的Location指令及其属性
    本文将详细探讨Nginx配置文件中关键的location指令,包括其三种匹配方式(精准匹配、普通匹配和正则匹配),以及如何在实际应用中灵活运用这些匹配规则。此外,还将介绍location下的重要子元素如root、alias和proxy_pass,并解释相关参数的使用方法。 ... [详细]
  • 创建项目:Visual Studio Online 入门指南
    本文介绍如何使用微软的 Visual Studio Online(VSO)创建和管理开发项目。作为一款基于云计算的开发平台,VSO 提供了丰富的工具和服务,简化了项目的配置和部署流程。 ... [详细]
  • 深入理解一致性哈希算法及其应用
    本文详细介绍了分布式系统中的一致性哈希算法,探讨其原理、优势及应用场景,帮助读者全面掌握这一关键技术。 ... [详细]
  • 深入解析TCP/IP五层协议
    本文详细介绍了TCP/IP五层协议模型,包括物理层、数据链路层、网络层、传输层和应用层。每层的功能及其相互关系将被逐一解释,帮助读者理解互联网通信的原理。此外,还特别讨论了UDP和TCP协议的特点以及三次握手、四次挥手的过程。 ... [详细]
  • 本文探讨了2012年4月期间,淘宝在技术架构上的关键数据和发展历程。涵盖了从早期PHP到Java的转型,以及在分布式计算、存储和网络流量管理方面的创新。 ... [详细]
  • 科研单位信息系统中的DevOps实践与优化
    本文探讨了某科研单位通过引入云原生平台实现DevOps开发和运维一体化,显著提升了项目交付效率和产品质量。详细介绍了如何在实际项目中应用DevOps理念,解决了传统开发模式下的诸多痛点。 ... [详细]
  • 本文详细介绍了在 Windows 2000 系统中启用 TELNET 服务时需要注意的 NTLM 配置问题,帮助用户解决常见的身份验证失败错误。 ... [详细]
  • 探讨如何优化 npm 构建过程,提升开发效率,减少构建时间,并介绍自动化部署的最佳实践。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 本文详细介绍如何通过修改配置文件来隐藏Apache、Nginx和PHP的版本号,从而增强网站的安全性。我们将提供具体的配置步骤,并解释这些设置的重要性。 ... [详细]
  • 尽管深度学习带来了广泛的应用前景,其训练通常需要强大的计算资源。然而,并非所有开发者都能负担得起高性能服务器或专用硬件。本文探讨了如何在有限的硬件条件下(如ARM CPU)高效运行深度神经网络,特别是通过选择合适的工具和框架来加速模型推理。 ... [详细]
  • 本文介绍了ArcXML配置文件的分类及其在不同服务中的应用,详细解释了地图配置文件的结构和功能,包括其在Image Service、Feature Service以及ArcMap Server中的使用方法。 ... [详细]
  • 本文深入探讨了HTTP请求和响应对象的使用,详细介绍了如何通过响应对象向客户端发送数据、处理中文乱码问题以及常见的HTTP状态码。此外,还涵盖了文件下载、请求重定向、请求转发等高级功能。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
author-avatar
可乐16311
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有