新需求-活动需求-盲盒转盘调通盘-巡乐会-调试
This commit is contained in:
@@ -39,7 +39,7 @@ class BlindBoxTurntableGiftDrawWorld extends Model
|
|||||||
// 最大重试次数
|
// 最大重试次数
|
||||||
$maxRetries = 3;
|
$maxRetries = 3;
|
||||||
for ($attempt = 0; $attempt < $maxRetries; $attempt++) {
|
for ($attempt = 0; $attempt < $maxRetries; $attempt++) {
|
||||||
try {
|
// try {
|
||||||
// 1. 验证参数并提前处理错误
|
// 1. 验证参数并提前处理错误
|
||||||
$validationResult = $this->validateDrawParameters($gift_bag_id, $user_id, $gift_user_ids);
|
$validationResult = $this->validateDrawParameters($gift_bag_id, $user_id, $gift_user_ids);
|
||||||
if ($validationResult !== true) {
|
if ($validationResult !== true) {
|
||||||
@@ -107,28 +107,28 @@ class BlindBoxTurntableGiftDrawWorld extends Model
|
|||||||
// 6. 构建并返回结果
|
// 6. 构建并返回结果
|
||||||
return $this->buildDrawResult($boxTurntableLog, $giftCounts);
|
return $this->buildDrawResult($boxTurntableLog, $giftCounts);
|
||||||
|
|
||||||
} catch (\Exception $e) {
|
// } catch (\Exception $e) {
|
||||||
$key = 'blind_box_draw_errors_' . date('Y-m-d-H-i-s');
|
// $key = 'blind_box_draw_errors_' . date('Y-m-d-H-i-s');
|
||||||
$errorData = [
|
// $errorData = [
|
||||||
'gift_bag_id' => $gift_bag_id,
|
// 'gift_bag_id' => $gift_bag_id,
|
||||||
'user_id' => $user_id,
|
// 'user_id' => $user_id,
|
||||||
'gift_user_ids' => $gift_user_ids,
|
// 'gift_user_ids' => $gift_user_ids,
|
||||||
'num' => $num,
|
// 'num' => $num,
|
||||||
'room_id' => $room_id,
|
// 'room_id' => $room_id,
|
||||||
'heart_id' => $heart_id,
|
// 'heart_id' => $heart_id,
|
||||||
'auction_id' => $auction_id,
|
// 'auction_id' => $auction_id,
|
||||||
];
|
// ];
|
||||||
if ($this->redis) {
|
// if ($this->redis) {
|
||||||
$this->redis->setex($key, 86400 * 7, $e->getMessage() . ' ' . json_encode($errorData));
|
// $this->redis->setex($key, 86400 * 7, $e->getMessage() . ' ' . json_encode($errorData));
|
||||||
}
|
// }
|
||||||
// 如果是死锁且还有重试机会
|
// // 如果是死锁且还有重试机会
|
||||||
if (strpos($e->getMessage(), 'Deadlock') !== false && $attempt < $maxRetries - 1) {
|
// if (strpos($e->getMessage(), 'Deadlock') !== false && $attempt < $maxRetries - 1) {
|
||||||
// 随机延迟后重试
|
// // 随机延迟后重试
|
||||||
usleep(rand(50000, 200000)); // 50-200ms
|
// usleep(rand(50000, 200000)); // 50-200ms
|
||||||
continue;
|
// continue;
|
||||||
}
|
// }
|
||||||
return ['code' => 0, 'msg' => "网络加载失败,请重试!", 'data' => null];
|
// return ['code' => 0, 'msg' => "网络加载失败,请重试!", 'data' => null];
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user