Grid Virtual Server 的 Virtual Server 源于 LVS (Linux Virtual Server) , LVS 的意思就是把 多个 Linux 服务器 联合起来构成一个 虚拟的服务器 , 也就是 集群 。

那么这里的 Grid 是 怎么回事 呢 ?

集群 可以 算是 中心化 的 方式 。 中心化的方式始终存在一个问题 , 就是 “瓶颈”  。

瓶颈 包含 2 层 含义 , 一是 性能 , 二是 故障转移 。

性能瓶颈 好理解, 故障转移瓶颈 又是什么呢 ? 故障转移瓶颈 是指 中心化 的 资源 最终会有一个 “出入口” , 比如 负载均衡 架构 里的 交换机 , 又比如 数据库集群 里的 共享存储 。 如果 交换机 坏了 , 或者 共享存储 坏了 , 那么 中心化 的 可用性 就 坏了 。

通常解决这个问题的方法是 扩展增强硬件能力 , 也就是说 , “出入口” 是一个 超级硬件 。 但无论这个硬件如何强大 , 始终是一个 “脖子”(neck) 。

所以 , 如果反过来 , 由 客户端 自己决定连接哪个 服务器节点 , 那 “脖子” 的问题就迎刃而解了 。

客户端 一开始会连接到一个已知的 服务器节点 , 从这个服务器节点可以获取 其它的服务器节点列表 , 从 其它的 服务器节点 又可以获取更多的 服务器节点列表 , 客户端可以保存这些 服务器节点列表 , 然后选择一个 服务器节点 连接 。

这也许是 网格计算(Grid)的 开始 。  ^ ^

网格计算 不是 “去中心化” , 而是 “多中心化” 和 “客户端智能化” 。

所以 , Grid Virtual Server 的 意思, 就是用 上述的 Grid 的方式, 来构建一个 “Virtual Server” 。

要实现 Grid , 需要一个 Grid 协议 。 Grid 协议 , 可以看作是 Tcp 之上的一个轻薄的 应用层协议 。

Grid 协议可以嵌入到现有的各种应用层协议中 。 比如 可以嵌入到 Http 中 。 比如 , 可以给 Http Request 加一个 Header “Grid : ” , 表示 客户端 支持 Grid , 同时 Http Response 中可以加一个 Header “Grid-Server-List : ” , 用于返回 服务器节点列表 。 客户端 根据 服务器节点列表 来选择 访问 哪个节点 。

“多中心化” 当然会带来一些问题需要解决 。 比如 数据如何多中心化 ?  数据的 分区 水平扩展 并行计算 本来就是一个不容易的事 。 如果用 最终一致 来替代 强一致 , 可能事情就比较简单 。 未来 , 乐观 松耦合 是一个 好的方向 。 就像 乐观锁定 和 悲观锁定 。

并行计算 和 网格计算 是 未来 大计算能力 的 基石 。

并行计算 大计算能力 是 未来 白盒人工智能 的 基石 。

Grid Virtual Server 和 网格计算的更多相关文章

  1. 我发起了一个 网格计算 协议 开源项目 GridP

    GridP  是   Grid Protocol   的 全称  . 我在 <关于软件产业的两个契机>  https://www.cnblogs.com/KSongKing/p/95319 ...

  2. LVS (Linux Virtual Server) 负载均衡

    [大型网站技术实践]初级篇:借助LVS+Keepalived实现负载均衡   一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服 ...

  3. LVS : Linux Virtual Server 负载均衡,集群,高并发,robust

    1 LVS : Linux Virtual Server http://www.linuxvirtualserver.org/ http://www.linuxvirtualserver.org/zh ...

  4. LVS (Linux Virtual Server) - 负载均衡集群 - keepalived

    今天稍微了解了LVS 的原理和使用,在网络上找到不少好文章,稍微加以处理并在这里备份: 原理介绍:Linux Virtual Server 关于:http://www.linuxvirtualserv ...

  5. LVS(Linus Virtual Server):三种负载均衡方式比较+另三种负载均衡方式

    还有个姊妹篇也可以参考这个文章:六大Web负载均衡原理与实现 什么是LVS (Linux Virtual Server)?   首先简单介绍一下LVS (Linux Virtual Server)到底 ...

  6. LVS(Linux Virtual Server)

        LVS的英文全称是Linux Virtual Server,即Linux虚拟服务器.它是我国的章文嵩博士的一个开源项目.在linux内存2.6中,它已经成为内核的一部分,在此之前的内核版本则需 ...

  7. [.NET网格计算框架] Alchemi

      Alchemi [.NET网格计算框架] 是 一个以使用简易为目的的Windows下的网格计算框架.它提供了:a)开发网格软件的编程环境 和 b)建造网格和运行网格软件的运行机制.       A ...

  8. 服务器负载均衡lvs(Linux Virtual Server)

    服务器负载均衡lvs(Linux Virtual Server) 一.总结 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统. 三.Linu ...

  9. [译]为任意网格计算tangent空间的基向量

    +BIT祝威+悄悄在此留下版了个权的信息说: [译]为任意网格计算tangent空间的基向量 Computing Tangent Space Basis Vectors for an Arbitrar ...

随机推荐

  1. Android开发---如何操作资源目录中的资源文件4 ---访问xml的配置资源文件的内容

    Android开发---如何操作资源目录中的资源文件4 XML,位于res/xml/,这些静态的XML文件用于保存程序的数据和结构. XmlPullParser可以用于解释xml文件 效果图: 描述: ...

  2. HTML 表单中的验证

    凡要验证格式的元素均需绑定datatype属性,datatype可选值内置有10类,用来指定不同的验证格式. 如果还不能满足您的验证需求,可以传入自定义datatype,自定义datatype是一个非 ...

  3. oracle sequence

    代码块 方法一: (1)删除序列; (2)重新创建: 这个方法比较简单粗暴. drop sequence sequence_name; create sequence sequence_name mi ...

  4. 2019-04-04-day026-模块和包的导入

    课前 估分 重新做题 思考为什么 积累问题 提前了解你的情况 40分以下 选课系统 按照反射那个版本 把反射的逻辑看明白 接着把逻辑填完整 用上pickle logging写日志 进阶 : 用软件开发 ...

  5. idea本地安装 lombok插件

    转:https://blog.csdn.net/weixin_41404773/article/details/80689639 idea本地安装 lombok插件 项目中经常使用bean,entit ...

  6. Python 时间

    import time # 时间戳: 从1970-01-01 00:00:00开始计算. 未来存储的时候用是时间戳 print(time.time()) # 格式化时间 print(time.strf ...

  7. PAT 乙级1003. 我要通过!(20)

    “答案正确”是自动判题系统给出的最令人欢喜的回复.本题属于PAT的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”. 得到“答案正确”的条件是: 1 ...

  8. Web服务器使用基于纯文本表单的身份验证——.net(未完待续)

    asp.net 表单验证方式 Asp.net的身份验证有有三种,分别是"Windows | Forms| Passport",其中又以Forms验证用的最多,也最灵活. 根据实际需 ...

  9. python 模块基础 和常用的模块

    模块的定义 一个模块就是以.py结尾的python 文件,用来从逻辑上组织python代码.注意,模块名和变量名一样开头不能用数字,可以是双下划线和字母. 为什么要用模块? 将一些复杂的需要重复使用的 ...

  10. Python学习笔记第十周

    目录: 一.基础概念 1.多进程 2.进程间通信 3.进程锁 4.进程池 5.协程 a) greenlet b) Gevent 6.论事件驱动与异步IO 7.IO多路复用 8.Python Selec ...