分布式系统的发展演变以及RPC简介

场景

什么是分布式系统

分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统。

分布式系统是建立在网络之上的软件系统。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

单一应用架构

当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。

单一应用结构特点

适用于小型网站,小型管理系统,将所有功能都部署到一个功能里,简单易用。
缺点: 1、性能扩展比较难
       2、协同开发问题
       3、不利于升级维护

垂直应用结构

当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干的几个应用,以提升效率。此时,用于加速前端页面开发的Web框架(MVC)是关键。

垂直应用结构特点

通过切分业务来实现各个模块独立部署,降低了维护和部署的难度,团队各司其职更易管理,性能扩展也更方便,更有针对性。
缺点: 公用模块无法重复利用,开发性的浪费

分布式服务架构

当垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。此时,用于提高业务复用及整合的分布式服务框架(RPC)是关键。

流动计算架构

当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率。此时,用于提高机器利用率的资源调度和治理中心(SOA)[
Service Oriented Architecture]是关键。

RPC

什么叫RPC

RPC【Remote Procedure
Call】是指远程过程调用,是一种进程间通信方式,他是一种技术的思想,而不是规范。它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远程调用的细节。即程序员无论是调用本地的还是远程的函数,本质上编写的调用代码基本相同。

RPC基本原理

RPC举例

A服务器想要调用B服务器的的方法,整个过程如下图

由此可以看出RPC的两个核心模块是通讯和序列化。

原文地址:https://www.cnblogs.com/badaoliumangqizhi/p/12046497.html

时间: 2024-10-08 15:34:24

分布式系统的发展演变以及RPC简介的相关文章

调研Android平台的开发环境的发展演变

一.发展演变 1.Android版本进化史 阿童木(Android beta)和发条机器人(Android1.0)->Cupcake(Android1.5)->Dount(Android1.6)->Eclair(Android2.0/2.1)->Froyo(Android2.2/2.2.1)->Gingerbread(Android2.3.x)->Honeycomb(Android3.0/3.1/3.2)->Ice Cream Sandwich(Android4.

Android开发环境的发展演变调研

Android开发环境的发展演变调研 前几年比较多的方法是用JDK+eclipse+ADT,该方法除了要配置JDK的路径之外, 还要在eclipse里面打开SDK Manage进行相应的操作.不过近两年来,因为google退出中国市场,要想完成这个操作非常复杂,需要去把所需的材料另外下载,再通过在eclipse里面导入相应的压缩包.除此之外,还存在一个问题:ADT的版本还要与SDK的版本相协调,也就是说,两者只要一个更改,那么必须对另外一个进行调整,否则无法正常打开AVD.(这些都是本人在第一次

作业一_随笔3_调研Android的开发环境的发展演变

调研某一移动应用/平台的开发环境的发展演变:Android 其实,一开始,我只知道,苹果手机用IOS系统,其他很多手机时候安卓系统.我百度知道Android开发主要是android studio和Eclipse这2个开发工具.我的eclipse和java环境是很早之前好朋友帮我在电脑里弄好的,安装的过程也挺简单的,直接下载安装Android studio,安装没有遇到什么问题,百度经验里面,别的网友说的JDK,SDK和ADT之类的麻烦,我好像也没有遇到,只是打几个勾的事儿~安装完之后,问题来了.

调研一类软件的发展演变—聊天软件( 1000-2000 words, in Chinese)

因为本人平时对聊天软件的涉及比周边其他同学而言所涉及的是比较多的.所以说想写写这个东西.(ps本文里面的具体通讯信息的时间安排不分先后) 也许最起初的通讯信息的传达是利用.烽火狼烟这一类可以远距离视觉察到的事物来进行传播的吧.毕竟古人军队的战斗信息是靠着这个来传达的.古代也有着周幽王“烽火戏诸侯”的历史典故. 可能是因为古装电视剧看多了的原因.我觉得一开始的聊天软件应该起于飞鸽传书(此处不谈及那些神话里面的“仙人”的知微.观微吧0.0......). 飞鸽传书与“鸿雁传书”是一个意思,是古人之间

调研一类软件发展演变—Excel的发展演变

Excel的发展演变 Excel能够方便的制作出各种电子表格,使用公式和函数对数据进行复杂的运算:用各种图表来表示数据直观明了:利用超级链接功能,用户可以快速打开局域网或Interner上的文件,与世界上任何位置的互联网用户共享工作薄文件.在实际的行业运用中,教师.企业办公文秘人员.政府审计部门.统计部门和一般的工作人员等等都会或多或少的用到Excel.通过我们对Excel的使用,使得我们的学习工作效率得到了大大的提高.所以能够进一步了解到Excel的发展史也是必要的. 1982年,Micros

rpc简介、原理、实例

简介 RPC(Remote Procedure Call,远程过程调用)是建立在Socket之上的,出于一种类比的愿望,在一台机器上运行的主程序,可以调用另一台机器上准备好的子程序,就像LPC(本地过程调用).越底层,代码越复杂.灵活性越高.效率越高:越上层,抽象封装的越好.代码越简单.效率越差.Socket和RPC的区别再次说明了这点.在传统的编程概念中,过程是由程序员在本地编译完成,并只能局限在本地运行的一段代码,也即其主程序和过程之间的运行关系是本地调用关系.因此这种结构在网络日益发展的今

企业战略管理的发展演变

一个好的企业离不开一套完美的战略管理制度,它可以帮助企业在社会中顺风顺水占据绝对的地位.企业战略管理的整体性包括两个方面的含义:首先,将企业战略看成一个完整的过程来加以管理.其次,它将企业视为一个不可分割的整体. 自20世纪60年代以来,战略管理理论共经历了四个发展阶段.本文通过对战略管理理 论发展历程的梳理,来把握企业战略思想演进的脉络和规律,并对企业战略理论的发展趋 势进行了展望. 目前,管理学对这一变化比较一致的看法体现在四个方面:由过程管理向 战略管理转变:由内向管理向外向管理转变:由产

计算机病毒软件的发展演变

我们每天接触的最多的就是网络,当我们打开网页的时候,会弹出来各种小广告,游戏网页和各种软件.一旦点进去,它通常都会自动下载软件,并且附带各种流氓插件.各种病毒趁虚而入,破坏我们的计算机. 20 世纪 80 年代早期出现了第一批计算机病毒.这些早期的尝试大部分是试验性的,并且是相对简单的自行复制的文件,它们仅在执行时显示简单的恶作剧而已. 注意: 值得注意的是,提供病毒演变的明确历史几乎是不可能的.恶意软件的非法本质意味着,作恶者关注的是如何隐藏恶意代码的来源.本指南介绍病毒研究人员和防病毒行业普

Web browse的发展演变

Web browse 译为中文是网络浏览器或网页浏览器. Web浏览器如今可谓遍地开花,无论你最终选择了什么浏览器,你可能都会举得他们的功能性想当然的,但是你们可能不知道这些Web浏览器是20年发展的精华.下面我们追溯到1991年——第一个Web浏览器诞生的时候,开始一个短暂的关于Web浏览器演变的旅程.告诉你Web浏览器是怎么样一步步发展到今天. WorldWideWeb 首次发表:1991年 WorldWideWeb可能是全球用户最早注册的Web浏览器.WorldWideWeb的开发始于20