Amazon 단순 대기열 서비스
Amazon Simple Queue Service![]() | |
개발자 | 아마존 닷컴. |
---|---|
면허증. | 독자적인 소프트웨어 |
웹 사이트 | aws |
Amazon Simple Queue Service(Amazon SQS)는 Amazon.com에서 2004년 말에 베타 버전으로 도입된 분산형 메시지 큐잉 서비스입니다.일반적으로 2006년 [1][2]중반에 이용할 수 있습니다.인터넷을 통한 통신 방법으로 웹 서비스 애플리케이션을 통한 메시지 프로그래밍 전송을 지원합니다.SQS는 일반적인 생산자-소비자 문제 또는 생산자와 소비자 간의 연결에서 발생하는 문제를 해결하는 확장성이 뛰어난 호스트 메시지 큐를 제공하기 위한 것입니다.
Amazon SQS는 메시징 서비스의 상품화라고 할 수 있습니다.메시징 서비스 기술의 잘 알려진 예로는 IBM WebSphere MQ 및 Microsoft Message Queuing이 있습니다.이러한 테크놀로지와는 달리 사용자는 자신의 서버를 관리할 필요가 없습니다.아마존은 그들을 위해 그것을 하고 SQS 서비스를 이용률별로 판매한다.
API
Amazon은 Java, Ruby, Python 등 여러 프로그래밍 언어로 SDK를 제공합니다.NET, PHP, Go 및 JavaScript.Amazon SQS용 Java Message Service(JMS) 1.1 클라이언트는 2014년 12월에 출시되었습니다.
인증
Amazon SQS는 데이터를 안전하게 처리할 수 있도록 인증 절차를 제공합니다.Amazon은 이를 위해 AWS(Amazon Web Services) ID를 사용합니다. 따라서 사용자는 Amazon.com에 AWS를 사용하도록 설정된 계정을 가지고 있어야 합니다.AWS는 AWS 지원 계정에 관련 식별자 쌍(AWS 액세스 키)을 할당하여 식별을 수행합니다.첫 번째 식별자는 공용 20자 액세스 키입니다.이 키는 AWS 서비스 요청에 포함되어 사용자를 식별합니다.사용자가 WS-Security에서 SOAP(프로토콜)를 사용하지 않는 경우 디지털시그니처는 시크릿액세스 키를 사용하여 계산됩니다.비밀 액세스 키는 40자의 개인 식별자입니다.AWS는 서비스 요청에 제공된 액세스 키 ID를 사용하여 계정의 비밀 액세스 키를 검색합니다.그런 다음 Amazon.com은 키를 사용하여 디지털 서명을 계산합니다.일치할 경우 사용자는 인증된 것으로 간주되며 일치하지 않을 경우 인증은 실패하고 요청은 처리되지 않습니다.
메시지 전달
Amazon SQS는 최소 한 번 이상의 전송을 보장합니다.메시지는 용장성과 가용성을 확보하기 위해 여러 서버에 저장됩니다.서버를 사용할 수 없을 때 메시지가 배달될 경우 해당 서버의 대기열에서 제거되지 않고 재발송될 수 있습니다.2007년 현재[update] Amazon SQS는 수신자가 보낸 순서대로 메시지를 받는다는 보장을 하지 않습니다.메시지 순서가 중요한 경우 배달 후 순서를 변경할 수 있도록 응용 프로그램이 메시지 내에 시퀀스 정보를 배치해야 합니다.
메시지는 어떤 유형이든 사용할 수 있으며 포함된 데이터는 제한되지 않습니다.메시지 본문의 크기는 처음에는 8KB로 제한되었지만, 나중에 2010-07-01년에[3] 64KB로, 2013-06-18년에 [4]256KB로 증가했습니다.대용량 메시지의 경우 사용자는 이 제한을 회피하기 위한 몇 가지 옵션을 사용할 수 있습니다.큰 메시지를 여러 세그먼트로 분할하여 개별적으로 전송하거나, SQS 메시지로 전송되는 데이터에 대한 포인터만으로 Amazon Simple Storage Service(Amazon S3) 또는 Amazon DynamoDB를 사용하여 메시지 데이터를 저장할 수 있습니다.Amazon은 이 목적을 [5]위해 확장 클라이언트 라이브러리를 제공했습니다.
이 서비스는 큐와 메시지트래픽을 무제한으로 지원합니다.
메시지 삭제
SQS는 메시지가 발송되면 자동으로 삭제되지 않습니다.메시지가 배달되면 해당 배달에 대한 확인 핸들이 생성되어 수신인에게 전송됩니다.이러한 영수증은 메시지와 함께 발송되지 않고 메시지와 함께 발송됩니다.메시지를 삭제하려면 수신인이 영수증을 제공해야 합니다.이 기능은 메시지 삭제에 필요한 메시지 ID만 있는 2008년 시점에서 새롭게 도입되었습니다.시스템이 분산되어 있기 때문에 메시지가 여러 번 전송될 수 있습니다.이 경우 메시지를 삭제하려면 최신 수신 확인 핸들이 필요합니다.또한 영수증 핸들에는 다른 유효성 제약 조건이 있을 수 있습니다. 예를 들어 영수증 핸들은 가시성 타임아웃 동안에만 유효할 수 있습니다(아래 참조).
메시지가 전달되면 다른 구성 요소가 메시지를 소비하지 못하도록 가시성 시간 초과가 발생합니다.가시성 타임아웃의 "클럭"은 메시지가 전송되면 시작됩니다.기본 시간은 30초입니다.이 시간 동안 큐에 메시지를 삭제하라는 메시지가 표시되지 않으면 메시지가 다시 표시되며 표시됩니다.
각 큐는 기본 4일로 설정된 보존 파라미터로도 구성됩니다.큐에 장기간 존재하는 메시지는 자동으로 삭제됩니다.보존은 사용자가 1분에서 최대 14일까지 변경할 수 있습니다.메시지가 이미 큐에 있는 동안 보존이 변경되면 새 보존보다 오랫동안 큐에 있었던 모든 메시지가 삭제됩니다.
주목할 만한 사용법
드롭박스, 넷플릭스[6], 넥스트도어[7] 등이 SQS를 광범위하게 사용하는 기업들이다.SQS는 Amazon.com에서도 널리 사용되고 있습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "Amazon Simple Queue Service Released". Amazon Web Services. 2006-07-13. Retrieved 2021-10-29.
- ^ Barr, Jeff (2014-08-19). "My First 12 Years at Amazon.com". jeff-barr.com. Retrieved 2021-01-11.
- ^ "Amazon SQS introduces Free Tier and adds Support for Larger Messages and Longer Retention". aws.amazon.com. 2010-07-01. Retrieved 2021-01-11.
- ^ "Amazon SQS and SNS Announce 256KB Large Payloads". aws.amazon.com. 2013-06-18. Retrieved 2021-01-11.
- ^ GitHub에서 Amazon S3를 통해 최대 2GB의 메시지를 주고받을 수 있는 Amazon SQS 클라이언트로의 확장입니다.
- ^ Granqvist, Hans (2011-04-18). ""More Like This…" Building a network of similarity". Netflix Tech Blog. Archived from the original on 2016-11-28.
- ^ Fang, Wenbin (August 13, 2014). "Nextdoor Taskworker: Simple, Efficient & Scalable". Nextdoor Engineering.