写点什么

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

  • 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:121480
用户头像

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

关注

评论

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

架构实战营 - 模块 2- 作业

笑春风

平行世界有尽头:白洞的数字孪生之旅

脑极体

架构实战营 模块二作业

netspecial

架构实战营

【架构实战营】第 2模块作业

swordman

架构实战营

业务架构训练营第 0 期模块二作业

菠萝吹雪—Code

架构实战营

百度、小红书三面,均遇“赛马”问题

执鸢者

面试 大前端

我是如何从零开始学Python:(2)如何解决安装和检查Python版本遇到的问题?

广之巅

Python 4月日更

微服务网关:Nacos源码实践(二)

程序员架构进阶

源码分析 nacos 服务治理 28天写作 4月日更

【案例】星环科技助力郑州商品交易所搭建AI预测模型,提升智能决策水平

星环科技

架构训练营 模块二作业

薛定谔的指南针

架构实战营

架构实战营模块2作业

白发青年

架构实战营

激发Linux+K8S小宇宙!SUSECON硬核上线

Rancher

数字货币——来看党媒怎么说

CECBC

在JavaScript中使用对象来优化if/else和switch

devpoint

JavaScript 对象 Switch

架构实践二

颜培攀

架构实战营

聪明人的训练(十八)

Changing Lin

4月日更

架构训练营模块二作业

Geek_e0c25c

架构训练营

朋友圈复杂度分析

鲲哥

带团队:只有人的行为才能影响行为

石云升

团队建设 28天写作 职场经验 管理经验 4月日更

架构实战营 模块二 如何抓住架构设计的关键点

9527

架构实战营 模块二作业

ercjul

架构实战营

朋友圈高性能分析

^_^vincent

Linux tail 命令

一个大红包

4月日更

国内首个全院级医疗区块链基础设施成功部署应用

CECBC

区块链

数字经济需发展隐私计算下的数据共享

CECBC

数字经济

微信朋友圈高性能架构复杂度分析

Hesher

微信 架构 高性能 微信朋友圈 架构实战营

【LeetCode】删除有序数组中的重复项Java题解

Albert

算法 LeetCode 4月日更

有阳光的地方就会有影子

小天同学

公平 个人感悟 社会百态 4月日更

平行世界有尽头:白洞的数字孪生之旅

白洞计划

百分点认知智能实验室李生教授:人工智能正在由感知走向认知

百分点认知智能实验室

微信朋友圈架构设计

俞嘉彬

#架构实战营

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