设计模式(Design pattern)的官方定义是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。解决的是代码可重用、代码更容易被他人理解、保证代码可靠性的问题。
Hadoop作为一个06年开始开源走到现在的框架,已经是一个非常成熟和经典的系统了。这个里面对于设计模式的使用也是非常的经典,本篇主要介绍一下Hadoop中使用到的设计模式,非常值得学习。额外需要提到的是这里的设计模式特指:四人帮23种模式.
关于设计模式的详细介绍可见:http://www.runoob.com/design-pattern/design-pattern-tutorial.html
1.创建型模式
1.1 单例模式 单例模式(Singleton Pattern)
RMPolicyProvider : 双重锁的形式单例实现。
NMPolicyProvider,HDFSPolicyProvider : 饿汉式的单例实现。
一般是要求全局单例的要求。
阅读全文…
标签存档: 设计
hadoop中使用到的设计模式
近期在公司内部的一些分享
mysql的分享:http://www.doc88.com/p-8445678045103.html
阅读全文…
缓存穿透及雪崩的办法
方法一 空对象
增加空对象,查询缓存没有命中,查询数据库时候,没有该值,那么新增一个空对象到缓存中
阅读全文…
温昱版的架构设计
花了两天时间,看完了软件架构设计--温昱编著。整理了下面的脑图,感觉作者还是写的很赞的。
阅读全文…
软件敏捷面面谈
到今天才来写敏捷,从时间角度看是有点晚了,整个行业中对于敏捷的热度已经过去,对于敏捷讨论也不像前几年那么火热。
或者换个角度看,整个行业对于敏捷是否都已经有了一些自己的体会和心得,已经不需要通过社区的讨论和分享。这也是一个很值得玩味的问题,通过敏捷解决了我们的问题吗?
阅读全文…
zookeeper的简单集群搭建
1.zookeeper安装和使用
包下载地址 :http://zookeeper.apache.org/releases.html#download
阅读全文…
网络架构设计决策树
好久没写博客,一方面是工作很忙,另一方面也是自己懒了。少了以前那种激情,需要重新找回来,今天在回顾以前自己整理的东西时候,发现一些东西还是可以分享出来的。
阅读全文…
xmpp服务端tigase在centos搭建过程
1.前期环境搭建
1.1 mysql 安装
mysql 安装: yum install mysql-server.x86_64
检查安装:rpm -ap | grep mysql
mysql启动:/etc/init.d/mysqld start
检查是否启动:netstat -anpl | grep 3306
修改root密码:mysqladmin -u root password ‘root’
阅读全文…
设计心理学的读书笔记
唐纳德.A.诺曼 写的,认知心理学家、计算机工程师、工业设计家、认知科学会发起人。苹果计算机公司先进技术总裁。发现以前的人物都是多专多能,好比我们古代诗书画、文哲史不分家,牛逼人物都是琴棋书画样样精通。而到了现在,出来一个人物,都只是某某画家,某某书法家。是我们能力的退化呢?还是现在的人懒惰了,自我要求降低了。
化繁为简的七个原则
1.应用存储于外部世界和头脑中的知识
完成任务的只是可以在外部找到,那么用户就会学的很快,若是知识已经存储在大脑中,那么会更快
阅读全文…
Servlet,Listener,Filter的一些思考
最近在梳理整个web中的一些元素,希望能够做一些删减和调整。看看一些元素的使用是否合理。
web文件中的加载顺序:context-param –> listener -> filter(按照出现的顺序) -> servlet(按照出现的顺序)
阅读全文…