anourvalar/laravel-atom


README

安装

composer require anourvalar/laravel-atom

使用

事务提交后的操作

Atom::onCommit(function () {
    dispatch(new Job());
});

事务回滚后的操作

Atom::onRollBack(function () {
    Storage::delete('file.jpg');
});

悲观锁

Atom::lock('user');
Atom::lockUser($user->id); // equals to: Atom::lock('user', $user->id);

乐观锁

try {
    Atom::strategy('optimistic_transaction')->lock('week_report');
} catch (\AnourValar\LaravelAtom\Exceptions\OptimisticTransactionException $e) {
    // already in progress..
}