架构师之路:刚入IT行业的人,该不该学架构?
起因:
小编近期决定转架构方向(小编是一名PHP新手),小编也有差不多两年的PHP程序开发生涯。许多人都会说现在转架构还太早,至少需要5年以上的经验,不然经验太少,不足以胜任这份工作。小编也认同这点,架构师的确需要丰富的经验。但小编还是觉得:虽然我们刚入IT行业,我们应该学习架构。
架构师需要做什么?(大概)
- 对于整个项目进行需求分析;
- 对于整个项目的需求进行架构,如:数据层、服务层、缓存层、反向代理层、web层等需要使用什么技术;
- 对于各个功能、模块进行测试修正;
- 根据现有成员掌握的技术,计算成本,合理的分配工作;
- 对于整个项目的每一个流程进行严格把控,及时发现并解决问题,如:程序规范、数据库设计、缓存服务等,保证项目能按照计划执行。
架构师需要什么条件?(大概)
- 架构师有优秀的编码能力,解决开发人员无法解决的难题。
- 对大数据容量下的高性能、高并发、容错的网站有架构设计和开发经验。
- 深入了解数据库,缓存,服务器,负载均衡、集群、反向代理、容灾等技术。
- 对于整个项目的开发过程有清晰明确的认知,对于出现的问题,能迅速给予解决方案。
- 学习能力很强、接触知识面要很宽广、喜欢接触了解各种新的技术。
- 沟通能力强,能很好的表达自己的观点,和把控整个项目的进程。
初学者适不适合学习架构?
问:既然架构师需要的要求这么高,我刚入行没多久,不是不适合学习架构吗?
答:的确是这样,但小编认为初学者更应该开始学习架构。
为什么初学者更应该学习架构
小编认为初学者学习架构,可以更好的帮助初学者在程序路上走的更快,走的更远:
- 程序层:所有的程序,写到最后,无非都是要写出已最小的消耗完成更多的事情,而对于这些,架构往往起到了一个很好的指明灯,因为架构,就是需要最优的程序。
- 数据层:架构在数据层这一块,需要考虑很多:一致性、锁机制、读写分离等,这些基础的理论,往往能让初学者在学习数据层这一块,更好的往这一块靠近。
- 服务层:对于初学者而言,是不存在什么服务层的,而服务层也是架构中最重要的一部分,所以这一块也能让初学者在分析业务流程时,会考虑到服务层。
- 缓存层:同样,初学者而言,是不存在什么缓存层的,都是直接将请求丢给DB层的。而架构中的基础的缓存机制,也能让初学者去思考在何种条件下需要加入缓存层,使用怎样的缓存机制。
- 高可用:这里边涉及到的cdn加速、dns分流、反向代理层分流、业务分离、数据冗余、分布式等高深理论,都会让初学者在做项目或者学习新知识的时候,都会有一个大概的方向,都会有一个目标。
总结
在这里小编要总结几点:
- 当你走上IT这条路时,你没有一个方向的话,你就会不知道自己还缺少什么,需要学习什么,要怎么去学习。
- 当你拥有一个方向的时候,虽然一开始我们离得很远,但我们始终有了一个目标,不必在原地徘徊。虽然这个接近的过程很是艰辛,但只要我们不断的学习,一点点的进步,终究是能到达目的地。
- 学习程序,有一个方向的引导,真的很重要!
完结
- 此篇文章纯粹是小编的看法,一切都从个人出发;
- 只有适合自己的才是最好的。