从结亲网 的架构谈起,谈什么架构, 我理解的架构。我想不少人理解的架构应该可能比较 狭义



 

从结亲网 jieqin8.com  的架构谈起,谈什么架构,  我理解的架构 java

 



什么是架构?程序员


什么是架构,谈下你项目中用的是什么样的架构?!! web


What?这个问题怎么熟悉!!原来是在面试的时候常常面试官会问出这个问题。 面试


而后,程序员们开始侃侃而谈,我用的是三层架构,我用的是MVC架构,我用的是WebApi架构,我分业务层,我分数据访问层,我分实体层,等等。。。。 redis


而后彷佛面试官也很满意你的回答。。。。。 sql


那么架构真的是这样子吗?mongodb



楼主我的对架构的理解,它应该是这样子的: api

  架构应该是整个项目体系全部思惟过程的总称。安全

下面以结亲网(jieqin8.com)为例,讲解怎么理解这话的意思呢? 微信


一、架构选型

结亲网的客户群体是谁?

结亲网的一段时间内的客户访问量会多少?

结亲网的理想市场客户数会有多少?

结亲网须要用到什么主要技术?

结亲网是否须要手机版本?

团队目前或短期内可以拥有的资源有哪些?

咱们具有什么的人才体系和技术力量程累?

咱们的资金及实力资源有哪些?

..........


基于更多的,相似于这些问题的思考,就会影响咱们的架构选型,到底咱们是用java仍是C#,用oracle仍是sqlserver,用mongodb仍是redis等等。


最终咱们会选择出最适合本身的架构选型。


那么,结亲网用的是C#,webapi,sqlserver


二、业务架构

项目的实施是为了解决实际问题。因此,对于业务的了解和深刻及精通,这整个探讨过程,我称之为业务架构。


业务架构主要的成果是思惟上和文档上进行体现。


那么针对结亲网,分析整个网站的业务需求,与市场的对应关系,要解决的业务问题,就是咱们平常要思考和探讨的话题,整个交互过程,最终要造成文字性的需求文档,甚至demo。



三、系统架构

针对系统选型,以及业务模块的分析,那么系统架构就呼之欲出。


咱们要怎么划分系统的底层模块?

咱们要怎么创建各个子系统之间的联系?

咱们要怎么控制连接安全?

咱们要怎么传输数据和访问数量?

。。。。。。


通过一系列的思考,就会得出咱们的业务构架模式。


以结亲网为例,咱们的系统架构是这么搭建的。

子系统分为OA内部系统、外部全站的jieqin8.com系统、WCF框架、微信支付宝等接口模块、系统的经过核心框架,以及你们常见业务层、数据访问层、实体层等模块。



四、技术架构

技术架构水到渠成。


业务构架中,咱们已经对业务总体进行了分析,那么,业务既然分析出来了,那总要使用代码去实现吧?!


so,技术架构应该在俯视全局的基础上,作好面向对象的业务抽象,为整个网站作好扩展和解耦基础。


结束寄语

 


架构是项目系统实施的整个思惟过程。他不是一件容易的事。


须要架构师可以充分把握业务需求,对行业及项目具备前瞻性的眼光,对抽象思惟有精深的能力,应对变化有足够的反应,这样才能够把一个项目架构作好。


程序之路漫长,祝你们财源滚滚。

相关文章
相关标签/搜索