资讯专栏INFORMATION COLUMN

基于swoole的极简框架-1.4.1

Cheriselalala / 2598人阅读

摘要:版本更新优化优化生成规则修复缓存驱动为时错误增加允许在模型自己创建查询构造器链式调用根据点赞排序获取周排行榜按照点赞数量通过自己创建的查询构造器添加方法支持数组添加方法供远程客户端调用现在可以这么写队列固定长度设置队

one 1.4.1版本更新: 优化

优化uuid生成规则

修复

缓存驱动为file时 notice错误

增加

允许在模型自己创建查询构造器链式调用

class Article extends Model
{
    CONST TABLE = "articles";

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

    /**
     * 根据点赞排序
     */
    public function orderByLikeCount()
    {
        return $this->orderBy("like_count", "desc");
    }

}

// 获取周排行榜 按照点赞数量
Article::column(["id","title"])->where("create_at", ">", strtotime("-1 week"))->orderBy("like_count", "desc")->limit(10)->findAll();

// 通过自己创建的查询构造器
Article::column(["id","title"])->week()->orderByLikeCount()->limit(10)->findAll();

添加rpc 方法 支持数组

// 添加方法`method1`,`method2` 供远程客户端调用

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

// 现在可以这么写
RpcServer::add(Abc::class,["method1","method2"]);

队列固定长度

$global_data = new AppGlobalDataClient();
// 设置队为固定长度
$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;
    }
}

//以上输出
//3
//4
//5

//删除固定长度限制
$global_data->delQueueLimit("abc");

github: https://github.com/lizhichao/one
码云: https://gitee.com/vicself/one

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/29997.html

相关文章

  • 一个极简基于swoole常驻内存框架

    摘要:于是打算做一个拥有非常好用的路由和又非常简单的框架。但也有一些自己的特色,例如支持自动化缓存自动化读写刷新保持与数据库同步,对外使用无感知。例如协议服务器地址远程的类不设置默认为当前类名其中类在框架里。 背景 在用过laravel框架,发现它的路由和数据库ORM确实非常好用,但是整体确实有点慢,执行到控制器大于需要耗时60ms左右。于是打算做一个拥有非常好用的路由和orm又非常简单的框...

    Steve_Wang_ 评论0 收藏0
  • 基于ServerLess极简网页计数器:源码分析与实践

    showImg(https://segmentfault.com/img/remote/1460000019223837?w=1311&h=898); 这几天基于支持HTML5无感认证的ServerLess平台开发了一款博客、门户网站等web平台常用的PV统计工具:page-counter 。主要用到的技术是js+webpack。 回首看来,解决了以下几个比较有意思的问题: 如何设计代码,用统一...

    Darkgel 评论0 收藏0
  • APP测试极简Mock方法——Mock服务端接口

    摘要:本文适用的场景在对移动端的纯移动端功能或者前端页面的纯前端功能进行测试时,服务端接口返回的数据不满足要求,或者制造测试数据比较复杂,需要使用方法来快速构造数据。进入官网后,首先创建一个项目,一个项目包含若干个接口,我们最终模拟的是接口。 本文适用的场景:在对移动端APP的纯移动端功能或者前端H5页面的纯前端功能进行测试时,服务端接口返回的数据不满足要求,或者制造测试数据比较复杂,需要使...

    godiscoder 评论0 收藏0
  • MixPHP:基于 Swoole 的常驻内存型 PHP 框架

    摘要:框架最新源代码行数行,因此可以很容易的改造它,成为你们公司的专属框架。也不同于其他基于的微服务框架,只聚焦于微服务治理,定位于开发的更多领域,覆盖从初创到亿元级体量的技术诉求。的授权全靠用户自愿购买,详情 MixPHP是什么 MixPHP 是秉承 普及 PHP 常驻内存型解决方案,促进 PHP 往更后端发展 的理念而创造,采用 Swoole 扩展作为底层引擎,围绕常驻内存的方式而设计,...

    王晗 评论0 收藏0
  • 玩转企业级云就三招,我服了

    摘要:值得一提的是,深信服超融合企业级云增长迅速,已经在企业政府教育金融等四大行业铺开了。深信服超融合企业级云能够赢得广大企业级用户的认可,必然有着自己的独特魅力。可见以极简架构设计的超融合企业级云,让深信服达成了云计算业务实现快速发展的心愿。万变不离其宗,一切为业务而生。亚马逊AWS、微软Azure、Google Cloud、IBM Cloud、VMware Cloud,以及阿里云、腾讯云、京东...

    wangxinarhat 评论0 收藏0

发表评论

0条评论

Cheriselalala

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<