分布式基础

简介: 分布式基础

1 高质量分布式应用:

高性能 ,可伸缩,高可用,低延迟的要求.同时保证一致性,容错性,可恢复性和安全性

  • 1: 可伸缩性: 垂直伸缩时降低锁竞争,水平伸缩时常用的分布式缓存,分布式文件系统等方法
  • 2: 高可用: 均衡负载, 构建可容错,对资源使用有限制的系统
  • 3: 实现SOA时,可参考的概念:SCA ,ESB 和业界的实现SCA ESB ,

1: SCA: Service Component Architecture:
2: ESB:核心思想是基于中间件来实现系统的交互.基于消息中间件所构建的此系统交互的中间场所称为总线,系统间交互数据采用统一的消息格式,由总线完成消息的转化,路由,发送到相应的目标应用,(1)标准的消息通信格式,ESB系统中要定义系统发送以及接收消息时的消息格式,以便各个系统保持同样的方式与总线通信(2) 消息路由,是指当总线接收到消息后,根据消息中的数据来决定需要调用的系统.更为复杂的情况时,还可以基于消息路由实现功能编排,即当某个功能需要有多个系统共同完成时,可以在总线上以流程的方式编排访问系统的顺序.例如某功能需要首先访问A系统,然后根据A系统返回的结果来决定访问B系统还是C系统 (3)支持多种的消息交互类型: 支持 请求/响应和发布/订阅等方式, 请求/响应方式会更加方便实现同步请求, 发布/订阅方式则以更加方便实现异步的消息广播. (4) 支持多种网络协议,总线要和多个系统进行交互,通常要支持多种网络协议,例如:HTTP/IP UDP/IP HTTP (5)支持多种数据格式并能进行互相转换,多个系统需要发送消息到总线,并由总线将消息转发,但各个系统消息格式可能不一致,此时需要总线支持数据转换.

  • 4: classloader结构: image
  • 5:JVM采用了invokestatic(静态) ,invokevirtual (实例),invokeinterface(接口方法)和invokespecial(调用private方法和编译后的)四个指令来执行不同的方法调用
  • 6: 对于方法的指令解释执行,执行方式为经典的FDX循环方式,即:获取下一条指令,解码并分派,然后执行,在实现FDX循环时有: switch-threading,token-threading,direct-threading,subroutine-threding,inline-threading 等多种方式. Sun JDK采用token-threading.也做了一些其它优化: 栈顶缓存,(将栈顶的值缓存在寄存器) (2)部分栈帧共享, (3)在解释执行特殊情况会直接执行机器指令: Math.sin Unsafe.compareAndSwapInt
  • 7: 方法区: 存放了要加载类的信息(名称,修饰符等),类中的静态变量,类中定义为final类型的常量,类中的Field信息,类中的方法信息.当开发人员在程序中通过Class对象的getName isInterface等方法来获取信息时.这些数据都来自方法区域. 也是全局共享
  • 8: 对象的分配: ( TLAB(Thread Local Allocator ByteBuf) 在eden区)
    -9 : 线程的状态: image
相关文章
|
消息中间件 资源调度 数据可视化
企业级分布式批处理方案
在企业级大数据量批处理需求场景中,如何通过分布式方式来有效地提升处理效率。本文将就常见批处理框架Spring Batch与SchdulerX进行比较讨论。同时基于阿里巴巴分布式任务调度平台SchedulerX2.0,实现一个分布式并行批处理方案,展示其相关的功能特性。
1786 0
|
1月前
|
运维 负载均衡 算法
“分布式基础概念”全面解析,让你秒懂分布式系统!【一】
该博客文章全面解析了分布式系统的基础概念,包括微服务架构、集群与分布式的区别、节点定义、远程调用、负载均衡、服务注册与发现、配置中心、服务熔断与降级以及API网关,帮助读者快速理解分布式系统的关键组成部分和工作原理。
“分布式基础概念”全面解析,让你秒懂分布式系统!【一】
|
1月前
|
存储 负载均衡 中间件
构建可扩展的分布式数据库:技术策略与实践
【8月更文挑战第3天】构建可扩展的分布式数据库是一个复杂而具有挑战性的任务。通过采用数据分片、复制与一致性模型、分布式事务管理和负载均衡与自动扩展等关键技术策略,并合理设计节点、架构模式和网络拓扑等关键组件,可以构建出高可用性、高性能和可扩展的分布式数据库系统。然而,在实际应用中还需要注意解决数据一致性、故障恢复与容错性以及分布式事务的复杂性等挑战。随着技术的不断发展和创新,相信分布式数据库系统将在未来发挥更加重要的作用。
|
1月前
|
监控 负载均衡 Java
(九)漫谈分布式之微服务组件篇:探索分布式环境下各核心组件的必要性!
本文将深入探讨微服务中各个组件的必要性,以此帮助各位更好地加深对分布式系统的掌握度。
|
3月前
|
存储 分布式数据库 数据库
深入OceanBase内部机制:分区构建高可用、高性能的分布式数据库基石
深入OceanBase内部机制:分区构建高可用、高性能的分布式数据库基石
|
10月前
|
SQL Dubbo Java
分布式系列教程(22) -分布式事务解决方案(设计篇)
分布式系列教程(22) -分布式事务解决方案(设计篇)
103 0
|
12月前
|
消息中间件 JSON 网络协议
分布式
当今互联网应用越来越复杂,需要处理大量的数据和用户请求。为了应对这种复杂性,分布式系统和分布式调用成为了不可或缺的一部分。在本文中,我们将深入探讨分布式调用的概念、原理以及如何在实际应用中实现它。
|
11月前
|
消息中间件 缓存 分布式计算
分布式场景介绍
分布式场景介绍
69 0
|
存储 缓存 负载均衡
架构系列——架构师必备基础:单体、分布式、集群与冗余的区别
架构系列——架构师必备基础:单体、分布式、集群与冗余的区别
|
Prometheus 监控 Cloud Native
【分布式技术专题】「架构实践于案例分析」盘点一下分布式模式下的服务治理和监控优化方案
【分布式技术专题】「架构实践于案例分析」盘点一下分布式模式下的服务治理和监控优化方案
232 0
【分布式技术专题】「架构实践于案例分析」盘点一下分布式模式下的服务治理和监控优化方案