最近发表的话题
最近发表的评论
  • MySQL 社区规范 | 数据库篇 at 1天前

    @varro 是在磁盘上,但是当查询,读入内存页时,会占用内存空间。会加大 IO

  • [源码分析系列] 不要在循环体中使用 array_merge () at 5天前

    https://blog.yiranzai.cn/posts/991/ MySQL分组查询TOP N的实践和踩坑

    整理测试的很好,如果是只考虑 SQL 的情况下。变量最优。

    这个综合考虑下,union all 可能会更优

    1、union all 在约 1.8 万的数据下与临时变量,性能相差约 0.03,很小
    2、union all 在后期维护下,更直观方便
    3、1.8 万的数据查询出来就要 0.41 的时间,如果数据量稍微大点,就无法使用 SQL 直接查了。
    3、如果数据量增大了,union all 性能下降,可以使用 redis 等来操作

  • 如何利用 Redis 快速实现签到统计功能 at 5天前

    非常不错的分享

    主要还是平时对位运算符的运用与理解(位运算逻辑是通用型跟正则类似)

    NOTICE:NOT:对一个或多个 key 求逻辑异或 -> BITOP NOT destkey srckey 对给定 key 求逻辑非(非多个key)
    NOTICE:$redis->keys('login:201903') -> $redis->keys('login:201903*')

  • MySQL 社区规范 | 数据库篇 at 1周前

    @alanliao 这是根据具体的情况来确定的。 500 万这个数据参考是比较流行的。 数据库版本,字段数量,字段长度,索引极索引长度等都相关。

  • MySQL 社区规范 | 数据库篇 at 1周前

    禁止在WHERE语句中进行计算 与 禁止使用索引做运算 如果没错的话,应该是可以合并成一个问题

    在使用LIMIT做分页时,更改巧妙地处理查询,譬如使用S1替换S2,将有效地提高查询的效率。 这条有误,应该是使用S2 替换 S1

  • [深圳] 腾讯深圳招聘初级 PHP 工程师 【急招】 at 1周前

    @AVENIR 对编制外的员工不好的是少数。之前也有听说过腾讯外包不好的。 当然对超哥所在的团队还是非常信任的。

  • [深圳] 腾讯深圳招聘初级 PHP 工程师 【急招】 at 1周前

    @AVENIR 按合同上来讲,应该就是这样。 只是在腾讯办公楼上班,但不是腾讯员工。 不是腾讯员工,腾讯对你就没有责任。 当然按提升技术与学习上来讲,这个岗位也是非常好的。

  • 3. PHP 引用解惑 at 2周前

    请教一个问题?

    数组、字段串、对象、资源是属于 GC 类型,当引用计数为 0 时,会被 GC 销毁。

    当 new class 一个对象时,这个对象并没有赋值给任何变量,那这个 new class 会创建堆吗?创建堆了再销毁还是直接跳过创建堆销毁?

  • 3. PHP 引用解惑 at 2周前

    记得 PHP 7 之前的与 7 及以上的版本在计数上的操作是有变化的(如果没记错的情况下)。建议把 PHP 版本也说明下。 个人理解引用是这样的,还请指导下:

     // $a 变量地址指向 10 
    $a = 10;
    
    //  $b 变量地址指向 10,与 变量 $a 的地址相同(指向同一个值)
    $b = &$a; 
    
    // 这里只是把 $a 变量的地址与值 10 断开,而非把值 10 也 unset 掉
    unset($a); 
    
     // 结果:10 , $a 变量的地址与值 10 断开,$b 变量的地址依然指向值 10 ,所以 unset($a) 变量 $b  
     // 的值不变
    var_dump($b);
    
    // gc 回收,也是把未有地址指向的值(无家可归的值)销毁,怎么知道未有地址指向某个值就是通过计
    // 数来标识,当计数为 0 时,gc 回收时就会把这个空间释放。
    
  • [深圳] 腾讯深圳招聘初级 PHP 工程师 【急招】 at 2周前

    @nff93 区别太大,挥之则来,挥之则去。 体制外编制。

  • 使用 Laravel Queue 不得不明白的知识 at 1个月前

    遇到个,QUEUE_DRIVER=sync 时执行正常,当 QUEUE_DRIVER=database 或 redis 时,如:只要是 bModel.php 模型时,jobs 表一切正常,但是状态未改变,failed_jobs 表也未有执行未成功的 jobs,好像就是执行 jobs 时,里面的代码未执行一样。但是 aModel.php 模型时队列按期望的方式正常执行了。
    测试把 aModel.php 模型的 job 与 bModel.php 的 job 合并成同一个,里面使用 if 判断来区分执行,经过测试,当模型是 aModel.php 是队列按期望正常执行,当是 bModel.php 时发生了同上述异常正常的情况。好怪异

  • E-commerce 中订单系统的设计 at 2个月前

    @Max

    1、保存关联系关系的用意好处?

    2、订单地址比较方便修改,体现在哪?

    下面是自己在数据层以的一些想法 MySQL

    如果放在 orders 优缺点:查询优、更新次

    1、优点:当订单发货后,收货地址用户无法修改,只能后台才能修改,整体来说是读多改少,查询速度更快(少一 
         条 SQL)。
    2、缺点:当发生修改收货地址时,锁定 order 数据对应数据,对 order 状态更新,可能产生影响(同时更新的机率较低)。

    如果放在 addresses 优缺点:更新优、查询次

     1、优点:当更新收货地址时,未锁定 order 表对就数据。只锁定当前 address 一条数据,对 order 更新没有影响(只想到 
          这一条,请补充)
     2、缺点:每生成一条订单就 copy 一条地址到 addresses,占用索引空间更多(主键索引)。
     3、缺点:查看订单收货地址时,多查询一条 SQL,在订单未收到货之前,查询收货地址的机率还是不低的。
  • E-commerce 中订单系统的设计 at 2个月前

    @Wi1dcard 项目中,使用的是这种。 decimal 储存,获取时使用 appends 添加字段到对象,把金额转为分。得到对象时就有两个字段,一个是以元为单位,一个是以分为单位的字段。

  • E-commerce 中订单系统的设计 at 2个月前

    @Max 如果把地址快照到 order ,是不是会更好。

  • dep deploy 成功, dep deploy --branch=advanced 报 categories 已经存在? at 2个月前

    @FMW 不紧要,动态内网IP

  • dep deploy 成功, dep deploy --branch=advanced 报 categories 已经存在? at 2个月前

    @leo 再次确认过,是自己的。第一次 dep deployer 成功,第二次 dep deployer --branch=advanced 失败。第二次只是多了个 --branch=advanced ,如果是 git 地址问题,那么第一次也应该失败

  • $user->update (['email_verified' => true]);无效,$user->email_verified = true;可以? at 2个月前

    @等车的猪 未懂

  • 10 万的秒杀,需要 250 台机器? at 3个月前

    @leo 这个确实是杯水车薪。 但是这样操作,对性能也是有所提升,例子:对MySQL并发更新库存是500(更新同一行数据),那么MySQL对死锁的检测次数将是 250000 次(大多数情况死锁检测是开启的)。

  • 10 万的秒杀,需要 250 台机器? at 3个月前

    @leo 更新库存时只使用 Redis,新增订单实时插入数据库 ,在 Redis 库存第一次为 0 时与抢购结束时,把 Redis 数据同步到数据库同时做相应的校对,这样对秒杀性能是不是有不少提升。

  • Undefined index: /CSS/app.css 是什么? at 3个月前

    @leo 试了好多,不行,正在删除操作这步。