[转]作为一名架构师,我们应该掌握哪些技术呢?

1.面向对象OOP的理解,我是说理解,我不希望你告诉我百度里的概念!

2.常用的数据结构,对于常见的数据结构,算法,应该知道一些!

3.WEB服务,对于分布式,大一点的项目都会遇到,你可以用WS,WCF,Remoting去实现它,它们的原理是你应该知道的,因为你是一名架构师,兄弟们都指着你呢,呵呵!

4.全文检索:lucene.net,当然lucene只是实现全文检索的一种方式,你可以使用其它文件索引来干这事

5.NOSQL:你可以选用不同的开源项目,redis,memcached你会用一种就行了,呵呵

6.缓存:cache,每个项目都会有自己的缓存机制,作为架构师的你,必须为你的企业开发一个统一的,健壮的,易扩展的组件,这是必须的,也是我们的责任!

7.负载均衡:Nginx,对于访问量大的WEB服务器,做负载是必须要走的路,没有一台服务器可以满足无穷大的访问量,去多架几台WEB服务器吧,呵呵

8.文件存储:FastDFS,无论是京东,淘宝,稍微有规模的企业都会有自己的文件存储机制,对于文件上传,下载,管理是很有必要的,我们将数据库,WEB服务,WWW服务,文件服务器分开吧,呵呵!

9.面向服务的体系结构(service-orientedarchitecture,SOA)组件,统一,公用,规范,当然你的项目有这些东西时,你应该去理解一个SOA了,它会将系统公用的模块,组件统一起来,为外部提供一个统一的接口,在各个领域中,统一去调用,还是那句话:我不要DRY,呵呵!

10.面向切面(方面)的编程: AspectOrientedProgramming(AOP),面向切面编程,它是对面向对象OOP的补充,它让程序开发变得更加完美,将一个系统在横向上进行切割,把可以提出现的东西提出来,并使用动态插拔(动态代理)机制实现组件在各个领域系统中的插拔,微软的orchard是个不错的例子,呵呵!

相关推荐