学习一个新的开源框架的方法论

1. 明确开源框架的第一原则
例如HBase提供的是大数据量下的高性能随机读写。官方的首页就是如此描述的:Use Apache HBase™ when you need random, realtime read/write access to your Big Data
这个就是学习一个新东西时候的第一原则,把握住第一原则后,你会发现这个开源组件的很多设计思想和解决方案都是围绕这个第一原则来实现的。
再举个例子:Dubbo,这个开源框架主要是为了解决搭建一个SOA的服务治理。不是一个简单的RPC框架,很多人误解了Dubbo是一个RPC框架,这个是错误的。
2.跑下它quick start .
这个主要是为了了解有一个感性的认识,对于一个新东西而言。
不需要很深入,能跑通即可。
 
3.查看架构图及它的配置文件
这个环节主要是让你对整个框架有一个很宏观的认识,这个框架包含了那些模块,每个模块的分工是如何。之间的的核心流程的数据流是如何流转的。这样有一个整体的任务后,再对其中的一些关键模块再做细节的了解。
看配置文件是从另一个角度的理解系统的模块划分,同时配置文件会包含了很多关键有用的细节。
例如hadoop的配置文件分为了
核心的HDFS配置:core-site.xml,主要是命名空间,基本权限等信息
hdfs的相关配置:hdfs-site.xml ,如何做HA,其中namenode和datenode的配置 
调度系统:yarn-site.xml,如何调度,分配资源
调度运行时配置:mapred-site.xml 在具体运行过程中的配置,如何重试,调度端口等。
从几个文件就可以即整体又细节的了解整个系统。
再看spark的配置分为:整体配置,运行时配置,shuffle配置,安全配置,UI配置,压缩和序列化配置,内存管理配置等,从这几个方面基本就可以知道spark的整体了。
 
4.看源码
到了这个环节,基本对于系统是怎么运转有了一个外部的认识,那么具体要深入优化的话,就必须看源码了。查找一些根源的问题。


阅读全文…

BAT发展的思考

最近BAT的话题变的越来越热,估计现在也将会是这个词热度的最高峰了。百度的日薄西山连中关村扫大街的大妈都知道,将来很难再同AT并驾齐驱。这篇文章主要是对于BAT三家的发展给出一些自己浅薄,不严谨的看法。

阅读全文…

软件敏捷面面谈

到今天才来写敏捷,从时间角度看是有点晚了,整个行业中对于敏捷的热度已经过去,对于敏捷讨论也不像前几年那么火热。
或者换个角度看,整个行业对于敏捷是否都已经有了一些自己的体会和心得,已经不需要通过社区的讨论和分享。这也是一个很值得玩味的问题,通过敏捷解决了我们的问题吗?

阅读全文…

设计心理学的读书笔记

唐纳德.A.诺曼 写的,认知心理学家、计算机工程师、工业设计家、认知科学会发起人。苹果计算机公司先进技术总裁。发现以前的人物都是多专多能,好比我们古代诗书画、文哲史不分家,牛逼人物都是琴棋书画样样精通。而到了现在,出来一个人物,都只是某某画家,某某书法家。是我们能力的退化呢?还是现在的人懒惰了,自我要求降低了。
化繁为简的七个原则
1.应用存储于外部世界和头脑中的知识
完成任务的只是可以在外部找到,那么用户就会学的很快,若是知识已经存储在大脑中,那么会更快

阅读全文…

那些年帮助过我的人

时间过的好快,不知不觉中来到上海已经两年了。从当初怀着敬畏、迷惘的心来到中国这最大的经济之都,到现在对于这个城市有一定的熟悉和接纳。时间这个东西,到底都去哪了,怎么快的让人对于这过去的两年都没留下什么深刻的记忆。

阅读全文…

建筑架构和软件架构

今天状态不错,就再多写些一点吧,谈谈自己对于架构和架构师的理解,仅仅代表个人看法,难免有些偏颇。
架构这个词最早来源于建筑学,后来随着软件开发行业的兴起,很多充满智慧的先哲发现两者有着很多类似的点,例如:目的、主题、材料和结构的联系上来说。慢慢这个词也就进入了软件领域。但是溯本回源的分析建筑架构,会对于软件的架构有更深的理解。
建筑的架构无论千变万化脱离不了三个词:实用、坚固、美观。

阅读全文…

Pages: 1 2 Next