系统架构
文章平均质量分 76
火烧云-
技术管理,任重道远,以满足客户需求为目标,以管理为手段,以奋斗者为荣。带着梦想,带着信心,带着团结的信念,创新求变,创造奇迹。
展开
-
分布式系统理论学习-Paxos-故事场景描述(理解若有误,请大家都指导)
假设现在要进行超女的海选,大家都在踊跃报名。报名手续要求,要想报名成功,大家必须排队进行报名,依次要去三个人(小赵,小孙,小李)那边登记,然后再由一个决策委员会决策最后的报名结果。决策委员会已经确定了前500名的名单了。这个时候小赵说我这已经登记503号了,小孙说我登记到到502号了,小李说我刚登记到501号。决策委员会说"好,501号之前的名单大家都已经确定了呀,不能在更改了,下面就从501开始吧,各自报一下501号的名称吧”。小赵先说说:“501号的名单是小龙女”。小孙再说:“501原创 2020-07-24 11:34:04 · 125 阅读 · 0 评论 -
TOGAF 10 正式发布
2022年4月25日 , The Open Group,宣布正式发布TOGAF标准第10版,这标志着这一世界上使用最广泛的企业架构框架的开发又步入一个重要里程碑。由The Open Group 架构论坛开发,最新的版本引入了更加新颖的模块化结构,这将使TOGAF框架更容易应用于不同类型的组织和架构风格。The Open Group总裁兼首席执行官Steve Nunn评论道。"未来十年的技术和业务压力将要求组织比以往任何时候都更灵活、更具弹性和适应性,这将使一个清晰的架构方法变得比以往任何时候都更为重要。原创 2022-05-21 14:55:12 · 980 阅读 · 0 评论 -
Wireshark-TCP协议分析
https://blog.csdn.net/ahafg/article/details/51039584TCP:传输控制协议 TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议。 面向连接:面向连接意味着使用tcp的应用程序在传输数据前必须先建立连接,就如打电话一样,要先进行拨号,等待对方响应才能开始说话。 可靠性:tcp协议通过下列方式来提高可靠性:应用数据被分割成TCP认为最适合发送的数据块。这和UDP完全不同,应用程序产生的数据报长度将保持不变。由TCP传递...转载 2021-01-09 12:15:34 · 5003 阅读 · 0 评论 -
正向代理和反向代理-图解系列
正向代理反向代理原创 2020-08-05 19:14:45 · 262 阅读 · 0 评论 -
架构师原则
架构师原则原则1:没有原则架构设计没有绝对的对与错,架构设计一定需要考虑场景,相同的功能需求,不同的场景下选择的设计方案也会是不一样的。简单来说,项目和产品的做法是不一样的。项目的目的是为了什么?关注什么?我觉得主要有两点:1、快速结项、2、最大利润。首先说说 快速,也就是说,在项目中优先解决什么?首先要尽快能够实现初验和终验,能够把项目结了,能够快速回款,钱能快点儿到手。因为项目会受到各种外部因素影响,例如资金呀、用户人员调整呀、新技术呀、基本环境变化呀、客户需求变化呀等等,这些都会给项目带来原创 2020-07-28 20:52:46 · 155 阅读 · 0 评论 -
LSM树的学习总结
LSM树的学习总结-简明-更新中...LSM树的概念LSM树的原理LSM的写入流程如下LSM树的使用LSM树和B树、B+树的区别B树的写入过程LSM树的概念英文全名 The Log structured Merage - TreeLSM树的原理基础原理1:内存存储速度比磁盘快基础原理2:批量写入磁盘速度比随机写入磁盘速度快基础原理3:日志追加写入比覆盖写入速度快基础原理4:放弃部分读性能换取写性能LSM的写入流程如下首先写WAL日志,避免故障导致数据丢失;将数据写入C0内存中m原创 2020-07-28 10:06:44 · 248 阅读 · 0 评论 -
分布式系统理论学习-Paxos
分布式系统理论学习-Paxos概念两个角色两个阶段全局唯一且递增的提案IDPrepare阶段Accept阶段概念Paxos(分布式一致性算法)作为分布式系统的基石,一直都是计算机系统工程领域的热门话题。两个角色1、议案提议者:Proposer2、议案批准者:Accptor两个阶段1、Prepare阶段2、Accept阶段全局唯一且递增的提案ID【Pn】:可以使用时间戳+IP+序列号Prepare阶段1、议案提议者发起提案例如三个提议者发起的提案ID,分别为 P1,P2,P3。P3&原创 2020-07-23 16:44:45 · 106 阅读 · 0 评论 -
多路分配器和数据选择器
多路分配器:能够将1个输入数据,根据需要传送到m个输出端的任何一个输出端的电路数据选择器:能够将多路输入数据,根据需要将其中任意一路选出来的电路两种刚好相反而Reactor模式使用的是多路分配器方式,软件设计和硬件设计的原理是相通的。Reactor模式首先是事件驱动的,有一个或多个并发输入源,有一个Service Handler,有多个Request Handlers;这个Serv...原创 2017-09-13 10:20:58 · 5699 阅读 · 0 评论 -
微服务Dubbo和SpringCloud架构设计、优劣势比较
微服务Dubbo和SpringCloud架构设计、优劣势比较本文主要围绕微服务的技术选型、通讯协议、服务依赖模式、开始模式、运行模式等几方面来综合比较Dubbo和Spring Cloud 这2种开发框架。架构师可以根据公司的技术实力并结合项目的特点来选择某个合适的微服务架构平台,以此稳妥地实施项目的微服务化改造或开发进程。微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将...转载 2018-11-23 13:27:59 · 235 阅读 · 0 评论 -
高并发架构系列:Spring Cloud的核心成员、以及架构实现详细介绍
什么是微服务微服务的概念源于Martin Fowler所写的一篇文章“Microservices”。微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTfulAPI)。每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产...转载 2018-11-23 13:24:29 · 820 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(4)
本文是负载均衡详解的第四篇,主要介绍了LVS的三种请求转发模式和八种负载均衡算法,以及Haproxy的特点和负载均衡算法。具体参考文章,详见最后的链接。 三、LVS负载均衡LVS是一个开源的软件,由毕业于国防科技大学的章文嵩博士于1998年5月创立,用来实现Linux平台下的简单负载均衡。LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器。基于IP层转载 2017-07-26 17:52:19 · 220 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(2)
本文是负载均衡详解的第一篇文章,介绍负载均衡算法, 硬件负载均衡。部分内容摘自读书笔记。三、负载均衡算法常用的负载均衡算法有,轮询,随机,最少链接,源地址散列,加权等方式;3.1 轮询将所有请求,依次分发到每台服务器上,适合服务器硬件同相同的场景。优点:服务器请求数目相同;缺点:服务器压力不一样,不适合服务器配置不同的情况;3.2 随机转载 2017-07-21 10:29:44 · 189 阅读 · 0 评论 -
大型网站架构系列:缓存在分布式系统中的应用(一)
大型网站架构系列:缓存在分布式系统中的应用(一)缓存是分布式系统中的重要组件,主要解决高并发,大数据场景下,热点数据访问的性能问题。提供高性能的数据快速访问。本文是缓存在分布式应用第一篇文章,介绍缓存的原理,缓存的分类,缓存的设计,CDN缓存(原理,架构参考和技术实践),反向代理缓存(原理,Squid架构实践和常用代理缓存之间的比较)。本文主要是自己的学习总结和网络文章摘录,供学习转载 2017-04-24 14:41:25 · 549 阅读 · 0 评论 -
大型网站架构系列:缓存在分布式系统中的应用(三)
大型网站架构系列:缓存在分布式系统中的应用(三)本文是《缓存在分布式系统中的应用》第三篇文章。上次主要给大家分享了,缓存在分布式系统中的应用,主要从不同的场景,介绍了CDN,反向代理,分布式缓存,本地缓存的常规架构和基本原理。因为时间关于,原计划分享《缓存常见问题》的内容,没有讲。本次主要针对缓存的常见个问题,做一个介绍。主要有以下议题:一、分享大纲分享大纲数据一致转载 2017-04-24 14:42:47 · 317 阅读 · 0 评论 -
大型分布式网站架构技术总结
大型分布式网站架构技术总结 本文是学习大型分布式网站架构的技术总结。对架构一个高性能,高可用,可伸缩,可扩展的分布式网站进行了概要性描述,并给出一个架构参考。一部分为读书笔记,一部分是个人经验总结。对大型分布式网站架构有很好的参考价值。(如果感觉对大家有帮助,请帮忙点推荐,谢谢。本博客会逐步推出一系列的关于大型分布式网站架构,设计模式,架构模式方面的系列文章,交流群:46609752转载 2017-04-24 14:51:08 · 430 阅读 · 0 评论 -
如何用微服务重构应用程序
在决定使用微服务之后,为了将微服务付诸实践,也许你已经开始重构你的应用程序或把重构工作列入了待办事项清单。无论是哪种情况,如果这是你第一次重构应用程序,那么您和您的团队必将在某个时刻面临一个显而易见的问题:如何重构应用程序以实现微服务?这也正是这篇文章要思考和探讨的。重构基础在讨论如何将重构转化为微服务之前,退后一步,仔细观察微服务的内容和时间是很重要的。以下两个要转载 2017-07-17 10:28:13 · 305 阅读 · 0 评论 -
数据库同步
这篇博客文章接下来的部分,将跳出任何一种数据库,从原理的角度上来分析下面的几个问题:问题一:数据一致性。在不使用共享存储的情况下,传统RDBMS(例如:Oracle/MySQL/PostgreSQL等),能否做到在主库出问题时的数据零丢失。问题二:分区可用性。有多个副本的数据库,怎么在出现各种问题时保证系统的持续可用?问题三:性能。不使用共享存储的RDBMS,为转载 2017-04-24 11:40:27 · 488 阅读 · 0 评论 -
大型网站架构系列:缓存在分布式系统中的应用(二)
大型网站架构系列:缓存在分布式系统中的应用(二)缓存是分布式系统中的重要组件,主要解决高并发,大数据场景下,热点数据访问的性能问题。提供高性能的数据快速访问。本文是缓存在分布式应用第二篇文章,介绍分布式缓存,Memcache,Redis,本地缓存(硬盘缓存,内存缓存)以及缓存在分布式系统中的架构示例。本文主要是自己的学习总结和网络文章摘录,供学习之用。本次分享大纲缓存概转载 2017-04-24 14:41:53 · 348 阅读 · 0 评论 -
什么是REST架构
REST架构风格是全新的针对Web应用的开发风格,是当今世界最成功的互联网超媒体分布式系统架构,它使得人们真正理解了Http协议本来面貌。随着 REST架构成为主流技术,一种全新的互联网网络应用开发的思维方式开始流行。 REST是什么 REST是英文Representational State Transfer的缩写,中文翻译为“表述性状态转移”,他是由Roy T转载 2017-04-24 16:17:07 · 307 阅读 · 0 评论 -
基于REST架构的Web Service设计
REST的架构设计 REST(Representational State Transfer)是一种轻量级的Web Service架构风格,其实现和操作明显比SOAP和XML-RPC更为简洁,可以完全通过HTTP协议实现,还可以利用缓存Cache来提高响应速 度,性能、效率和易用性上都优于SOAP协议。 REST架构遵循了CRUD原则,CRUD原则对于资源只需要四种行 为:C转载 2017-04-24 16:02:26 · 327 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(1)
面对大量用户访问、高并发请求,海量数据,可以使用高性能的服务器、大型数据库,存储设备,高性能Web服务器,采用高效率的编程语言比如(Go,Scala)等,当单机容量达到极限时,我们需要考虑业务拆分和分布式部署,来解决大型网站访问量大,并发量高,海量数据的问题。从单机网站到分布式网站,很重要的区别是业务拆分和分布式部署,将应用拆分后,部署到不同的机器上,实现大规模分布式系统。分布式和业务拆分转载 2017-07-21 10:28:53 · 201 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(3)
本次分享大纲软件负载均衡概述Ngnix负载均衡Lvs负载均衡Haproxy负载均衡本次分享总结一、软件负载均衡概述硬件负载均衡性能优越,功能全面,但是价格昂贵,一般适合初期或者土豪级公司长期使用。因此软件负载均衡在互联网领域大量使用。常用的软件负载均衡软件有Nginx,Lvs,HaProxy等。本文参考大量文档,部分为直接拷贝,参考出处见负载均衡详解(4)。二、Ng转载 2017-07-21 10:30:38 · 231 阅读 · 0 评论 -
大型网站架构演化历程
大型网站系统的特点高并发,大流量需要面对高并发用户,大流量访问。Google 日均 PV 35 亿,日 IP 访问数 3 亿;腾讯 QQ 的最大在线用户数 1.4 亿(2011年数据)。高可用系统 7 x 24 小时不间断服务。海量数据需要存储、管理海量数据,需要使用大量服务器。Facebook 每周上传的照片数量接近 10 亿,百度收录的网页数目有转载 2017-07-21 09:18:24 · 238 阅读 · 0 评论