加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 综合聚焦 > 移动互联 > 评测 > 正文

从新手到架构师,一篇就够:从100到1000万高并发的架构演进之路

发布时间:2019-07-18 13:43:41 所属栏目:评测 来源:JackJiang
导读:本文以设计淘宝网的后台架构为例,介绍从一百个并发到千万级并发情况下服务端的架构的14次演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知。文章最后汇总了一些架构设计的原则。 1、关于作者 huashiou:广东工业大

所谓的“大数据”其实是海量数据采集清洗转换、数据存储、数据分析、数据服务等场景解决方案的一个统称,在每一个场景都包含了多种可选的技术,如数据采集有Flume、Sqoop、Kettle等,数据存储有分布式文件系统HDFS、FastDFS,NoSQL数据库HBase、MongoDB等,数据分析有Spark技术栈、机器学习算法等。总的来说大数据架构就是根据业务的需求,整合各种大数据组件组合而成的架构,一般会提供分布式存储、分布式计算、多维分析、数据仓库、机器学习算法等能力。而服务端架构更多指的是应用组织层面的架构,底层能力往往是由大数据架构来提供。

4)有没有一些架构设计的原则?

a. N+1设计:系统中的每个组件都应做到没有单点故障;

b. 回滚设计:确保系统可以向前兼容,在系统升级时应能有办法回滚版本;

c. 禁用设计:应该提供控制具体功能是否可用的配置,在系统出现故障时能够快速下线功能;

d. 监控设计:在设计阶段就要考虑监控的手段;

e. 多活数据中心设计:若系统需要极高的高可用,应考虑在多地实施数据中心进行多活,至少在一个机房断电的情况下系统依然可用;

f. 采用成熟的技术:刚开发的或开源的技术往往存在很多隐藏的bug,出了问题没有商业支持可能会是一个灾难;

g. 资源隔离设计:应避免单一业务占用全部资源;

h. 架构应能水平扩展:系统只有做到能水平扩展,才能有效避免瓶颈问题;

i. 非核心则购买:非核心功能若需要占用大量的研发资源才能解决,则考虑购买成熟的产品;

j. 使用商用硬件:商用硬件能有效降低硬件故障的机率;

k. 快速迭代:系统应该快速开发小功能模块,尽快上线进行验证,早日发现问题大大降低系统交付的风险;

l. 无状态设计:服务接口应该做成无状态的,当前接口的访问不依赖于接口上次访问的状态。

【编辑推荐】

  1. 醒醒吧!又一个程序员在东南亚出事了_技术栈微信半月刊第45期
  2. 技术人具备“结构化思维”意味着什么?
  3. 成为架构师之前,你得先学一门编程语言
  4. Java界神秘技术ClassLoader,吃透它看这一篇就够了
  5. 为什么在微服务架构下,服务网关和数据库不能部署在虚拟机上
【责任编辑:张燕妮 TEL:(010)68476606】
点赞 0

(编辑:辽源站长网)

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

推荐文章
    热点阅读