Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求。 总结起来大概有下面几点技能要求:

一、 架构师有优秀的编码能力,解决开发人员无法解决的难题。

二、 架构师对系统的大数据容量高性能高并发高容错的网站有架构设计和开发经验。

三、 架构师对操作系统、数据库、服务器各种软件使用的配置比较了解,比如Linux、Web负载均衡、反向代理、数据库集群、容灾等比较了解。

四、 架构师对软件开发过程有清晰明确的认识,也就是对软件工程有有明确的认识,并能把需求进行分析、建模。

五、 架构师学习能力很强、接触知识面要很宽广、喜欢关注和接触各种新的技术。

六、 架构师沟通能力很强。

七、 架构师对从事的行业的业务要有深刻的了解。

换个角度看看这些要求把:

第一条要求你是个优秀的程序员。

第二、第三条要求你要懂DBA,运维都需要懂的知识。

第四条要求你是个项目经理。

第五条要求你是个技术全才,不仅学的要深,还要学的广。

第六条、第七条要求你熟悉公司业务人员、产品人员要懂的知识。

这个要求太高了,架构师就相当于战争中的司令员的位置,是整个团队的核心和灵魂,这种技术要求甚至技术总监和CEO都不具备,唯一要求少点的就是管 理能力,如果再具备管理能力,那就甚至能超过技术总监和CTO了,而中国不乏管理人才,怪不得有人总结说,中国没有合格的架构师呢,也难怪,大概算一算, 这种要求相当于一个人学6个人的知识,并且都能达到专业的水平,这就意味着你的领悟能力和学习能力,要高于常人几倍!所以说,成为架构师确实需要天分啊。

再具体到架构师,我归纳一下要学的知识:

成为优秀程序员,需要学好的知识:

1、 面向对象编程、UML画图、设计模式、代码重构

2、 常用ORM工具

3、  MVC,XMl, JQuery ,SQL以及性能优化

4、 FrameWork一些深入的知识

5、 高性能代码,比如静态化,MemCached等手段。

6、 最好也了解一些其他语言,比如PHP,Java等。

成为DBA,需要学好的知识:

1、 MySQL 性能调优熟练,备份、负载均衡、集群、容灾熟练

2、 大数据量处理熟练

3、 各种数据库监控软件

成为运维,需要学好的知识:

1、 各种Web负载均衡的硬件,比如F5,软件,比如Nginx等原理和配置

2、 反向代理加速,比如SquID等

3、 操作系统,Linux是必须懂的,各种好的工具都在Linux下。

4、 各种性能监控软件。

成为产品和业务以及项目经理,需要学好的知识:

1、 沟通和理解能力。

2、 该行业和本公司的业务逻辑。

3、 软件工程的知识。

4、 质量控制、进度控制、人员组织等。

看来想成为合格的Web架构师,需要学太多东西了,只有一条路可走–持续不断的修炼和学习。

另外学习中,采用先深后广的策略是明智的选择,一门学深了,其他知识可能都会融会贯通,那样比较的学起来会很快。否则可能陷入知识的海洋里,没准淹死了。

总体的看来,Web架构,分为服务器架构和程序架构两个方面的架构,一般的Web架构师还是偏向程序架构,因此学好语言,程序架构是基础,学好了这些,做一个合格的架构师没大问题,毕竟DBA,运维的东西在公司都有专业的人在干。

所以深度还是要深入学习编程的知识、软件架构知识,有了这个基础后,Web架构师应该在大数据量、高并发、高负载、以及高容错方向再有所了解和涉 及,再返过来促进我们对软件架构的思考,这种深-广-深-广的模式是我们学习的方法,只要坚持不懈努力几年,做真正合格的Web架构师是没大问题的。

另外由于学东西太多,在学习中也要和其他架构师多交流、共同进步,多参考其他架构师的杰作,是很明智的选择。

WEB架构师成长之路 三的更多相关文章

  1. 【转载】WEB架构师成长之路

    本人也是coding很多年,虽然很失败,但也总算有点失败的心得,不过我在中国,大多数程序员都是像我一样,在一直走着弯路,如果想成为一个架构师,就必须走正确的路,否则离目标越来越远,正在辛苦工作的程序员 ...

  2. WEB架构师成长之路-架构师都要懂哪些知识 转

    Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求. 总结起来大概有下面几点技能要求: 一. 架构师有 ...

  3. WEB架构师成长之路之三-架构师都要懂哪些知识

    Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求. 总结起来大概有下面几点技能要求: 一. 架构师有 ...

  4. WEB架构师成长之路 一

    一 .你必须学习面向对象的基础知识 1.降低软件开发的复杂度 2.提高软件开发的效率 3.提高软件质量:可维护性,可扩展性,可重用性等. 提高软件质量:可维护性,可扩展性,可重用性等,再具体点,就是高 ...

  5. WEB架构师成长之路 二

    法宝一:牛人爱惜自己的时间. 时间就是金钱,时间就是生命,时间如同健康一样,如果时间都没有,那成功也就是浮云了.所以牛人总是很爱惜自己的时间,总是在想办法提高自己的做事效率.我突然想了起来,我QQ里有 ...

  6. 架构师成长之路4.4-多维监控体系_zabbix

    点击返回架构师成长之路 点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 架构师成长之路4.4-多维监控体系_zabbix 自学Zabbix之路[第 ...

  7. 架构师成长之路3.1-Cobber原理及部署

    点击返回架构师成长之路 架构师成长之路3.1-Cobber原理及部署 Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机,同时还可以管理 ...

  8. 架构师成长之路6.1 DNS理论

    点击返回架构师成长之路 架构师成长之路6.1 DNS理论 1.DNS一些基本概念       ① FQDN:Full Qualified Domain Name,完全限定域名,即每个域在全球网络都是唯 ...

  9. 架构师成长之路1.2-多功能系统信息统计工具dstat

    点击返回架构师成长之路 架构师成长之路1.2-多功能系统信息统计工具dstat dstat命令是一个用来替换vmstat.iostat.netstat.nfsstat和ifstat这些命令的工具,是一 ...

随机推荐

  1. 假·最大子段和 (sdutoj 4359 首尾相连)(思维)

    题目链接:http://acm.sdut.edu.cn/onlinejudge2/index.php/Home/Contest/contestproblem/cid/2736/pid/4359 具体思 ...

  2. Spring---七大核心模块

    核心容器(Spring Core) 核心容器提供Spring框架的基本功能.Spring以bean的方式组织和管理Java应用中的各个组件及其关系.Spring使用BeanFactory来产生和管理B ...

  3. 诺贝斯特(厦门)电气有限公司http://www.thebest.cn.com/

    诺贝斯特(厦门)电气有限公司,公司位于厦门市湖里区塘边社168号.是一家专注于智能电网用户端智能配用电以及电气安全产品研发.生产和销售的高新技术企业:致力于为工矿企业.建筑楼宇以及基础设施等智能电网用 ...

  4. usbnet驱动深入分析-usb虚拟网卡host端【转】

    转自:http://blog.csdn.net/zh98jm/article/details/6339320 1.驱动流程:   2.明确probe函数的功能: probe有usb core 经枚举过 ...

  5. LINUX的DNS设置【转】

    网卡DNS设置 用windos系统大家都知道,本地连接里面有一个DNS设置. 那么这个选项对应Linux系统的话就是在网卡配置文件,通过编辑vi  /etc/sysconfig/network-scr ...

  6. Python函数:对变量赋值,变量即局部

    b = 6 def f2(a): print(a) print(b) b = 9 UnboundLocalError: local variable 'b' referenced before ass ...

  7. android设备休眠

    从上面的连接里面找到了一些资料: 如果一开始就对Android手机的硬件架构有一定的了解,设计出的应用程序通常不会成为待机电池杀手,而要设计出正确的通信机制与通信协议也并不困难.但如果不去了解而盲目设 ...

  8. cvpr densnet论文

  9. 洛谷P2680运输计划

    传送门啦 要求的就是,把树上的一条边的权值设为0之后,所有路径中的最大值的最小值. 首先二分最大值,假设某次二分的最大值为x,我们首先找出所有大于x的路径(也就是我们需要通过改权缩短的路径),并把路径 ...

  10. 配置JDK-Java运行环境

    1.将Java安装包上传到服务器某目录,如E:\jdk-7u45-windows-x64.exe 2.上传后运行jdk-7u45-windows-x64.exe 3.点击[下一步],后选择[更改],改 ...