问题描述 业务场景:webman开发,提供一个给用户端调用的api接口,实现逻辑如下: 1、把用户提交的数据处理下,然后请求若干个三方系统的http接口 2、根据这些三方接口返回的内容,来生成api接口响应数据 比如,有3个三方接口A、B、C,都有可能返回我想要的数据 如果A响应最快,返回了['IS_A'=> true, 'A DATA' => '...'],那么就直接拿'A DATA'处理下生成接口响应...
问题描述 CAS更新账户余额,并且记录流水变动,大致逻辑如下: 1、查询原有余额 原有余额 = select 余额 from 账户表 where uid = 1; 2、更新余额 更新数量 = update 账户表 set 余额=余额- 变化金额 where uid = 1 and 余额 = 原有余额 3、记录流水 insert into 流水表 values(uid, 原有余额, 变化金额, 现有余额) 当第二步的更...
问题描述 在用webman admin做后台,现在业务要从多个不同的数据库读取数据,展示在页面上。 请问怎么使用这里的一键菜单功能,快速生成页面,这里默认只有搭建webman admin时的数据库表 ...
<?php namespace app\model; use support\Model; class User extends Model { // 表后缀 private static $table_suffix = ''; public function getTable(): string { return 'user_' . self::$tab...
问题描述 是线上一个对外提供接口调用的服务,本身逻辑很简单,校验下参数,放入队列然后响应接口 入口日志什么的也都加了,但是调用方一直都反馈每天早上9点刚开始(晚间业务停止,早上9点后才会有请求进来)的少量请求(个位数)会超时,超时时间设的10秒 然后把调用方提供的超时数据,在日志里也查了,没有 也没有任何异常、错误、慢查询日志 请问可能是什么原因?这个接口就是查了下数据库,放入队列 然后对方分析可能说是早上前几次建立...
在webman创建了一个自定义进程,定时器每隔1秒做一些业务 根据业务结果,某些情况下间隔一段时间再执行,类似这样的 <?php namespace process; use Workerman\Timer; class TaskTest { public function onWorkerStart() { // 每隔1秒做一些业务 Timer::add(...
有另一个项目的业务,会往redis的一个list不断push数据 我这边需要做的,就是有数据就取出来,然后做业务处理 请问怎么做比较好?...
Db::table('user')->where('id', $id)->first()->toArray(); 这样使用会报错,Call to undefined method stdClass::toArray() 但是我看IDE提示,有这个方法 ...
代码大概是这样的 private function getDb() { return new \Workerman\MySQL\Connection('DB_HOST', 'DB_PORT', 'DB_USER', 'DB_PWD', 'DB_NAME'); } public function func($id) { $db = $this-&...