05 2024 档案
摘要:APCu 极简概括: PHP 的开源内存缓存扩展,类比Redis,但是一般都用Redis,所以APCu用的很少。 官方文档:https://www.php.net/manual/zh/apcu.configuration.php 解决问题:类比Redis做缓存组件,提升性能,同步数据使用。 适用场景
阅读全文
摘要:创建表时应当设置not null,添加一个默认值0或''去替代null。 sum('field')的坑 若一列的所有值都是null,那么sum函数的结果不是0,而是null,所以可能会因为值的类型兼容问题,出现意料之外的情况。 null值会有NPE问题。 count('field')的坑 有null
阅读全文
摘要:进程、线程、协程 进程:应用程序的启动实例,运行起的代码叫进程,有独立的内存空间,类比工厂的P个(P=1单进程,P>1多进程)车间。 线程:线程是CPU调度的最小单位,是进程内的执行单元,多个线程共享所属进程的资源。类比车间内的T个员工(T=1单线程,T>1多线程)车间。 协程:类似线程,协程是用户
阅读全文
摘要:谨防持久化+未授权访问漏洞入侵服务器 CVE编号找不到,CNVD有一个:CNVD-2015-07557(国家信息安全漏洞共享平台漏洞编号)。 这是我之前写过的文章,漏洞成因、影响范围、POC与对抗方案有详解: 谨防利用Redis未授权访问漏洞入侵服务器 RDB(Redis Database、全量保存
阅读全文
摘要:场景假设 A表(1000条数据)left join B表(1000条数据)。 嵌套循环(Nested-Loop Join) 极简概括:顾名思义多层循环叠加,由于MySQL条数数量有限,所用for循环而不用while,在MySQL中就是多层for循环。 性能问题:MySQL使用这种作为join方式最简
阅读全文
4.3万字详解PHP+RabbitMQ(AMQP协议、通讯架构、6大模式、交换机队列消息持久化、死信队列、延时队列、消息丢失、重复消费、消息应答、消息应答、发布确认、故障转移、不公平分发、优先级、等)
摘要:理论(后半部分有实操详解) 哲学思考 易经思维:向各国人讲述一种动物叫乌龟,要学很久的各国语言,但是随手画一个乌龟,全世界的人都能看得懂。 道家思维:努力没有用(指劳神费心的机械性重复、肢体受累、刻意行为),要用心(深度思考、去感悟、透过现象看本质)才有用。 举例:类似中学做不出来的几何题的底层原理
阅读全文