01 2021 档案
摘要:缓存能解决的问题 提升性能 绝大多数情况下,select 是出现性能问题最大的地方。一方面,select 会有很多像 join、group、order、like 等这样丰富的语义,而这些语义是非常耗性能的;另一方面,大多 数应用都是读多写少,所以加剧了慢查询的问题。 分布式系统中远程调用也会耗很多性
阅读全文
摘要:缓存失效(缓存雪崩): 引起这个原因的主要因素是高并发下,我们一般设定一个缓存的过期时间时,可能有一些会设置5分钟啊,10分钟这些;并发很高时可能会出在某一个时间同时生成了很多的缓存,并且过期时间在同一时刻,这个时候就可能引发——当过期时间到后,这些缓存同时失效,请求全部转发到DB,DB可能会压力过
阅读全文
摘要:FIG 是 Framework Interoperability Group(框架可互用性小组)的缩写,由几位开源框架的开发者成立于 2009 年,从那开始也选取了很多其他成员进来,虽然不是 “官方” 组织,但也代表了社区中不小的一块。组织的目的在于:以最低程度的限制,来统一各个项目的编码规范,避免
阅读全文
摘要:这是一个自动加载函数,在PHP5中,当我们实例化一个未定义的类时,就会触发此函数。看下面例子: <?php class PRINTIT { function doPrint() { echo 'hello world'; } } ?> <?function __autoload( $class )
阅读全文
摘要:select A . id , A . title , B . title from jos_content A left join jos_categories B on A . catid = B . id left join jos_sections C on A . se
阅读全文
摘要:第一条语句 explainselect * from tb_wm_shop where is_delete != 1 and is_authentication = 1 ORDER BY create_time DESC 大家应该知道使用order by的 字段要使用索引,这条语句中create_t
阅读全文
摘要:Using temporary Using temporary表示由于排序没有走索引、使用union、子查询连接查询、使用某些视图等原因(详见https://dev.mysql.com/doc/refman/5.6/en/internal-temporary-tables.html),因此创建了一个
阅读全文
摘要:mysql> explain select permission.* from t_rbac_permission permission inner JOIN t_rbac_acl acl on acl.PERMISSION_ID=permission.ID where permission.men
阅读全文
摘要:最近在优化链表查询的时候发现就算链接的表里面不到1w的数据链接查询也需要10多秒,这个速度简直不能忍受 通过EXPLAIN发现,extra中有数据是Using join buffer (Block Nested Loop),而其它关联的表都是Using index,最后使用排除法发现当extra为U
阅读全文