写点什么

云提供商如何为套接字提供支持

  • 2013-09-15
  • 本文字数:1900 字

    阅读完需:约 6 分钟

nControl 公司的负责人 Steven C. Markey撰文探讨了托管基础架构的云提供商在启用套接字连接时必须掌握的知识、可供使用的套接字类型(TCP、HTTP 等),套接字断开连接的原因、套接字技术的内部工作原理和使用任何这些选项的优缺点。

Markey 指出,传统的客户端和服务器端软件技术使用一种称为套接字的软件解决方案来建立连接。随着行业从静态的胖客户端发展成为移动的瘦客户端,套接字的使用并未发生改变。但是多年来,套接字已经改变了其形态,变得更加复杂。结果,这项技术变得很难理解,更别提全面理解套接字在企业中的使用方式,或它们如何与移动和云技术结合使用。

关于套接字的优缺点,Markey 认为:

选择的套接字类型可能对服务质量 (QoS) 带来正面或负面的影响,因为套接字会维护来自客户端和服务器端的状态。因此,许多套接字会帮助维护应用程序的事务完整性。但是,在与 KPI 加密结合使用时,套接字也会维护事务的机密性和完整性。

加密可帮助组织保护数据,但它也会增加开销,可能通过 QoS 对用户体验带来负面影响。套接字也可能难以开发或配置;因此,组织的开发人员必须拥有增强的技能集。最后,不同的技术规定了您可以使用哪些套接字,所以在特定平台上使用套接字的需求可能会限制您的选择。

使用套接字既有优点也有缺点,每种套接字类型都有特定的优势和不足。基于 Internet 的套接字 API 捆绑在大多数流行的应用服务器堆栈中,但这些类型的套接字带来了有限的安全性和事务完整性。基于会话的套接字 API 带来了安全性和增强的事务完整性,而且可以包含在大部分应用服务器中。但是,它们需要消耗大量资源,因此可能影响 QoS。原始套接字具有通用性,但使用它的代价是更高的复杂性和更低的安全性。最后,基于域的套接字 API 引入了针对 UNIX 环境的可扩展性,但它们仅适用于某些平台,因此服务提供商和 API 开发人员提供的支持可能最少。

对于云提供商如何为套接字提供支持,Markey 认为云计算正在重新定义旧的应用程序服务提供商 (ASP) 模型。但是,真正的云产品还具有来自 ASP 的更多特征,比如资源池、按需利用、多租户和快速恢复。云服务提供商基于不同的云服务和部署模型来提供服务。

云服务模型是一些方法,组织可基于业务需求来使用云,比如基础架构即服务 (IaaS)、平台即服务 (PaaS) 或软件即服务 (SaaS)。IaaS 为云消费者带来了最高的灵活性,SaaS 带来的灵活性最低。但是,除了最高的灵活性,IaaS 还给云消费者带来了管理和监视环境的需求。所以 IaaS 消费者需要从操作系统层开始构建(虚拟)服务器。对于 PaaS,消费者需要构建数据库、应用程序和业务规则,然后加载数据。对于 SaaS,消费者只需将数据加载到预先构建的应用程序中即可。

云部署模型包括公共云、私有云、混合云和社区云。公共云模型的一个示例是 Google App Engine,其中的应用程序和数据存储在 Google 的一个数据中心中。在此模型中,消费者实际上在 Google 的 “高层” 建筑中占有一席之地。大多数大型组织在内部将该云用作私有云。私有云的一个示例是在自己的数据中心内使用云特征(比如资源池、按需使用、多租户或快速恢复)来处理信息的组织。组织还可以在提供商的场所提供一个私有云。这方面的示例包括 Terremark 的客户以及使用 Amazon Virtual Private Cloud (Amazon VPC) 的组织。混合消费者的示例包括 Pfizer 等制药公司,该公司使用私有云来存储其研究和开发数据,(通过 SSL/TLS)将数据安全地发送给公共云,供用户计算使用,然后将数据发送回私有云。实际上,混合模型利用了公共和私有领域的优势。社区云在很大程度上利用了资源池,这方面的一个示例是:某个学区内的许多学校共享服务器资源来处理信息。

基于所选的云服务和部署模型,云消费者可以使用不同的套接字类型。一般而言,基于 Internet 和流的套接字受到所有著名提供商(Amazon Web Services、Rackspace、Windows Azure™ 和 Google App Engine)以及 PaaS 和 IaaS 产品的支持。SaaS 解决方案的消费者无需为直接使用套接字感到担心,但他们可能需要让第三方通过套接字与基于 SaaS 的提供商进行交互。不过,提供商没有为原始套接字提供有组织的支持,但在理论上,通过使用和配置 IaaS 环境,组织可以接受和处理原始套接字。最后,一些企业找到了一种将大型机环境转移到虚拟化或私有云平台的业务案例;因此,虚拟化和私有云技术提供商(比如 OpenStack、Xen、Microsoft 和 VMware)没有明确提及它们对基于域的套接字的支持。但是,随着私有云技术得到更广泛的应用,这种情形可能发生改变。

今年 11 月初即将举行的 QCon 上海 2013 大会特别组织了“云计算架构与案例”专题,几位讲师会奉献多场精彩的演讲,欢迎感兴趣的读者报名参会。

2013-09-15 10:121538
用户头像

发布了 501 篇内容, 共 285.0 次阅读, 收获喜欢 64 次。

关注

评论

发布
暂无评论
发现更多内容

极客大学架构师训练营 框架开发 第三次作业

John(易筋)

极客时间 设计模式 极客大学 极客大学架构师训练营 框架开发

第三周作业

晨光

Zookeeper的数据剖析

tunsuy

zookeeper 日志分析 事务 快照 数据恢复

组合设计模式编码&手写单例模式

吴建中

极客大学架构师训练营

第三周手写单例模式(饿汉模式)

吴建中

极客大学架构师训练营

架构师训练营第四周

Melo

产品失败了,产品经理要不要承担责任?

涛哥 数字产品和业务架构

产品经理

区块链改变数字营销与广告市场

CECBC

区块链技术 广告业 精准投放 去中介 公开透明

Zookeeper通信协议详解

tunsuy

zookeeper TCP/IP 通信协议

第三周-设计模式-学习总结

吴建中

极客大学架构师训练营

极客大学架构师训练营 系统架构 第7课 听课总结

John(易筋)

极客时间 系统架构 高并发 极客大学 极客大学架构师训练营

一个汉字占几个字节你真的记住了吗?

Java旅途

架构师训练营第三周作业和小记

tuuezzy

架构师 极客大学架构师训练营

手写单例模式

yupi

太赞了!一份适合程序员的精选面试题清单。

JackTian

GitHub 开源 编程 程序员 面试

良心推荐 | LeetCode(力扣),算法、数据结构的学习良伴

YoungZY

算法

rodert单排学习redis进阶【白银一】

JavaPub

Java nosql redis

组合模式应用

yupi

让你眼前一亮的 10 大 TS 项目

阿宝哥

Java typescript 开源 大前端 Web

面向对象设计模式课程小结

梅子黄时雨

极客大学架构师训练营

极客大学架构师训练营 框架开发 模式与重构 JUnit、Spring、Hive核心源码解析 第6课

John(易筋)

spring 极客时间 极客大学 极客大学架构师训练营 JUnit

windows使用docker运行mysql等工具(一)windows安装docker

Java旅途

MySQL Docker

第三周总结

晨光

Oracle SQL调优系列之看懂执行计划explain

Nicky.Ma

sql

windows使用docker运行mysql等工具(二)安装运行mysql

Java旅途

MySQL Docker

架构师训练营 第三周 学习总结

RZC

架构师是怎样炼成的-3-2-设计模式

闷骚程序员

Zookeeper集群模式启动

tunsuy

zookeeper 源码分析 socket 分布式集群

【非原创】微服务设计

Axe

[架构师训练营] Week01 -学习总结

谭方敏

架构师训练营 第三周 命题作业

RZC

云提供商如何为套接字提供支持_DevOps & 平台工程_崔康_InfoQ精选文章