• 分布式系统架构

    分布式理论知识1、分布式系统架构1.1基础概念分布式 : 将一个单体项目分成很多个模块,各个模块协同工作,各个模块构成了分布式系统集群:针对单个模块或者单个系统在多台服务器上部署,称为集群。为了提高系统的可用性,增加系统的负载。1.2分布式系统演变1.3分布式系统面临的问题问题描述通信异常网络本身的不可靠性,因此每次网络通信都会伴随着网络不可用的风险(光纤、路由、DNS等硬件设...

    架构设计 2021年01月28日 2805 0
  • 架构解密从分布式到微服务:深入理解网络,NIO

    NIO我们知道,分布式系统的基础是网络。因此,网络编程是分布式软件工程师和架构师的必备技能之一,而且随着当前大数据和实时计算技术的兴起,高性能RPC架构与网络编程技术再次成为焦点。不管是RPC领域的ZeroC Ice、Thrift,还是经典分布式框架Actor模型中的Akka,或者实时流领域的Storm、Spark、 Flink, 又或者开源分布式数据库中的Mycat、Volt...

    微服务 2021年01月13日 1244 0
  • 简单列一下分布式高并发要做的事情

    数据库以MySQL为例。慢查询日志,索引优化(explain),覆盖索引。数据库一主多从或者双主多从。读写分离。然后对表进行垂直划分,例如一张字段很多的宽表转为子母表。水平划分,根据业务特性,对表进行分区(现在应该很少用),分表,甚至分库。数据该归档的归档,日表变月表,年表,或者变地域表等。使用sharding-jdbc等。甚至可以给数据库硬盘换上SSD。数据量再大,就该考虑大...

    MySQL 2020年12月12日 1307 0
  • 分布式高并发服务三种常用限流方案简介

    服务限流场景在高并发大流量系统中,由于并发大造成服务资源不足,负载过高,进而引发致一系列问题,这里的流量一般都是突发性的,由于系统准备不足,很难短期扩容来应对 ,进行限流是最常用的手段,所以说限流也是服务稳定性治理重要的手段。限流可能发生在多个层面:用户网络层:突发的流量场景如热点事件流量(秒杀事件、热门抢购,微博热搜),恶意刷流,竞对爬虫等。内部应用层:上游服务的异常调用,脚...

    Java 2020年12月09日 1235 0
  • Eureka+负载均衡+Hystrix+网关,我全给你讲清楚

    一、 网站的架构相信大家应该都经历过一个普通地网站发展成大型网站过程中的一种较为典型的架构演变历程。因为这是你在大学期间的必修课,就是搭建一个简单的网站,说不定你的毕业实际就是一个什么管理系统,对吧,这就是最初的网站搭建,但是当你踏入工作岗位之后或者随着你学习内容的扩展和深入,一个项目中会由多个子项目构成,但是一旦有了多个子项目,比如把淘宝网的订单系统和会员系统分开来看,就回产...

    Java 2020年11月15日 1335 0
  • RabbitMQ分布式系统的应用

    由于之前做的项目中需要在多个节点之间可靠地通信,所以废弃了之前使用的Redis pub/sub(因为集群有单点问题,且有诸多限制),改用了RabbitMQ。使用期间得到不少收获,也踩了不少坑,所以在此分享下心得。怎么保证可靠性的?RabbitMQ提供了几种特性,牺牲了一点性能代价,提供了可靠性的保证。持久化当RabbitMQ退出时,默认会将消息和队列都清除,所以需要在第一次声明...

    Java 2020年11月14日 1111 0
  • 分布式定时任务调度框架实践

    分布式任务调度框架几乎是每个大型应用必备的工具,本文介绍了任务调度框架使用的需求背景和痛点,对业界普遍使用的开源分布式任务调度框架的使用进行了探究实践,并分析了这几种框架的优劣势和对自身业务的思考。一、业务背景1.1 为什么需要使用定时任务调度(1)时间驱动处理场景:整点发送优惠券,每天更新收益,每天刷新标签数据和人群数据。(2)批量处理数据:按月批量统计报表数据,批量更新短信...

    Java 2020年11月12日 1112 0
  • 分布式架构的前世今生

    一、前言随着社会的发展,技术的进步,以前的大型机架构很显然由于高成本、难维护等原因渐渐地变得不再那么主流了,替代它的就是当下最火的分布式架构,从大型机到分布式,经历了好几个阶段,我们弄明白各个阶段的架构,才能更好地理解和体会分布式架构的好处,那么本文我们就来聊聊分布式架构的演进过程,希望能给大家带来眼前一亮的感觉。二、背景说明我们都知道一个成熟的大型网站的系统架构并非一开始就设...

    架构设计 2020年09月19日 1374 0
  • 保证分布式系统数据一致性的6种方案

    问题的起源在电商等业务中,系统一般由多个独立的服务组成,如何解决分布式调用时候数据的一致性?具体业务场景如下,比如一个业务操作,如果同时调用服务 A、B、C,需要满足要么同时成功;要么同时失败。A、B、C 可能是多个不同部门开发、部署在不同服务器上的远程服务。在分布式系统来说,如果不想牺牲一致性,CAP 理论告诉我们只能放弃可用性,这显然不能接受。为了便于讨论问题,先简单介绍下...

    架构设计 2020年09月19日 1207 0
  • 分布式架构的总结

    一、前言​  随着社会的发展,技术的进步,以前的大型机架构很显然由于高成本、难维护等原因渐渐地变得不再那么主流了,替代它的就是当下最火的分布式架构,从大型机到分布式,经历了好几个阶段,我们弄明白各个阶段的架构,才能更好地理解和体会分布式架构的好处,那么本文我们就来聊聊分布式架构的演进过程,希望能给大家带来眼前一亮的感觉。 作者:领悟.海洋二、背景说明​  我们都知道一个成熟的大...

    Java 2020年07月28日 1547 0
  • 5种分布式事务解决方案优缺点对比

    背景分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在微服务架构中,几乎可以说是无法避免。ACID指数据库事务正确执行的四个基本要素:原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)CAPCAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consisten...

    架构设计 2020年04月20日 1339 0
  • 大型互联网公司分布式ID是怎么生成的?

    ID是数据的唯一标识,传统的做法是利用UUID和数据库的自增ID,在互联网企业中,大部分公司使用的都是Mysql,并且因为需要事务支持,所以通常会使用Innodb存储引擎,UUID太长以及无序,所以并不适合在Innodb中来作为主键,自增ID比较合适,但是随着公司的业务发展,数据量将越来越大,需要对数据进行分表,而分表后,每个表中的数据都会按自己的节奏进行自增,很有可能出现I...

    技术文章 2019年10月06日 1636 0