问题描述 在webman框架中使用自定义进程的方式,开启了一个进程用于处理定时任务。但是发现凌晨2~3点的任何定时去都无法触发。其他时段又正常 配置 <?php // config/process.php return [ // 定时任务 'task' => [ 'handler' => process\Task::class, ], ]; 自定义进...
问题描述 线上环境中因搜索引擎扫描、负载均衡可用性检测等服务导致重复的日志很多,请问有办法过滤吗? 为此你搜索到了哪些方案及不适用的原因 尝试使用 Monolog 的自定义 handlers 之后发现 http 请求日志是 webman/log 自行设置的,而且是字符串类型,导致过滤实现自定义过滤规则相对比较困难 请问有合适的方法吗...
背景描述 部署环境为分布式部署,定时任务期望其中某台服务器执行,故在代码中使用 Redis::setNx 来创建任务锁,期望拿到锁的服务器执行任务。 示例代码 // 每天凌晨2点执行更新状态信息 new Crontab('0 2 * * *', function () { // 负载均衡下有多台服务器,所以拿到更新锁的服务器才能执行任务 ...
问题描述 webman event插件emit处理任务,放到了try carch里面,并不是直接抛出异常。导致业务代码里无法捕获异常。 多个事件订阅时,其中一个发生异常,并没有影响到其它事件订阅,导致数据完整性失效。 例子 Db::startTrans(); try { $res = $info->save($data); if (!$res) { ...