能力的四个阶段
能力的四个阶段,这是我在读《程序员的38堂成长课》
里看到的。有意思的是,这段理论也非该书作者皮特·古德利夫
的原创。而是作者引用了心理学家亚伯拉罕·马斯洛
在20世纪40年代提出来的。
都是大白话。但是这样简单的模型,却有着惊人的概括能力。它对于我们找准自己的象限非常有用。一旦明确了自己的象限,就能知道自己的潜在瓶颈,进而有利于明确下一步的努力方向。下面就一起来看一下吧。
能力的四个阶段,这是我在读《程序员的38堂成长课》
里看到的。有意思的是,这段理论也非该书作者皮特·古德利夫
的原创。而是作者引用了心理学家亚伯拉罕·马斯洛
在20世纪40年代提出来的。
都是大白话。但是这样简单的模型,却有着惊人的概括能力。它对于我们找准自己的象限非常有用。一旦明确了自己的象限,就能知道自己的潜在瓶颈,进而有利于明确下一步的努力方向。下面就一起来看一下吧。
受友人推荐,我读了卢梭的这本书。正如书的名字所表述出来的那样,这是一本社会学的书。我这个程序员读起来,还是有点力不从心。毕竟作者渊博的知识积淀都源于欧洲,书中的例子、典故也都出自于那里。对于一个没有系统的接受过西方文化熏陶的工科生来说,很难从作者的旁征博引中产生共鸣。
我这个博客是用hexo 搭建的,说实话node
的技术栈真是很烦,各种依赖非常重,借用一位朋友的话说”天下苦node
久矣”。
不过对我来说,平时开发也不用node
了,现在就用用blog
嘛,也不是不能忍。
当表的数据比较多(大概百万级以上)的时候,对表的使用是重度依赖analyze采集的数据的。尤其是当表处于被频繁的update、insert操作下,之前analyze的数据如果不及时更新,极有可能让查询计划走歪,然后导致一个查询可能要付出10倍以上的时间——我遇到过好几次,每次都是通过手动vaccum解决。
本来pg是有autovacuum的,这里之所以没有触发,还是因为表比较大,百万行的数据,update个几万行,变更率才百分之几,而调度autovacuum_analyze的默认阈值是百分之十。
这就比较尴尬了,好在pg支持针对单表做详细的定制。这里给出一个参考SQL:
SELECT schemaname, |
postgresql.conf
shared_preload_libraries = 'pg_stat_statements'
track_activity_query_size = 16384
某些时候需要执行过程化的逻辑,单纯靠组织SQL
语句已经完成不了了,这个时候一般需要引入存储过程用以实现。但是如果只是单纯执行一段逻辑,而不是要封装一个函数,用来接收参数复用,完全可以通过DO
语句执行一个匿名代码段。这样就可以避免:创建存储过程 -> 调用存储过程 -> 删除存储过程的窘境。
这里给出一个简短的SQL
演示:
select schemaname, |