当前位置: 首页 > news >正文

程序员做个网站要多少钱呢重庆网站品牌推广

程序员做个网站要多少钱呢,重庆网站品牌推广,wordpress主题module,空间设计网站公司2025年7月30日14:10:01 就直说laravel的计划任务,是串行化的一个一个执行的,如果当前需要执行的任务很多的时候,或者当前有任务的执行耗时比较长的时候, 那么一些需要及时处理的就会拖延,导致执行不及时,导…

2025年7月30日14:10:01

就直说laravel的计划任务,是串行化的一个一个执行的,如果当前需要执行的任务很多的时候,或者当前有任务的执行耗时比较长的时候,
那么一些需要及时处理的就会拖延,导致执行不及时,导致一些业务上的挤压数据。

一般的laravel 跑在fpm的执行计划任务的就是在linux的crontab上添加一条记录

// www 是php的运行用户,避免使用其他用户导致日志写入log导致权限问题
* * * * * sudo -u www /usr/local/php8/bin/php /data/wwwroot/mc/artisan schedule:run >> /data/root.log

laravel的另一个运行方式

php artisan schedule:work &   // 单独起一个进行跑计划任务

有人可能想到,如果为了方案1,执行任务拆分到不同的计划任务跑或者方案2,再起一个进行跑,但是这里就需要改造的东西很多,
方案1,需要涉及到很多改造
方案2,需要处理竞争锁的,处理数据需要原子性,保障多个计划任务的数据安全性

其实还有一个更好的拆分方案,

就是计划任务+异步任务队列,通过计划任务定时计划任务把异步任务抛到队列中(建议使用redis,队列数据很多,数据库压力增加,laravel做了竞争锁处理,可以跑多个)

根据不同业务把队列拆分成多个,这样耗时长的,需要及时执行就互不影响

class UploadJob implements ShouldQueue
{use Queueable;public int $orderId;/*** Create a new job instance.*/public function __construct(){$this->onQueue('upload');}/*** Execute the job.*/public function handle(): void{}
}

比如有个上传文件到某个地方,比较耗时,每个小时需要执行一次,但是有另一个任务需要计算钱,需要每5分钟扫描一次,这样每个小时的是简单点,就会计算的很慢,导致
计算钱的数据不及时,系统有些不好的表现

那么改造成:

class UploadCommand extends Command
{/*** The name and signature of the console command.** @var string*/protected $signature = 'upload';/*** The console command description.** @var string*/protected $description = '上传脚本';/*** Execute the console command.*/public function handle(): void{Log::withContext([RequestConst::TraceId => generateUuid('upload')]);// 逻辑伪代码$job = new UploadJob();$job->orderId = xxx;dispatch($job);}
}
启动2个队列
php artisan queue:listen --queue=upload --sleep=1 & php artisan queue:listen --queue=upload --sleep=1 & 启动2个不同队列
php artisan queue:listen --queue=upload --sleep=1 & php artisan queue:listen --queue=doOrder --sleep=1 &
http://www.dtcms.com/a/496321.html

相关文章:

  • 【Linux】Linux时区设置与Java应用的时区问题
  • Linux中时间子系统初始化time_init函数
  • 【Algorithm】二分查找算法
  • Python字符串的魔法:拼接、编码与解码的艺术
  • 轻松拖拽:用 Dify 搭建企业级 AI 应用
  • 素材管理姬
  • 贵州黔致酒业推出的简礼酒介绍
  • 自己做网站怎么推广享设计官网
  • 鸿蒙NEXT传感器开发概述:开启智能感知新时代
  • Tailwind CSS 小白快速入门速查手册
  • php网站开发人员网站开发的总结
  • 私人网站建设步骤官网网页制作
  • Sora 后思考:从 AI 工具到 AI 平台,产业 AGI 又近了一步
  • 安全版数据库审计的配置方法
  • GENESIS64 AlarmWorX64助力现代工业监控预警管理
  • 英文模板网站合肥网站设计网址
  • HTTP 请求中断的深度扩展知识
  • 请别人做网站大概要多少钱济南集团网站建设方案
  • 定制网站建设和运营建设管理网站
  • JVM垃圾回收算法有哪些?
  • 衡水精品网站建设author 1 wordpress
  • 软件开发自学步骤视频郑州官网seo推广
  • 成都武侯区建设厅官方网站受欢迎的惠州网站建设
  • 如何建设网站的外接 以及在增加外接的时应当注意什么做公众号app 网站 app
  • 资料分析-基期
  • 云南做网站企业数据哪里找
  • 电商开发平台的核心:API数据接口
  • 介休城乡建设网站wordpress 去除rrs
  • 第二十一章 使用VDMA驱动HDMI显示
  • 架构相关要素Extensibility 和Scalability的翻译区分