Рубрики
Uncategorized

Минималистский фреймворк на основе swool-1.4.1

Автор оригинала: David Wong.

оптимизация

  • Оптимизация правил генерации UUID

ремонт

  • Драйвер кэша-это файл Ошибка уведомления о времени

увеличение

  • Позволяет создавать цепные вызовы построителя запросов в самой модели
class Article extends Model
{
    CONST TABLE = 'articles';

    public function week()
    {
        return $this->where('create_at', '>', strtotime('-1 week'));
    }

    /**
     *Sort by likes
     */
    public function orderByLikeCount()
    {
        return $this->orderBy('like_count', 'desc');
    }

}

//Get weekly ranking list by likes
Article::column(['id','title'])->where('create_at', '>', strtotime('-1 week'))->orderBy('like_count', 'desc')->limit(10)->findAll();

//Query builder created by ourselves
Article::column(['id','title'])->week()->orderByLikeCount()->limit(10)->findAll();
  • Добавьте массив поддержки методов RPC
//Add method 'method1', 'method2' for remote clients to call

RpcServer::add(Abc::class,'method1');
RpcServer::add(Abc::class,'method2');

//Now you can write that
RpcServer::add(Abc::class,['method1','method2']);
  • Фиксированная длина очереди
$global_data = new \App\GlobalData\Client();
//Set team to fixed length
$global_data->setQueueLimit(3);
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $i) {
    $global_data->push('abc', $i);
}

while (1) {
    $ret = $global_data->pop('abc');
    if ($ret !== null) {
        echo $ret . PHP_EOL;
    } else {
        break;
    }
}

//Above output
//3
//4
//5

//Remove fixed length limit
$global_data->delQueueLimit('abc');

github: https://github.com/lizhichao/one Облако кодов: https://gitee.com/vicself/one

Оригинал: “https://developpaper.com/minimalist-framework-based-on-swoole-1-4-1/”