写点什么

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

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

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

关注

评论

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

ModStartBlog v6.7.0 后台管理优化,页面宽度调整

ModStart

2023-02-19:请用go语言调用ffmepg,输出视频文件信息。

福大大架构师每日一题

golang ffmpeg 福大大

吃透阿里2023版Java性能优化小册后,我让公司系统性能提升了200%

程序员小毕

数据库 程序员 JVM 架构师 Java性能优化

Prompt Learning: ChatGPT也在用的NLP新范式

Baihai IDP

人工智能 自然语言处理 nlp ChatGPT 企业号 2 月 PK 榜

在统信UOS上二进制安装GreatSQL

GreatSQL

MySQL UOS 统信 greatsql greatsql社区

搞懂Druid之连接创建和销毁

小小怪下士

Java 程序员 后端 Druid

CnosDB成为首个产品支持SQLancer的云原生时序数据库

CnosDB

时序数据库 开源社区 CnosDB 工程师有话说

快速制作一个chrome插件

JYeontu

chrome Vue chrome扩展 Chrome插件

FL Studio最新发布21中文正式版本下载

茶色酒

FL Studio 21

面试官:限流算法有哪些?

王磊

java面试

前端标准化之旅

京东科技开发者

前端 代码规范 京东云 京东技术

开学季,5门优选好课助你在新学期狂飙!

博文视点Broadview

会声会影2023官方正式版本功能介绍

茶色酒

会声会影2023

Python设置显示屏分辨率

Python 分辨率

瓴羊Quick BI为企业决策者提供可视化分析服务

小偏执o

「 Java基础-链式调用 」Java开发中如何让你的代码看起来更优雅?试试链式调用?

小刘学编程

Java 设计模式 建造者模式

统一观测丨使用 Prometheus 监控云原生网关,我们该关注哪些指标?

阿里巴巴云原生

阿里云 云原生 Prometheus 云原生网关

责任链和策略设计模式-基于Java编程语言

京东科技开发者

Java spring 代码规范 京东云 京东技术

unittest使用parameterized参数化后如何调用添加到测试套件中

Python 单元测试 自动化测试 unittest 测试套件

「读源码」为什么注册路由时没有传入上下文,在接口方法中却能取到?

王中阳Go

Go golang 高效工作 学习方法 程序员

瓴羊Quick BI即席分析工具:创设数据分析捷径

巷子

擅用瓴羊Quick BI报表分析工具,数据分析事半功倍

夏日星河

信源分类及数学模型

timerring

信息 信息论 信息论与编码

对比开源丨Prometheus 服务多场景存储压测全解析

阿里巴巴云原生

阿里云 开源 云原生 Prometheus

ChatGPT入门案例|商务智能对话客服(三)| 社区征文

TiAmo

openai ChatGPT

迷恋管理是一种病

虎妞先生

Percona 8.0.30中show engine innodb status导致coredump排查及分析

GreatSQL

MySQL MySQL 高可用 :MySQL 数据库 greatsql greatsql社区

文盘Rust -- 本地库引发的依赖冲突

京东科技开发者

后端 Clickhouse 本地计算 rust语言 企业号 2 月 PK 榜

产品团队业务思维的重要性

Bruce Talk

敏捷 Agile

在线头脑风暴软件Mural及其竞品分析

hongfei

思维导图 工具软件 头脑风暴

vivo版本发布平台:带宽智能调控优化实践-平台产品系列03

vivo互联网技术

版本发布 CDN带宽

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