【分布式计算】二、架构 Architectures
阿里云国际版折扣https://www.yundadi.com |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
1.中心化架构Centralized Architectures
1.1.经典C/S模型
服务器一个或多个进程提供服务
客户端一个或多个进程使用服务
客户端和服务器可以在不同的机器上
客户端遵循请求/回复模型
1.2.传统三层视图
用户界面层User-interface layer包含了用于应用程序用户界面的单元例如显示display
处理层Processing layer包含应用程序的功能即没有特定的数据。
数据层Data layer包含客户希望通过应用程序组件进行操作的数据
1.3.两层配置中的传统三层视图适用于C/S模式
中心架构的特点是需要一个管理者但是单一节点存在以下问题管理结点崩溃则系统崩溃、负载过大性能下降甚至系统崩溃。
怎么去解决冗余
对管理结点进行复制replicated manager。原有管理结点崩溃则激活使用冗余的结点
2.去中心化架构Decentralized Architectures
2.1.对等系统P2PPeer-to-peer systems
结构化P2Pstructured按照特定分布式数据结构组织节点
非结构化P2P节点具有随机选择的邻居
混合P2Phybrid节点以组织良好的方式被指定成特殊功能
2.1.1.结构化P2P
基本理念在结构化覆盖网络如逻辑环中组织节点并使特定节点仅根据其ID负责服务系统提供LOOKUP密钥操作该操作将有效地将查找请求路由指针表到相关节点
覆盖网络overlay network:物理网络之上的一层虚拟网络拓扑直接与用户接口
2.1.2.非结构化P2P
基本理念许多非结构化P2P系统以随机覆盖的方式组织两个节点以概率p连接。
No LOOKUP operation, but searching:
洪泛Flooding
有限洪泛Limited flooding: maximal steps
概率洪泛Probabilistic flooding: flood only with a certain probability
随机游走Random walkRandomly select a neighbor v. If v has the answer, it replies, otherwise v randomly selects one of its neighbors
2.1.3.混合P2P
C/S model combined with P2P
3.案例-Globule
一个用于可扩展的网络托管的开源协作内容交付网络
3.1三项主要任务
1.它必须能够在多个服务器之间分发托管网站的内容并在出现更新时保持其一致性
2.它必须将客户端请求重定向到最佳可用服务器
3.它必须有效地将网站内容传递到客户。
上述任务当一些服务器关闭时也要在运行。
3.2.Globule – Supporting Web applications
对于具有所谓的高数据库查询位置的应用程序
我们在副本服务器上缓存数据库查询的结果。然后可以根据本地缓存的数据库查询结果在复制副本上执行应用程序代码
问题如果有些数据被更改了那么缓存的数据是不新鲜的那么如何解决这个问题呢
「定时」刷新缓存
缓存和数据库一致性问题
当数据库查询位置较低时
数据库查询缓存不会提供任何改进。
在每个副本服务器上复制基础数据库更有效
导致一致性问题。
阿里云国际版折扣https://www.yundadi.com |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |