最近发表的话题
最近发表的评论
  • docker 如何解决上线对用户的影响 at 3个月前
    @白纸 权重应该是多数用于灰度测试,而这个可以通过 DNS 来分流。
  • docker 如何解决上线对用户的影响 at 3个月前
    @Wi1dcard 是啊,相当于用 Ansible 实现一个可以手动的 Master
  • docker 如何解决上线对用户的影响 at 3个月前
    @白纸 是的,这个只是个思路,你可以配合 ansible 进行 deployment
  • docker 如何解决上线对用户的影响 at 3个月前

    哈哈,可以参考 Bule/Green 的解决方案。

    location / {
        proxy_pass http://Bule:9000;
    }
    
    location / {
        proxy_pass http://Green:9000;
    }
    
    service nginx reload

    一个基于 Nginx 的蓝绿思路,切流量的做法比较粗糙。

  • CentOS+laradock+swoole 访问问题 at 3个月前

    @JimmyLzy 对哦,想岔了,第一张图证明 22 端口开了,ip 应该也是通的。

    那可能就要看看防火墙了。默认情况下是开启的。

    systemctl stop firewalld.service

    试试关闭看看。

    telnet 192.168.90.135 9501 看看这个端口是否被监听了。

  • CentOS+laradock+swoole 访问问题 at 3个月前

    通过浏览器截的图可以看到,你宿主机并无法识别 192.168.90.135

    所以在这之前,你需要先确认虚拟机跟宿主机是以什么形式进行网络连接。

    这里有个stackoverflow,你可以按照这种形式去配置

    https://stackoverflow.com/questions/319220...

  • Linux 下 PHP 的拓展库好像都是需要源码进行编译的吧? at 3个月前

    @chen05_20 几个排查思路。

    1. 确定编译时的 PHP 版本是否跟现在在跑的 PHP 版本一直,你现在跑的版本应该是 php7.1 吧
    2. 你这个 extension 是啥,然后查下它的依赖是否环境中有。
  • Linux 下 PHP 的拓展库好像都是需要源码进行编译的吧? at 3个月前

    报啥错呢?截个图来看看。

  • 如何直接获取 GD 库 imagepng 返回的图片流直接上传至阿里云 OSS at 3个月前
    ob_start();
    
    imagepng($image_data);
    
    $string_data = ob_get_contents(); // read from buffer
    
    ob_end_clean(); // delete buffer
    
    Oss::uploadByString($string_data)
  • [新加坡] [3-6w] 东南亚最大电商公司技术职位招聘 at 4个月前
    内容被屏蔽
  • 关于 JSON 解码为 PHP 数组后索引被重排的问题 at 4个月前

    回答你这个问题吧

    也就是说 $decoded ['province_list'][110000] 是不允许的,必须要用 $decoded->province_list->{110000} 的形式获取值。

    json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0 ]]] ) : mixed

    第二个参数,就是 decode 时候,是返回对象还是数据,你如果想要数组的话,就换成 true.

    至于重置索引的问题,肯定不是元素内过多,大概率是数据源有问题,可以重复校验下。

  • larveal 本地运行缓存路径错误 at 5个月前

    你缓存设置成啥了?这个报错是说请提供一个有效的缓存地址。
    So,重点 check 一下你的缓存配置

  • Windows 下 Vagrant up 无法下载 Composer at 6个月前

    虚拟机的 DNS 没有正常解析 getcomposer.org

    试试在虚拟机中 ping getcomposer.org

    看起来是虚拟机的网络没有设置好,你用什么模式的?

  • 并发条件下,update 语句中直接赋值和计算的区别是什么? at 6个月前
    // 抢购下单
    public function doPageGoodsStore()
    {
            $pdo = self::Pdo();
            $goods_id=1;
            /**诺,问题所在
                对于 redis 来说,它属于单线程的原子性操作,但是 mysql 不是。
                所以这里拿商品数据,你是通过查询数据库获取的。
                而又因为你算库存的时候,通过查询数据库获取到的库存来计算,
                在并发情况下自然会引起不正确,这里的库存数,建议也通过 redis 中存储的热数据来计算
                比如 $stock = $redis->llen('num');
            **/
            $sql="select id, num, money from ims_hotmallstore_goods where id=".$goods_id;
    }
    

    补充第二个问题,看下来是不会的,但是会出现数据的错误,最直接的就是你能看到的超库存。

    当然,这个还有一些隐藏的问题。因为并发,数据库压力比较大,如果实时去 update 和 insert 的话,会出现一些单点故障,比如数据库奔溃。

    我一般入库的做法是在热度过后再批量入库。

  • Laravel 分类列表无限分类展示问题 at 6个月前

    https://learnku.com/index.php/articles/336...

    这种数据结构对查询展示比较优化,希望能帮到你。

  • 如何统计指定月份 用户用户充值金额与消费金额 at 6个月前

    架构允许的话,上时序性数据库吧,可以满足了。

    业界开源的 influxdb 好用,但是缺点就是集群不是开源的。

  • 为什么使用 setcookie 方法生成的 cookie 一跳转页面就不见了??? at 6个月前

    Set-Cookie 不仅要看代码,还要看 Response

    你先看看所有的请求,看下 Response Header。

    大概率是某个请求,将 Cookie 置为空了

  • MySQL 两个联合索引问题 at 6个月前

    评论太长,用文章表述 分享:针对组合索引进行的一些测试

    可能有些变量没考虑到,欢迎讨论

  • MySQL 两个联合索引问题 at 6个月前

    在索引中,有个基数 (cardinality) 这种东西,正如 @anniversary 所说,如果 a 跨度小的话,也就是基数小,那么建索引反而会得不偿失,就比如你有一千万行数据,但是 a 只有 2019 和 2018 这两种数据类型,那么这个索引就没有任何意义。

    而在 mysql 中,组合索引是往左开始的,什么意思呢?

    假设你现在建的索引是 a+b 这种符合索引,那么你的 SQL 就得这样查询,WHERE a = :a AND b = :b,当你的 SQL 变为 WHERE b = :b AND a = :a 这样时,这个索引就失效了。所以 @anniversary 你可能还需要特殊说明下,如果建这种复合索引的话,还需要修改对应的查询语句。

    个人认为,a 字段如果 cardinality 不大的话,就建立一个 b 和 一个 c 即可。具体的还需要根据实际业务来考虑。

  • 请教一个问题,使用单列模式 at 6个月前

    单例模式,是指在整个生命周期中,只实例化一次。给你举个例子:

    class Singleton {
    
      public static $instance;
    
      private $array = array(1, 2, 3, 4, 5);
    
      public static function get_instance()
      {
        if (! self::$instance) {
          self:: $instance = new Singleton();
        }
        return self::$instance;
      }
    
      public function print_sum()
      {
        print(array_sum($this->array));
      }
    }
    
    // 调用
    $object = Singleton::get_instance();
    $object->print_sum();