您的位置:首页 > 运维架构 > 网站架构

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

2013-12-17 09:30 375 查看


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

面向对象OOP的理解,我是说理解,我不希望你告诉我百度里的概念!
常用的数据结构,对于常见的数据结构,算法,应该知道一些!
WEB服务,对于分布式,大一点的项目都会遇到,你可以用WS,WCF,Remoting去实现它,它们的原理是你应该知道的,因为你是一名架构师,兄弟们都指着你呢,呵呵!
全文检索:lucene.net,当然lucene只是实现全文检索的一种方式,你可以使用其它文件索引来干这事
NOSQL:你可以选用不同的开源项目,redis,memcached你会用一种就行了,呵呵
缓存:cache,每个项目都会有自己的缓存机制,作为架构师的你,必须为你的企业开发一个统一的,健壮的,易扩展的组件,这是必须的,也是我们的责任!
负载均衡:Nginx,对于访问量大的WEB服务器,做负载是必须要走的路,没有一台服务器可以满足无穷大的访问量,去多架几台WEB服务器吧,呵呵
文件存储:FastDFS,无论是京东,淘宝,稍微有规模的企业都会有自己的文件存储机制,对于文件上传,下载,管理是很有必要的,我们将数据库,WEB服务,WWW服务,文件服务器分开吧,呵呵!
面向服务的体系结构(service-oriented
architecture,SOA)组件,统一,公用,规范,当然你的项目有这些东西时,你应该去理解一个SOA了,它会将系统公用的模块,组件统一起来,为外部提供一个统一的接口,在各个领域中,统一去调用,还是那句话:我不要DRY,呵呵!
面向切面(方面)的编程: Aspect Oriented Programming(AOP),面向切面编程
它是对面向对象OOP的补充,它让程序开发变得更加完美,将一个系统在横向上进行切割,把可以提出现的东西提出来,并使用动态插拔(动态代理)机制实现组件在各个领域系统中的插拔,微软的orchard是个不错的例子,呵呵!

转载:/article/1411422.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: