诗一首

夫80后者,初从文,未及义务教育之免费,不逮高等学校之分配,时值扩招,过五关、斩六将,硕博相继,数年乃成,负债十万,觅生计,十年无休,披星戴月,秉烛达旦,积蓄十万。楼市暴涨,不足购房,遂投股市,翌年缩至万余,抑郁成疾。医保曰:不符大病之条例,拒赔!乃倾其所有,入院一周病无果,因欠费被逐院门。友怜之,赊三鹿一包,冲而饮之,卒。

平衡查找树之B树

维基百科对B树的定义为“在计算机科学中,B树(B-tree)是一种树状数据结构,它能够存储数据、对其进行排序并允许以O(log n)的时间复杂度运行进行查找、顺序读取、插入和删除的数据结构。B树,概括来说是一个节点可以拥有多于2个子节点的二叉查找树。与自平衡二叉查找树不同,B-树为系统最优化大块数据的读和写操作。B-tree算法减少定位记录时所经历的中间过程,从而加快存取速度。普遍运用在数据库和文件系统。”
定义
B 树可以看作是对2-3查找树的一种扩展,即他允许每个节点有M-1个子节点。

  • 根节点至少有两个子节点
  • 每个节点有M-1个key,并且以升序排列
  • 位于M-1和M key的子节点的值位于M-1 和M key对应的Value之间
  • 其它节点至少有M/2个子节点

阅读更多

菜逼也写科普文系列:Mysql Time-Based Blind SQL Injection tips

此文由某自称狗4的菜逼翻译自某外国文章并用自己的语言进行了简单的总结。:
来自:http://v4an.com/mysql-time-based-blind-sql-injection-tips.html

当一个SELECT查询是由数据库引擎执行,由语句返回的所有记录进行判断,以确认它们满足WHERE子句.
由于WHERE子句为每行验证,能够通过注入一个小的时间延迟的WHERE子句来估计多少记录在表中.
所以当不知道这个表有多少列的时候可以按照这个方法进行猜测,
因为:
延迟 = 正常查询的延迟 + 睡眠的延迟
总条数 = 列(多少列) x 睡眠的延迟
这里我拿一个有15条列的表来做说明

阅读更多

why ubuntu

由于长期在ubuntu下进行编码工作,对此系统产生了一定的习惯甚至依赖。
为什么偏好这个系统?
1,桌面稳定
2,社区活跃
3,依赖包完整
4,应用丰富
5,装逼
对于一个php开发人员,不用考虑什么centos redhat的了。
看看我是怎么安装一个默认的lnmp的。

OK。安装完毕。
至于其他人说的什么centos稳定什么的,个人感觉很大程度上是偏见,或者说,你他妈懒得换系统了吧。
如果你也是php的开发人员。不妨试试。
神马?你还要其他扩展?
试试这些够不够:

memcache redis服务器什么的均可一命令安装。gogogo。自己慢慢玩玩吧