Amazon云计算AWS之简单队列服务SQS - 新闻中心 - 福州哈唐网络-福建IDC企业!专注云主机及服务器租用托管13年!

新闻中心

首页 > 新闻中心 > 行业新闻 >

Amazon云计算AWS之简单队列服务SQS

时间:2017-01-19 15:05:21   阅读:

 
  要想构建一个灵活且可扩展的系统,低耦合度是很有必要的。因为只有系统各个组件之间的关联度尽可能低,才可以根据系统需要随时从系统中增加或者删除某些组件。但松散的耦合度也带来了组件之间的通信问题,如何实现安全、高效地通信是设计一个低耦合度的分布式系统所必须考虑的问题。简单队列服务(Simple Queue Service, SQS)是Amazon为了解决其云计算平台之间不同组件的通信而专门设计开发的。
 
SQS基本模型
 
  SQS基本模型非常简单,如图3-18所示。
 
\
 
  从图中不难看出SQS由三个基本部分组成:系统组件 (Component)、队列(Queue)和消息(Message)。系统组件是SQS的服务对象,而SQS则是组件之间沟通的桥梁。组件在这里有双重角色,它既可以是消息的发送者,也可以是消息的接收者。组件、 队列和消息可以形象地比喻为储户、银行和储户账户中的资金。储户随时可以向银行中自己的账户存钱;同时,储户述可以接受别人给他的汇款或给别人汇款;当有需要时,用户可以从银行中取出自己账内中的钱;不需要时,账户中的资金会很安全壤焊存在银行中。SQS也是如此,组件既发送消息也接收消息,不接收时消息会被安全地存放在队列中。
 
两个重要概念
 
  消息和队列是SQS中最重要的两个概念。消息是发送者创建的具有一定格式的文本数据,接收对象可以是一个或多个组件。消息的大小是有限制的,目前Amazon规定每条消息不得超过8KB,但是消息的数量并未做限制。队列是存放消息的容器,类似于S3中的桶,队列的数目也是任意的,创建队列时用户必须给其指定一个在SQS账户内唯一的名称。当需要定位某个队列时采用URL的方式进行访问,URL是系统自动给创建的队列分配的。队列在发送消息时尽最大努力保证“先进先出”;并非绝对地保证先进的数据一定会最先被投递给指定的接收者,这是它和普通的队列最大不同之处。不过SQS允许用户在消息中添加有关的序列数据,对于数据发送顺序要求比较髙的用户可以在发送消息之前向其中加入相关信息。和队列相比,消息涉及的内容更多,需要考虑的问题更复杂,下面就消息的内容进行分析。
 


闽公网安备 35010002000114号