加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

老史聊架构:当当网架构优化的几点心得

发布时间:2016-03-09 14:00:11 所属栏目:优化 来源:聊聊架构
导读:随着移动互联网的进一步普及,网上消费购物比例不断提高,电商网站的系统规模随业务快速增长,承载每天数以万计的交易已经是主流电商网站的常态。

在当当,有一些“类促销”业务,从广义上可以归入促销范畴,但业务与数据均不属于促销系统,在促销系统重构设计中,我们考虑将这类业务逐渐回收;另外,促销系统能不能承担一些营销的功能?带着这两点考虑,在促销基础上进一步抽象出活动模型。

打造内部应用框架

当当技术部现在是按照产品线划分的,一个产品线的产品、开发、测试都在一个部门,但像项目管理、运维、架构这些技术体系中公用的部分是独立的部门。架构部里主要分成三部分,一个是架构与规范,一个是性能测试,一个是基础应用系统研发。

我们花了比较多的精力在技术架构上,去年我们在Dubbo上做了二次开发,做了DubboX并且对外开源,业界反馈还不错,包括很多来面试的人都知道。

我们的技术体系、核心业务系统明确的方向是Java,去年年底,我们开始做一个基于Java的应用开发框架,DDFrame,用它去对接一些核心组件,包括SOA、作业调度、缓存、消息队列、数据库、配置中心等,现在已经发布了2.0版本。虽然受限于资源,进度比较缓慢,但我们一直在做这件事,未来也会慢慢完善这个框架,使其成为技术体系的核心。

架构师并非必需品?

我在上大学的时候学的就是计算机,但没学过系统架构方面的课,也没听说过架构师,之前做项目的时候也很少有专门的架构师角色。一般来讲,系统比较简单的话,并不一定要有架构师,当系统更为复杂,才需要有人在更高的视角上去关注整体性的东西,这也是系统规模不断发展的结果。 所以,我们可以认为,架构师并不是一个必需品,甚至不同公司架构师的职责都不太一样,并没有一个非常明确的定义,但整体来讲,架构师需要关注整个体系中方方面面的东西,还需要去解决一些关键性的技术难点,并需要有更为长远的考虑,这个是共识。

架构师与工程师之别

架构师与工程师之间的差别并不在于年纪 ,而是在于视角的不同以及各方面积累的差别。

首先是意识。作为架构师,不能仅仅关注怎么去实现一个功能,还得去琢磨为什么这么做、怎样才能做得更好、应该在什么场景采用什么样的技术方案等问题。另外还得去关注测试、部署、项目管理的方式等方面,甚至要去了解用户的需求、公司业务的需求。如果一直考虑这些事情,时间长了、经验多了,就会有比较好的整体概念或视图在脑中,综合素质会得到提升,明白功能只是最基本的,系统的可用性、稳定性、可扩展性更为重要。

其次是积累。IT技术一直在演进,全世界无数人的不断研究与实践成就了技术的提升与进化。作为技术人,需要关注当前最新的技术、架构、解决方案、技术理念等,理念可以用不同的技术来实现,也一个不断进化的过程。而作为架构师,承担的是更重要的角色,他的决定会影响到更大的团队或体系,所以就需要有足够多的相关知识和技能,以及足够广的视角,而这些都需要架构师平时不断的积累。我每年大概会看20多本书,技术相关的大概一半,另一半主要是社科类、经济、历史、管理之类的,对提高架构思维很有帮助。

再次是责任感。之前提到,架构师承担的是更重要的角色,他的决定会影响到技术选型、系统架构、具体实现的方案甚至系统发展的方向,所以架构师需要有很强的责任感,要对技术团队负责,需要发挥自己的影响力,做很多沟通、协调、支持的工作。

最后是兴趣。在我看来,人是受限于他的性格、兴趣、天分这些因素的,会不自觉地去靠近他更喜欢、更擅长的方向。所以,到底是当工程师还是架构师,或者其他角色,也是要看兴趣的,有的人就是喜欢解决技术难题,就是喜欢具体的模块实现,不想牵扯太多精力去考虑其他的方面,那么也不见得非要当架构师,只是分工不同,业界也有技术专家、研究员这样的角色。

架构与管理相通

之前架构师大会上经常有人说,没有最好的架构,只有最合适的架构。确实如此,作为架构师,很多时候,技术上的东西可能跟程序员差不多,但差别就在于能不能以更大更广的视角去看待问题,而非仅从自身角度出发。

视角变大之后,所要关注的东西就会变多,变量、变数也会更多,很难理想主义,很多时候都需要做出妥协或者说平衡,到最后就会发现,架构和管理在很多时候是相通的。

管理是在一个有限资源、确定时间点、明确目标的情况下,尽可能达成目标,过程中需要考虑轻重缓急,需要随时调整以适应现实变化,以完成目标为首要考量。

架构也是如此,需要考虑的是宏观上的方向性的问题,是各个部分之间的平衡关系,是如何配合才能达成最佳效果,而非仅仅是短期目标而达成,也不必纠结于细节的完美。

这些年,管理、架构都发展出了很多的理论,虽然行业、环境一直在变,但却也不能直接断定它们是不是合适,需要学习的是其中的思维方式,具体的问题具体分析。

IT是条不归路

有这样的感慨是因为IT行业发展实在是太快了,覆盖的领域也越来越广。前两天刚好面试了一个候选人,40多岁,传统IT领域的,能力很不错,在原来公司也做到了挺高的职位,但他不熟悉现在互联网主流的东西,面对的也是不同维度的需求,思路对不上,就很难符合我们的要求。每次见到这样的老大哥,心里都有很悲凉的感觉。

IT人的能力和价值是基于技术的,一旦跟不上技术进化的脚步,或者当初所选的领域成为夕阳领域,职业道路就会面临转折。这也是我之前换工作的原因之一,一直在原来的公司干下去的话,真的会失去竞争力,很有危机感。

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读