摘要:
什么是 abstract classPHP 5 引入抽象类和方法。抽象类不能被实例化。任何类只要包含有抽象方法(即使只有一个抽象方法)就必须也被定义为抽象。定义为抽象的方法只需要简单的声明而不用实现。从抽象类继承的时候,所有父类中标记为抽象方法的声明都必须在子类中定义;此外,这些方法还必须用相同的(或更弱的)访问控制。比如,如果抽象方法定义为保护(protected),函数实现必须被定义为protected或者public抽象类例子:abstract class AbstractClass{ // Force Extending class to define this method ... 阅读全文
阅读排行榜
缓存策略
2013-02-27 09:50 by 折翼的鸟, 416 阅读, 收藏,
摘要:
1.全缓存很多的时候,在大量数据展示的过程中,我们总是喜欢分页展示,那个,如何设计这个分页的。当然,我们完全可以一页页的去数据库中获取相应的数据,但是很多的时候,我们不是这样做的,例如,每页数据有20条,我们可能会实现预加载100条数据在缓存中,每次展示将一页的数据进行展示。下面,就开始说说这个“全缓存”。接着上面的分页的例子,我们预先取来100条,然后用户就不断的翻页,此时,如果用户翻到了第6页,或者后面,此时,我们没有缓存后面的数据,此时,我们就开始再次去获取100条数据,那么此时,在缓存中就有了200条,并且是从1到10页的。以此类推,我将之定义为“全缓存“,因为最后的结果将会缓存用户查 阅读全文
用mysql+redis实现微博feed架构上需要注意哪些问题
2013-02-27 09:51 by 折翼的鸟, 401 阅读, 收藏,
摘要:
1、MySQL使用需要注意的地方1) 存储引擎选择InnoDB,在高并发下读写有很好的表现2) 数据合理分表分区,均衡各数据库服务器的负载3) 适当作数据的冗余,便于在cache失效时的快速恢复2、Redis使用需要注意的地方1) 合理规划cache将访问量高的热点数据统计出来、分类缓存。对微博来说,主要有三种形式的缓存:IDs,content,page。IDs包括各种关系的ID列表,如用户的粉丝、关注的对象、发表的新鲜事等,这些可以缓存在Redis的set或list结构中;content包括各ID的具体信息及内容,如新鲜事的正文、用户的详细信息等,这些可以缓存在Redis的string或ha 阅读全文
js笔记四:变量、作用域和内存问题
2012-04-04 23:17 by 折翼的鸟, 371 阅读, 收藏,
摘要:
Javascript的变量与其他语言的变量有很大的区别。Javascript变量松散类型的本质,决定了它只是在特定时间用于保存特定值的一个名字而已。由于不存在定义某个变量必须要保存任何数据类型的规则,变量的值以及其数据类型可以脚本的生命周期改变。1、变量分为基本类型和引用类型 Javascript变量可能包含两种不同数据类型的值,分别是基本类型和引用类型,基本类型是指那么保存在zhai内存的简单数据段,这种值完全保存在内存中的一个位置。 基本类型分别是:undefined、Null、Boolen、Number、String这五种基本类型的值在内存中分别占有固定大小的空间,因此可以把他们... 阅读全文
js笔记一:在HTML中使用javascript
2012-04-04 23:00 by 折翼的鸟, 339 阅读, 收藏,
摘要:
1、<script>元素 在html中插入javascript的主要方法、html4.0.1中为<script>定义了5个元素 Charset:可选,表示通过scr属性指定代码的字符集,由于大多数浏览器会忽略它的值,因此这个属性很少有人用 Defer:可选,表示脚本可以延迟到文档完全被解析和显示之后在执行,也就是说脚本会被延迟到整个页面的都解析完毕后在运行,实际上是把<script>元素放到页面的最底部的效果是一样的,但只有IE和firefox3.5+支持该属性 Language:已废弃,用来表示编写代码使用的脚本语言(如:javascript,vbscri 阅读全文
浙公网安备 33010602011771号