位置:编程技术网 > 人工智能 > 正文 >

年薪50W的程序员,如何用5年时间成为一名架构师,分享成功的经验

2019年10月19日 10:20来源:未知手机版

柳州箭盘山医院,lol排位赛规则,infinite王道

【大咖·来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》

架构师,我想很多人都知道,其实该职位头衔在最早的IT领域是没有的,它是近些年来由互联网的发展所引发的需求,因为现阶段的数据量及高并发的活跃好动,引起了不少传统的技术人员的力不从心,企业愈发关注到了系统架构的重要性,所以不同行业开始招募架构技术人员,架构师就诞生了。

架构设计的条件

以下三个条件不适合做架构设计

对架构不感兴趣,但又迫于需求;

入IT行业,年限小于4年的;

主观能动性弱,又安于现状的;

架构设计的优势

更好的梳理业务的结构体系;

更好的拓展、维护及性能优化;

更好的适应企业业务灵活的推进;

更好的适应大数据的冲洗和应对;

更好的稳定性、低成本及快速迭代;

架构设计时候需要注意的地方

架构设计需要注意的地方,不是怎么把架构搭建起来,而是必须根据业务需求,严格分析,实现该需求需要什么技术会更好及更长远发展的考虑;

另外,构建好的架构虽然可以运行,但是性能需要跟起来,否则架构设计会适得其反,增加不必要的工作量,那么下面就详细介绍下架构设计的策略。

平台的需求

客户需求

在线购物、在线支付或货到付款;

购买商品后,客户可以与客服沟通;

购买商品过程,物流的管理及跟踪;

收取到商品后,商品、物流评价打分;

客户的需求为***,也代表了企业的核心需求,当然,企业需求还包括其它很多非功能性需求,具体请查看需求梳理部分。

平台的业务架构

根据业务的需求进行子系统模块划分,可以划分为商品子系统、购物子系统、支付子系统、物流子系统、客服子系统、评论子系统;而非核心需求可拆分出客服子系统、评论子系统及接口子系统。另外,根据各个子系统的核心等级,可拆分出核心子系统和非核心子系统,前者包括商品子系统、购物子系统、支付子系统及物流子系统;后者,则包括评论子系统、客服子系统及接口子系统。需要注意的是一般大型电商平台的物流系统是单独分离出来的系统(入库、出库、库存管理、配送管理及货品管理),而这里划分为子系统的主要目的是为演示核心架构,本架构中物流子系统一般作为对接和管理独立子系统的对接模块哦。

1、业务拆分目的

为了解决各个模块子系统间的耦合、维护及拓展性;

方便单独部署子系统,避免集中部署导致一个出问题,全部不能用;

分配专门的团队,负责具体的子系统,***化工作效率安排;

应对大数据,高压力时,保护核心子系统正常使用;

2、业务的架构图

在上面的业务架构图中,将核心和非核心业务进行拆分,同时每个系统都要独立部署实现,做到大数据量压下,各个系统独立运作,提高可用性,必要时可以暂停掉非核心系统的资源开销,保证核心业务正常为用户服务。

平台的技术架构

在上面业务架构图基础上,我们需要一个技术架构的演变过程,一切只为满足用户的体验和支撑为前提,所以技术架构的搭建不是一蹴而就的,而是随着业务的不断衍变,系统的架构会逐渐完善更新,以实现应对业务数据量的冲击。

1、基本的架构设计

记得很早的时候,很多中小企业所采用的架构设计十分简单,基本使用一台服务器来满足一切需求部署,比如:一台服务器同时用作应用部署、数据库存储以及图片存储等,不料的是待用户数据达到50万以上,系统出现很多性能问题,尽管对数据库和程序做个各种性能优化,结果仍无明显改善,架构如下:

本文地址:http://www.reviewcode.cn/rengongzhinen/83924.html 转载请注明出处!

今日热点资讯