分布系统概念与设计---分布式系统特征

一、分布式系统构建的挑战

1、异构组件 <网络,硬件,OS, 编程语言,不同开发者>

2、开放性(允许组件加与替换)<接口标准开放,一致的通读机制>

3、安全性<保密,健全,可用-防DOS>

4、伸缩性<系统在规模上的平滑过渡;注意控制物理成本,控制性能损耗,注意软件资源耗尽(如IPV4)>

5、失败处理<失败检测,屏蔽失败,容忍失败, 失败恢复,冗余>

6、组件并发性

7、透明性<及隐藏信息及细节或实现, 访问透明(本地与远程用相同操作),位置透明(访问资源无须了解物理地址,如IP),并发透明(多个进程无须互相干涉地使用共享资源),复制透明(允许资源的多个实现用来提高有效性和性能无须知道具体复制体), 失败透明(隐藏失败,允许系统存在失败的情况下仍能完成用户的任务),移动性透明(资源与客户的移动而无须影响用户或者程序的操作),性能透明(允许系统随着负载变化而重配置), 伸缩透明(允许系统规模扩展无须改变系统结构和算法);>

8、服务质量<可依赖性, 安全性, 性能, 适应性>

二、分布式系统发展趋势

1、网络技术更加普及

2、无处不在的计算与分布式系统中渴望支持用户移动性

3、多媒体需求与日俱增

4、分布式系统作为一项普通应用

时间: 2024-10-13 01:42:54

分布系统概念与设计---分布式系统特征的相关文章

分布系统概念与设计---系统模型

架构元素 真正了解分布式系统基础构件,有必要考虑如下四个问题: 1.哪些实体在分布式系统中进行通讯? 2.它们是如何进行通讯的, 或者说,用的是什么通讯图? 3.它们在整体架构中担任什么角色或者责任? 4.它们是如何映射到分布式物理系统上的? 一.通讯实体 可以从面向系统或者面向问题的观点来看这个问题. 从系统的角度来看, 实体就是进程:一种流行的观点就是把分布式系统看作进程间通讯图:实体也被称为节点: 在多数的分布式系统环境中,进程是由多线程组成的, 严格的来讲,线程才是通讯的终端. 从编程的

面向对象的编程思想和Java中类的概念与设计

面向对象的编程思想学习,面向对象内容的三条主线;1.java类及类的对象2.面向对象的三大特征3.其他关键字学习内容:3.1面向对象与面向过程面向对象与面向过程在应用上的区别 Java中类的概念与设计类与类之间的关系 面向对象的思想概述程序员从执行者转化为指挥着Java类及类的成员 原文地址:https://www.cnblogs.com/KeepCalmAndNeverSayNever/p/10111419.html

分布式系统概念与设计PARTI

分布式系统: 其组件分布在联网的机器上,组件之间通过消息传递进行通信和动作协调的系统. 体系结构:一个体系结构是用独立的制定的组件以及这些组件之间的关系表示的结构. 中间件:分层的思想下,将计算机系统由上到下分为:应用.服务,中间件.操作系统.计算机网络和硬件.中间件是一个屏蔽异构性的软件层. 瘦客户端:将计算移到服务端.但是对于复杂系统,改模式不奏效.虚拟网络计算概念的出现是解决这个问题的,如VNC,可以对鼠标事件.键盘加以传送.

SOA 的基本概念及设计原则浅议

SOA是英文词语"Service Oriented Architecture"的缩写,中文有多种翻译,如"面向服务的体系结构"."以服务为中心的体系结构"和"面向服务的架构",其中"面向服务的架构"比较常见.SOA有很多定义,但基本上可以分为两类:一类认为SOA主要是一种架构风格;另一类认为SOA是包含运行环境.编程模型.架构风格和相关方法论等在内的一整套新的分布式软件系统构造方法和环境,涵盖服务的整个生命

(转)Java 类的热替换 —— 概念、设计与实现

构建基于 Java 的在线升级系统 对于许多关键性业务或者庞大的 Java 系统来说,如果必须暂停系统服务才能进行系统升级,既会大大影响到系统的可用性,同时也增加了系统的管理和维护成本.因此,如果能够方便地在不停止系统业务的情况下进行系统升级,则可以很好地解决上述问题.在本文中,我们将基于实例,对构建在线升级 Java 系统的基础技术和设计原则进行了深入的讲解.相信读者能够根据文中的技术构建出自己的在线升级系统来. Java ClassLoader 技术剖析 在本文中,我们将不对 Java Cl

Java 类的热替换 —— 概念、设计与实现

别人的一篇技术博客,直接摘抄过来,免得再查看找不到了(本人在看的过程中可能会对原文格式或文字有修改) 原文地址:http://blog.163.com/web_promise/blog/static/109631655201222804931240/ 在本文中,我们将不对 Java ClassLoader 的细节进行过于详细的讲解,而是关注于与构建在线升级系统相关的基础概念.关于 ClassLoader 的详细细节有许多资料可以参考,有兴趣的读者可以自行研读. 要构建在线升级系统,一个重要的技术

遗留系统SOA之(2)——SOA架构基础概念与设计框架

SOA的设计框架 设计框架与架构相关的概念紧密相连,原则.模式和架构始终是与设计共舞的. SOA服务设计的原则中记录了一个基础的设计框架: 设计特性(Design Characteristic)——由设计产生的软件程序或技术架构的属性.它可以是任何具体的质量要求,比如程序组件化,功能粒度的粗细等. 设计原则(Design Principles)——一个针对具体设计目标且被业界接受的实践方式.面向服务的设计范式包括了一个以实现面向服务计算为目的的设计原则集合. 设计模式(Design Patter

嵌入式科普:基本概念,设计流程,开发特点,如何学习

本文涉及的内容较多,个人知识水平有限,如有不当之处欢迎指正. 特别鸣谢:嵌入式大神 @tofulee ,@woshizmxin 对本文给出了一些很好的意见. 何为嵌入式 嵌入式是一个比较模糊的概念,也没有很准确的解释,其实也没必要一定找出个准确的解释来,并不影响学习. 参考了网上的资料,根据我的认识,可以认为嵌入式系统是一种完全嵌入到设备内部.解决特定问题的专用计算机.我们常用的电脑被认为是通用计算机,能安装各种软件,从而解决各种不同问题:而嵌入式系统是专用计算机,只负责解决特定问题,例如控制洗

Mysql 索引概念及设计原则

键类型: 1. 主键 2. 唯一键 3. 外键 索引类型: 1. Hash索引 2. Ordered索引(BTREE/RTREE) 索引的创建: 1. 主键会创建两个索引:Hash索引和Ordered索引 2. 唯一键会创建两个索引:Hash索引和Ordered索引 3. 一般定义的索引只创建Ordered索引 主键和唯一键各个索引使用场景: 1. 当操作类型是=时,使用Hash索引 2. 当操作类型是范围时,使用Ordered索引 索引使用原则: 1. 基于主键的操作是最快的,需要充分利用主键