- Ürünler›
- Uygulama Entegrasyonu›
- Amazon SQS›
- Amazon SQS Hakkında SSS
Amazon SQS Hakkında SSS
Genel Bakış
Amazon SQS’nin yerleşik veya paketlenmiş mesaj kuyruğa alma sistemlerine göre avantajları nelerdir?
Amazon SQS, ileti kuyruklarını yönetmek için kendi yazılımınızı derlemeye veya geliştirme ve yapılandırma için önemli hazırlık süresi gerektiren ücretli ya da açık kaynaklı ileti kuyruğa alma sistemlerini kullanmaya göre çok sayıda avantaj sağlar.
Bu alternatifler, sürekli donanım bakımı ve sistem yönetim kaynakları gerektirir. Bu sistemleri yapılandırma ve yönetmenin karmaşıklığı, donanımın arıza yapması durumunda iletilerin kaybedilmemesini sağlayan yedek ileti deposu gereksinimi ile birleşir.
Buna karşılık, Amazon SQS idari bir yük gerektirmez ve çok az yapılandırma içerir. Amazon SQS, çok büyük ölçekte çalışır ve bir günde milyarlarca mesajı işler. Herhangi bir yapılandırma olmadan Amazon SQS’ye gönderdiğiniz trafik miktarının ölçeğini artırıp azaltabilirsiniz. Amazon SQS ayrıca son derece yüksek ileti dayanıklılığı sağlayarak size ve paydaşlarınıza daha fazla güven verir.
Amazon SQS ile Amazon Basit Bildirim Hizmeti (SNS) arasındaki fark nedir?
Amazon SNS, uygulamaların zamana bağlı iletileri bir “anında iletme” mekanizması yoluyla birden fazla aboneye göndermesine olanak tanır ve güncellemeleri düzenli aralıklarla denetleme veya “yoklama” gereksinimini ortadan kaldırır. Amazon SQS, iletileri bir yoklama modeli aracılığıyla alıp vermek üzere dağıtılmış uygulamalar tarafından kullanılan bir ileti kuyruğa alma hizmetidir. Gönderme ve alma bileşenlerini ayrıştırmak için kullanılabilir.
Amazon SQS’nin Amazon MQ’dan farkı nedir?
Mevcut uygulamalarla mesajlaşma kullanıyorsanız ve mesajlarınızı hızlı ve kolay bir şekilde buluta taşımak istiyorsanız Amazon MQ kullanmanız önerilir. Sektör standardı API’leri ve protokolleri destekler, bu nedenle uygulamalarınızda mesajlaşma kodunu yeniden yazmadan standartlara dayalı herhangi bir ileti aracısından Amazon MQ ürününe geçiş yapabilirsiniz. Bulutta yepyeni uygulamalar oluşturuyorsanız, Amazon SQS ve Amazon SNS kullanmayı düşünmeniz önerilir. Amazon SQS ve SNS, neredeyse sonsuz düzeyde ölçeklenebilen ve basit, kullanımı kolay API’ler sağlayan basit ve tam olarak yönetilen ileti kuyruğu ve konu başlığı hizmetleridir.
Amazon SQS, mesaj sıralaması yapabilir mi?
Evet. FIFO (ilk giren ilk çıkar) kuyrukları, iletilerin gönderilip alındığı tam sırayı korur. Bir FIFO kuyruğu kullanıyorsanız, iletilerinize sıralama bilgilerini eklemeniz gerekmez. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki FIFO Kuyruk Mantığı bölümüne bakın.
Standart kuyruklar, iletilerin sırasını korumayı deneyen bir gevşek FIFO özelliği sağlar. Ancak, standart kuyrukların yüksek oranda dağıtılmış bir mimari kullanılarak büyük oranda ölçeklenebilir olması tasarlandığı için, iletilerin tam olarak gönderildikleri sırayla alınması garanti edilmez.
Amazon SQS, mesajların teslim edilmesini garanti eder mi?
Standart kuyruklar en az bir kez teslim sağlar, yani her ileti en az bir kez teslim edilir.
FIFO kuyrukları tam bir kez işleme sağlar, yani her mesaj bir kez teslim edilir ve bir tüketici tarafından işlenmesine ve silinmesine kadar kullanılabilir olur. Yinelenen iletiler kuyruğa eklenmez.
Amazon SQS'nin Amazon Kinesis Akışları'ndan farkı nedir?
Amazon SQS uygulamalar veya mikro hizmetler arasında aktarılmakta olan iletilerin depolanması için güvenilir, yüksek oranda ölçeklenebilir, barındırılan bir kuyruk sunar. Dağıtılmış uygulama bileşenleri arasında verileri taşır ve bu bileşenleri ayrıştırmanıza yardımcı olur. Amazon SQS, teslim edilemeyen iletiler kuyruğu ve zehirli ileti yönetimi gibi genel ara yazılım yapıları sağlar. Ayrıca genel bir web hizmetleri API’si sağlar ve AWS SDK’sının desteklediği herhangi bir programlama dili tarafından erişilebilir. Amazon SQS hem standart hem de FIFO kuyruklarını destekler.
Amazon Kinesis Streams, akış büyük verilerinin gerçek zamanlı işlenmesine olanak tanır ve birden fazla Amazon Kinesis Uygulamalarına kayıtları okuma ve yeniden oynatma imkanı sağlar. Amazon Kinesis Client Library (KCL) belirli bir bölüm anahtarının tüm kayıtlarını aynı kayıt işlemcisine teslim eder, aynı Amazon Kinesis akışından okunan birden fazla uygulama derlemeyi kolaylaştırır (örneğin, sayma, toplama ve filtreleme).
Daha fazla bilgi için Amazon Kinesis Belgeleri’ne bakın.
Amazon, Amazon SQS’yi kendi uygulamaları için kullanıyor mu?
Evet. Amazon'daki geliştiriciler, Amazon SQS'yi her gün çok sayıda iletiyi işleyen çeşitli uygulamalar için kullanmaktadır. Hem Amazon.com hem de AWS'deki temel iş süreçleri Amazon SQS'yi kullanmaktadır.
Faturalandırma
Amazon SQS'nin maliyeti ne kadardır?
Yalnızca kullandığınız kadar ödersiniz ve minimum ücret yoktur.
Amazon SQS'nin maliyeti talep başına hesaplanır ve Amazon SQS'nin dışına aktarılan veriler için veri aktarım ücretlerini içerir [veriler aynı bölge içindeki Amazon Elastic Compute Cloud (EC2) bulut sunucularına veya AWS Lambda işlevlerine aktarılmadığı sürece]. Kuyruk türüne ve bölgeye göre ayrıntılı fiyatlandırma dökümleri için Amazon SQS Fiyatlandırması bölümüne bakın.
Amazon SQS Ücretsiz Kullanım ile neler yapabilirim?
Amazon SQS Ücretsiz Kullanım, her ay ücretsiz olarak 1 milyon istek sunar.
Çok sayıda küçük ölçekli uygulama, tamamen Ücretsiz Kullanım sınırları dâhilinde çalışabilmektedir. Ancak yine de veri aktarım ücretleri geçerli olabilir. Daha fazla bilgi için Amazon SQS Fiyatlandırması bölümüne bakın.
Ücretsiz Kullanım, aylık bir tekliftir. Ücretsiz kullanım sonraki aya devredilmez.
Tüm Amazon SQS istekleri için ücret ödeyecek miyim?
Evet, ücretsiz kullanımın dışında kalan tüm talepler için. Tüm Amazon SQS talepleri ücretlendirilir ve aynı fiyattan faturalandırılır.
Amazon SQS toplu işlemlerinin maliyeti diğer taleplerden daha yüksek midir?
Hayır. Toplu işlemlerin tamamı (SendMessageBatch, DeleteMessageBatch ve ChangeMessageVisibilityBatch) diğer Amazon SQS talepleri ile aynı maliyete sahiptir. İletileri toplu işler halinde gruplandırarak Amazon SQS maliyetlerinizi azaltabilirsiniz.
Amazon SQS kullanımım için hangi ücretleri öderim ve nasıl faturalandırılırım?
Amazon SQS kullanmaya başlamak için başlangıç ücreti yoktur. Ay sonunda kredi kartınıza ilgili aya ait kullanımın ücreti otomatik olarak yansıtılır.
Geçerli faturalandırma dönemine ait ücretleri dilediğiniz zaman AWS web sitesinden görüntüleyebilirsiniz:
- AWS hesabınızda oturum açın.
- Web Services Hesabınız altında Hesap Etkinliği'ni seçin.
Amazon SQS kuyruklarımla ilişkili maliyetleri nasıl takip edip yönetebilirim?
Maliyet tahsis etiketlerini kullanarak kaynak ve maliyet yönetimi kuyruklarınızı etiketleyip takip edebilirsiniz. Etiket, anahtar-değer çiftinden oluşan bir meta veri etiketidir. Örneğin, kuyruklarınızı maliyet merkezine göre etiketleyebilir ve sonra bu maliyet merkezlerine göre maliyetlerinizi kategorilere ayırıp takip edebilirsiniz.
Daha fazla bilgi için Amazon SQS Yazılım Geliştirme Kılavuzu’ndaki Amazon SQS Kuyruklarınızı Etiketleme bölümüne bakın. AWS kaynaklarının maliyet tahsisi etiketlemesi hakkında daha fazla bilgi için AWS Faturalama ve Maliyet Yönetimi Kullanıcı Kılavuzu’ndaki Maliyet Tahsisi Etiketleri bölümüne bakın.
Fiyatlarınıza vergiler dahil mi?
Aksi belirtilmedikçe fiyatlarımız KDV veya ilgili satış vergisi gibi vergi ve harçları içermez.
Fatura adresi Japonya'da olan müşteriler için herhangi bir bölgede AWS kullanımı Japonya Tüketim Vergisine tabidir. Daha fazla bilgi için Amazon Web Services Tüketim Vergisi ile İlgili SSS bölümüne bakın.
Özellikler, işlevler ve arabirimler
Amazon SQS'yi diğer AWS hizmetleriyle birlikte kullanabilir miyim?
Evet. Amazon SQS'yi Amazon EC2, Amazon Elastic Container Service (ECS) ve AWS Lambda gibi işlem hizmetlerinin yanı sıra Amazon Simple Storage Service (Amazon S3) ve Amazon DynamoDB gibi depolama ve veritabanı hizmetleriyle birlikte kullanarak uygulamalarınızı daha esnek ve ölçeklenebilir hale getirebilirsiniz.
Amazon SQS ile nasıl etkileşimde bulunabilirim?
Amazon SQS kuyrukları oluşturmanıza ve mesajları kolayca göndermenize yardımcı olan AWS Yönetim Konsolu'nu kullanarak Amazon SQS'ye erişebilirsiniz.
Amazon SQS ayrıca bir web hizmetleri API’si sağlar. Ayrıca AWS SDK'leri ile entegredir ve tercih ettiğiniz programlama dilinde çalışmanıza olanak tanır.
Amazon SQS için hangi API eylemleri mevcuttur?
Mesaj kuyruğu işlemleri hakkında bilgi için Amazon SQS API Referansı bölümüne bakın.
Mesaj kuyruğunda kimler işlem gerçekleştirilebilir?
Amazon SQS ileti kuyruğunda yalnızca bir AWS hesap sahibi (ya da hesap sahibinin haklarını devrettiği bir AWS hesabı) işlem gerçekleştirebilir.
Amazon SQS ile birlikte Java Mesaj Hizmeti'ni (JMS) kullanabilir miyim?
Evet. Kendi JMS kümenizi çalıştırma endişesi ve yüksek işletim yükü olmadan Amazon SQS'nin ölçek, düşük maliyet ve yüksek erişilebilirliğinden yararlanabilirsiniz.
Amazon, JMS 1.1 belirtimini uygulayan Amazon SQS Java Messaging Library'yi sunar ve JMS sağlayıcısı olarak Amazon SQS'yi kullanır. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS ile JMS Kullanma bölümüne bakın.
Amazon SQS, mesajları nasıl tanımlar?
Tüm iletiler, ileti bir ileti kuyruğuna teslim edildiğinde Amazon SQS’nin döndürdüğü genel bir benzersiz kimliğe sahiptir. İleti üzerinde başka bir eylem yapmak için kimlik gerekli değildir, ancak ileti kuyruğundaki belirli bir iletinin alınmasını takip etmek için yararlıdır.
İleti kuyruğundan bir ileti aldığınızda, yanıt iletiyi silerken sağlamanız gereken bir alındı belirteci içerir.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Kuyruk ve Mesaj Tanımlayıcıları bölümüne bakın.
Amazon SQS, işlenemeyen mesajları nasıl ele alır?
Amazon SQS'de, diğer kaynak kuyruklarından ileti alan, teslim edilemeyen ileti kuyruklarını yapılandırmak için API'yi veya konsolu kullanabilirsiniz. Teslim edilemeyen ileti kuyruğunu yapılandırırken, teslim edilemeyen ileti kuyruğunun yeniden etkinleştirmesi için uygun izinleri RedriveAllowPolicy'yi kullanarak ayarlamanız gerekir.
RedriveAllowPolicy, teslim edilemeyen ileti kuyruğu yeniden etkinleştirmesi için gerekli olan parametreleri içermektedir. Hangi kaynak kuyruklarının, teslim edilemeyen ileti kuyruklarını JSON nesnesi olarak belirleyebileceğini tanımlar.
Teslim edilemeyen ileti kuyruğu oluşturduğunuzda, tamamlanamayan işleme denemeleri üst sınıra ulaştıktan sonra iletiler alınır. Teslim edilemeyen ileti kuyruklarını, işlenemeyen iletileri daha sonra analiz etmek üzere yalıtmak için kullanabilirsiniz.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS Teslim Edilemeyen İletiler Sıralarını Kullanma bölümüne bakın.
Görünürlük zaman aşımı nedir?
Görünürlük zaman aşımı, Amazon SQS’nin diğer tüketici bileşenlerin bir iletiyi almasını ve işlemesini engellediği süredir. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Görünürlük Zaman Aşımı bölümüne bakın.
Amazon SQS, mesaj meta verilerini destekler mi?
Evet. Bir Amazon SQS iletisi en fazla 10 meta veri özniteliği içerebilir. Bir iletinin gövdesini, onu tanımlayan meta verilerden ayırmak için ileti özniteliklerini kullanabilirsiniz. Uygulamalarınızın bir iletiyi nasıl işleyeceğini anlamadan önce tüm iletiyi incelemesi gerekmediği için, bu öznitelikler bilgilerin daha hızlı ve verimli bir şekilde işlenip depolanmasına yardımcı olur.
Amazon SQS ileti öznitelikleri, ad-tür-değer üçlüleri biçimini alır. Desteklenen türler dize, ikili ve sayıdır (tamsayı, kayan nokta ve çift dahil). Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS Mesaj Özniteliklerini Kullanma bölümüne bakın.
Kuyruktaki süre değerini nasıl belirleyebilirim?
Kuyruktaki süre değerini belirlemek için, bir iletiyi alırken SentTimestamp özniteliğini isteyebilirsiniz. Geçerli saatten bu değerin çıkarılması, kuyruktaki süre değerini verir.
Amazon SQS için tipik gecikme süresi nedir?
SendMessage, ReceiveMessage ve DeleteMessage API istekleri için tipik gecikme süreleri onlarca veya birkaç yüz milisaniyedir.
Anonim erişim için bir mesaja ait SenderId özniteliğinin değeri nedir?
Amazon SQS, AWS hesap kimliği mevcut olmadığında (örneğin, anonim bir kullanıcı ileti gönderdiğinde) IP adresini sağlar.
Amazon SQS uzun yoklaması nedir?
Amazon SQS uzun yoklaması, Amazon SQS kuyruklarınızdan iletileri almanın bir yoludur. Normal kısa yoklama hemen döndürülürken, yoklanan ileti kuyruğu boş olsa bile uzun yoklama ileti kuyruğuna bir ileti ulaşana veya uzun yoklama zaman aşımına uğrayana kadar yanıt döndürmez.
Uzun yoklama, iletileri geldikleri anda Amazon SQS kuyruğunuzdan almayı hesaplı hale getirir. Boş alım sayısını azaltabileceğiniz için uzun yoklamanın kullanılması SQS maliyetini düşürebilir. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS Uzun Yoklaması bölümüne bakın.
Amazon SQS uzun yoklamasını kullanmanın ek maliyeti var mıdır?
Hayır. Uzun yoklamalı ReceiveMessage çağrıları, kısa yoklamalı ReceiveMessage çağrıları ile tam olarak aynı ücretten faturalandırılır.
Amazon SQS uzun yoklamasını ve Amazon SQS kısa yoklamasını ne zaman kullanmalıyım?
Neredeyse tüm durumlarda Amazon SQS uzun yoklaması, kısa yoklamadan daha fazla tercih edilir. Uzun yoklama istekleri kuyruk tüketicilerinizin iletileri kuyruğunuza ulaştıkları anda almasını sağlarken, döndürülen boş ReceiveMessageResponse örneklerinin sayısını azaltır.
Amazon SQS uzun yoklaması, kullanım örneklerinin büyük bölümünde daha az maliyetle daha yüksek performans sağlar. Ancak, uygulamanız bir ReceiveMessage çağrısından anında yanıt bekliyorsa, uygulamanızda bazı değişiklikler yapmadan uzun yoklamadan yararlanamayabilirsiniz.
Örneğin, uygulamanız birden fazla kuyruğu sorgulamak için tek bir ileti dizisi kullanıyorsa, tek ileti dizisi boş kuyruklarda uzun yoklama zaman aşımını bekleyeceği için kısa yoklamadan uzun yoklamaya geçiş yapmak büyük olasılıkla işe yaramaz ve ileti içerebilecek kuyrukların işlenmesini geciktirir.
Böyle bir uygulamada, sadece bir kuyruğu işlemek için, uygulamanın Amazon SQS uzun yoklamasının sağladığı avantajlardan yararlanmasına olanak tanıyan tek bir ileti dizisinin kullanılması iyi bir uygulamadır.
Uzun yoklama zaman aşımım için hangi değeri kullanmalıyım?
Genellikle, uzun yoklama zaman aşımı için en fazla 20 saniye kullanmanız gerekir. Yüksek uzun yoklama zaman aşımı değerleri, döndürülen boş ReceiveMessageResponse örneklerinin sayısını azalttığından, uzun yoklama zaman aşımınızı mümkün olduğunca yüksek bir değere ayarlamayı deneyin.
20 saniyelik maksimum değer uygulamanızda işe yaramazsa (önceki soruda verilen örneğe bakın), 1 saniye kadar kısa bir uzun yoklama zaman aşımı ayarlayın.
Tüm AWS SDK’ları varsayılan olarak 20 saniyelik uzun yoklamalarla çalışır. Amazon SQS’ye erişmek için AWS SDK kullanmıyorsanız veya AWS SDK’yı özellikle daha kısa bir zaman aşımına sahip olacak şekilde yapılandırdıysanız, Amazon SQS istemcinizi daha uzun isteklere izin verecek veya daha kısa bir uzun yoklama zaman aşımı kullanacak şekilde değiştirmeniz gerekebilir.
Java için AmazonSQSBufferedAsyncClient nedir?
Java için AmazonSQSBufferedAsyncClient, AmazonSQSAsyncClient arabiriminin bir uygulamasını sağlar ve birkaç önemli özellik ekler:
- Uygulamada gerekli değişiklikler yapılmadan birden fazla SendMessage, DeleteMessage veya ChangeMessageVisibility isteklerinin otomatik toplu iş haline getirilmesi
- İletilerin alınmasını beklemeden uygulamanızın Amazon SQS’den iletileri anında işlemesine olanak tanıyan bir yerel ara belleğe önceden getirilmesi
Birlikte çalıştığında, otomatik toplu iş oluşturma ve önceden getirme işlemleri aktarım hızını artırır ve uygulamanızın gecikme süresini azaltırken daha az Amazon SQS isteğinde bulunarak maliyetlerinizi düşürür. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki İstemci Tarafı Ara Belleğe Alma ve Talep Toplu İşi Oluşturma bölümüne bakın.
Java için AmazonSQSBufferedAsyncClient'ı nereden indirebilirim?
AmazonSQSBufferedAsyncClient istemcisini Java İçin AWS SDK'nin bir parçası olarak indirebilirsiniz.
Java için AmazonSQSBufferedAsyncClient kullanmak üzere uygulamamı yeniden yazmam gerekiyor mu?
Hayır. Java için AmazonSQSBufferedAsyncClient, mevcut AmazonSQSAsyncClient yerine yedek olarak uygulanır.
Uygulamanızı en son AWS SDK’yı kullanacak şekilde güncelleyip istemcinizi AmazonSQSAsyncClient yerine Java için AmazonSQSBufferedAsyncClient kullanacak şekilde değiştirirseniz, uygulamanız otomatik toplu iş oluşturma ve önceden getirme avantajlarından da yararlanır.
Amazon SNS konularından bildirim almak için Amazon SQS mesaj kuyruklarına nasıl abone olabilirim?
- Amazon SQS konsolunda bir Amazon SQS standart kuyruğu seçin.
- Kuyruk Eylemleri altında açılır listeden SNS Konusu Kuyruğuna Abone Ol’u seçin.
- İletişim kutusunda Bir Konu Seçin açılır listesinden konuyu seçin ve Abone Ol’a tıklayın.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SNS Konusu Kuyruğuna Abone Olma bölümüne bakın.
Mesaj kuyruğunu silmeden mesaj kuyruğundaki tüm mesajları silebilir miyim?
Evet. PurgeQueue eylemini kullanarak bir Amazon SQS ileti kuyruğundaki tüm iletileri silebilirsiniz.
Bir ileti kuyruğunu temizlediğinizde, daha önce ileti kuyruğuna gönderilmiş tüm iletiler silinir. İleti kuyruğunuz ve öznitelikleri silinmezse ileti kuyruğunu yeniden yapılandırmanız gerekmez; ileti kuyruğunu kullanmaya devam edebilirsiniz.
Yalnızca belirli iletileri silmek için DeleteMessage ve DeleteMessageBatch eylemlerini kullanın.
Daha fazla bilgi için şu öğreticiye bakın: Bir Amazon SQS Kuyruğundaki İletileri Silme.
FIFO kuyrukları
FIFO kuyrukları hangi bölgelerde kullanılabilir?
FIFO kuyrukları, Amazon SQS'nin erişilebildiği tüm AWS bölgelerinde kullanılabilir. Amazon SQS bölge erişilebilirliğiyle ilgili ayrıntılı bilgi için buraya göz atın.
Bir mesajın kaç kopyasını alırım?
FIFO kuyrukları, yinelenen iletilere hiçbir zaman izin vermeyecek şekilde tasarlanmıştır. Bununla birlikte, ileti üreticiniz belirli senaryolarda yinelenen iletiler sunabilir. Örneğin, üreticiniz bir ileti gönderip yanıt alamazsa aynı iletiyi yeniden gönderebilir. Amazon SQS API’leri, ileti üreticinizin yinelenen ileti göndermesini engelleyen yinelenenleri kaldırma özelliğini sağlar. İleti üreticisinin gönderdiği tüm yinelenen iletiler, 5 dakikalık bir yinelenenleri kaldırma aralığı içinde kaldırılır.
Standart kuyruklar için ara sıra bir iletinin yinelenen bir kopyasını alabilirsiniz (en az bir kez teslim). Standart bir kuyruk kullanıyorsanız, uygulamalarınızı bir kez etkili olacak (yani, aynı iletiyi birden çok kez işlerken bundan olumsuz etkilenmeyecek) şekilde tasarlamalısınız.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Tam Olarak Bir Kere İşleme bölümüne bakın.
Daha önce kullandığım Amazon SQS kuyrukları FIFO kuyrukları mı oluyor?
Hayır. Amazon SQS standart kuyrukları (mevcut kuyrukların yeni adı) olduğu gibi kalacak ve standart kuyruk oluşturmaya devam edebileceksiniz. En yüksek ölçeklenebilirlik ve performans hala bu kuyruklar tarafından sağlanıyor olsa da sipariş güvenceleri sunulmaz ve yineleme gerçekleşebilir.
Standart kuyruklar, birden çok tek seferlik tüketici ile iş dağıtımı gibi birçok senaryo için uygundur.
Mevcut standart kuyruğumu FIFO kuyruğuna dönüştürebilir miyim?
Hayır. Kuyruk tipini, kuyruğu oluştururken seçmeniz gerekir. Bununla birlikte, bir FIFO kuyruğuna geçmek mümkündür. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Standart Kuyruktan FIFO Kuyruğuna Geçme bölümüne bakın.
Amazon SQS FIFO kuyrukları geriye dönük olarak uyumluluk sağlar mı?
FIFO kuyruğu işlevlerinden yararlanabilmeniz için en son AWS SDK sürümünü kullanmanız gerekir.
FIFO kuyrukları standart kuyruklarla aynı API eylemlerini kullanır ve ileti alıp vermenin yanı sıra iletileri silme ve görünürlük zaman aşımını değiştirme işlemlerinin mekanik yapısı aynıdır. Ne var ki ileti gönderirken bir ileti grubu kimliği belirtmeniz gerekir. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki FIFO Kuyruk Mantığı bölümüne bakın.
Amazon SQS FIFO kuyrukları hangi AWS CloudWatch ölçümlerini destekler?
FIFO kuyrukları standart kuyrukların desteklediği tüm ölçümleri destekler. FIFO kuyrukları için tüm yaklaşık ölçümler doğru sayım değerleri döndürür. Örneğin, aşağıdaki AWS CloudWatch ölçümleri desteklenmektedir:
- ApproximateNumberOfMessagesDelayed – Kuyruktaki geciken ve hemen okunmak üzere erişilemeyen iletilerin sayısı.
- ApproximateNumberOfMessagesVisible – Kuyruktan alınmaya uygun olan iletilerin sayısı.
- ApproximateNumberOfMessagesNotVisible – Aktarılmakta olan iletilerin sayısı (bir istemciye gönderilmiş ancak henüz silinmemiş ya da henüz görünürlük aralığının sonuna ulaşmamış iletiler).
Mesaj grubu nedir?
İletiler bir FIFO kuyruğu içinde birbirinden ayrı, sıralanmış "paketler" halinde gruplandırılır. Her ileti grubu kimliği için tüm iletiler katı bir sıralamayla gönderilip alınır. Bununla birlikte, farklı ileti grubu kimlik değerlerine sahip iletiler sıralamaya uyulmadan gönderilip alınabilir. İletiyi bir ileti grubu kimliğiyle ilişkilendirmeniz gerekir. İleti grubu kimliği sağlamazsanız eylem başarısız olur.
Bir FIFO kuyruğuna birden çok konak (veya aynı konaktaki farklı iş parçacıkları) tarafından aynı ileti grubu kimliğine sahip iletiler gönderilirse Amazon SQS iletileri işlenmek üzere alındıkları sırada teslim eder. İletilerin gönderilip alındığı sıralamanın Amazon SQS tarafından korunmasını sağlamak için birden çok gönderenin her iletiyi benzersiz bir ileti grubu kimliğiyle gönderdiğinden emin olun.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki FIFO Kuyruk Mantığı bölümüne bakın.
Amazon SQS FIFO kuyrukları birden çok üreticiyi destekler mi?
Evet. Bir FIFO kuyruğuna bir veya daha fazla üretici tarafından ileti gönderilebilir. İletiler Amazon SQS tarafından başarıyla alındıkları sıralamaya göre depolanır.
Birden çok üretici SendMessage veya SendMessageBatch eylemlerinden başarılı yanıtını beklemeksizin paralel olarak ileti gönderirse üreticiler arasındaki sıralama korunmayabilir. Birden çok paralel üretici kodunuzun, kuyruktaki iletilerin nihai sıralamasını belirleyebilmesi için SendMessage veya SendMessageBatch eylemlerinin yanıtı, FIFO kuyruklarının iletileri kuyruğa yerleştirirken kullandığı nihai sıralamayı içerir.
Amazon SQS FIFO kuyrukları birden çok tüketiciyi destekler mi?
Amazon SQS FIFO kuyrukları tasarım itibarıyla aynı ileti grubundan tek seferde birden çok tüketiciye ileti sunmaz. Bununla birlikte, FIFO kuyruğunuzda birden çok ileti grubu varsa Amazon SQS'nin farklı ileti gruplarından farklı tüketicilere ileti sunmasına imkan tanıyan paralel tüketiciler özelliğinden yararlanabilirsiniz.
Amazon SQS FIFO kuyruğu için aktarım hızı kotası nedir?
Varsayılan olarak FIFO kuyrukları toplu işleme ile saniyede 3.000’e kadar ya da toplu işleme olmadan saniyede 300’e kadar iletiyi (saniyede 300 gönderme, alma veya silme işlemi) destekler. Daha yüksek aktarım hızına ihtiyacınız varsa Amazon SQS konsolunda FIFO için yüksek aktarım hızı modunu etkinleştirebilirsiniz; bu mod, toplu işleme olmadan saniyede 70.000'e kadar iletiyi ve toplu işleme ile daha da fazlasını destekler. Bölge başına FIFO yüksek aktarım hızı modu kotalarının ayrıntılı dökümü için lütfen AWS Belgelerine bakın.
FIFO kuyruğu özniteliklerine özgü herhangi bir sınır var mıdır?
Bir FIFO kuyruğunun adı .fifo son ekiyle bitmelidir. Son ek, 80 karakterlik kuyruk adı sınırlarının hesaplanmasına dahil edilir. Bir kuyruğun FIFO kuyruğu olup olmadığını anlamak için kuyruk adının bu son ekle bitip bitmediğini kontrol edebilirsiniz.
Güvenlik ve güvenilirlik
Verilerimin Amazon SQS'de depolanması ne kadar güvenilirdir?
Amazon SQS, tüm ileti kuyruklarını ve iletileri birden çok yedekli Erişilebilirlik Alanı (AZ) içeren tek, yüksek erişilebilirlikli bir AWS bölgesinde depoladığından, tek bir bilgisayar, ağ veya AZ hatası iletileri erişilemez hale getiremez. Daha fazla bilgi için Amazon İlişkisel Veri Tabanı Hizmeti Kullanıcı Kılavuzu'ndaki Bölgeler ve Erişilebilirlik Alanları bölümüne bakın.
Mesajı kuyruklarımdaki mesajların güvenliğini nasıl sağlayabilirim?
Kimlik doğrulama mekanizmaları Amazon SQS ileti kuyruklarında depolanan iletilerin yetkisiz erişime karşı korunmasını sağlar. Bir ileti kuyruğuna kimlerin ileti gönderebileceğini ve bir ileti kuyruğundan kimlerin ileti alabileceğini kontrol edebilirsiniz. Ek güvenlik için iletileri bir ileti kuyruğuna yerleştirilmeden şifrelemeye yönelik kendi uygulamanızı oluşturabilirsiniz.
Amazon SQS'nin AWS Kimlik ve Erişim Yönetimi (IAM) politikaları ile aynı dilde yazılmış politikalar kullanan kendi kaynak tabanlı izin sistemi vardır. Örneğin, tıpkı IAM politikalarında olduğu gibi değişkenleri kullanabilirsiniz. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS Politika Örnekleri bölümüne bakın.
Amazon SQS, SSL üzerinden HTTP (HTTPS) ve Aktarım Katmanı Güvenliği (TLS) protokollerini destekler. Çoğu istemci, herhangi bir kod veya yapılandırma değişikliği olmadan TLS’nin daha yeni sürümlerini kullanmak için otomatik olarak pazarlık gerçekleştirebilir. Amazon SQS, tüm bölgelerde Aktarım Katmanı Güvenliği (TLS) protokolünün 1.0, 1.1 ve 1.2 sürümlerini destekler.
Neden ayrı ReceiveMessage ve DeleteMessage işlemleri var?
Amazon SQS size bir ileti döndürdüğünde, ileti sizin iletiyi gerçekten alıp almadığınızdan bağımsız olarak ileti kuyruğunda kalır. İletinin silinmesi sizin sorumluluğunuzdadır ve silme isteği, iletiyi işlemeyi tamamladığınızı onaylar.
İletiyi silmezseniz Amazon SQS başka bir alım isteği aldığında bunu yeniden teslim eder. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Görünürlük Zaman Aşımı bölümüne bakın.
Silinen bir mesaj yeniden alınabilir mi?
Hayır. FIFO kuyrukları, yinelenen iletilere hiçbir zaman izin vermez.
Standart kuyruklarda, nadiren olsa da daha önce silinen bir iletiyi ikinci bir kez alabilirsiniz.
Daha önce silinen bir mesaj için DeleteMessage isteği gönderirsem ne olur?
Daha önce silinen bir mesaj için DeleteMessage isteği gönderdiğinizde Amazon SQS tarafından bir başarılı yanıtı döndürülür.
Sunucu tarafı şifrelemesi (SSE)
Amazon SQS için SSE'nin avantajları nelerdir?
SSE, hassas verileri şifrelenmiş kuyruklarda aktarmanıza imkan tanır. SSE, AWS Anahtar Yönetimi Hizmeti (AWS KMS) içinde yönetilen anahtarları kullanarak Amazon SQS kuyruklarındaki mesajların içeriğini korur. SSE, iletileri Amazon SQS alır almaz şifreler. İletiler şifrelenmiş biçimde depolanır ve Amazon SQS bunların şifrelemesini yalnızca iletiler yetkili bir tüketiciye gönderilirken çözer.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'nun Sunucu Tarafı Şifrelemesi (SSE) ve AWS KMS Kullanarak Verileri Koruma bölümüne bakın.
Şifrelenmiş kuyruklarla SNS, CloudWatch Olayları ve S3 Olayları'nı kullanabilir miyim?
Evet. Bunu yapmak için AWS hizmetleri (ör. Amazon CloudWatch Events, Amazon S3 ve Amazon SNS) ile SSE’li Kuyruklar arasında uyumluluğu etkinleştirmeniz gerekir. Ayrıntılı yönergeler için SQS Geliştirici Kılavuzu'ndaki Uyumluluk bölümüne bakın.
SSE'li kuyruklar hangi bölgelerde kullanılabilir?
Amazon SQS için sunucu tarafı şifrelemesine (SSE), Amazon SQS'in mevcut olduğu tüm AWS bölgelerinde erişilebilir. Amazon SQS bölge erişilebilirliğiyle ilgili ayrıntılı bilgi için buraya göz atın.
Yeni veya mevcut bir Amazon SQS kuyruğu için SSE'yi nasıl etkinleştirebilirim?
Amazon SQS API'sini kullanarak yeni veya mevcut bir kuyruk için SSE'yi etkinleştirmek istiyorsanız CreateQueue veya SetQueueAttributes eyleminin KmsMasterKeyId özniteliğini ayarlayarak müşteri ana anahtarı (CMK) kimliğini (AWS tarafından yönetilen bir CMK'nin ya da özel bir CMK'nin diğer adı, diğer ad ARN'si, anahtar kimliği veya anahtar ARN'si) belirtin.
Ayrıntılı yönergeler için Amazon SQS Geliştirici Kılavuzu'ndaki Sunucu Tarafı Şifrelemesi ile Amazon SQS Kuyruğu Oluşturma ve Mevcut Bir Amazon SQS Kuyruğu İçin Sunucu Tarafı Şifrelemesi (SSE) Yapılandırma bölümlerine bakın.
Hangi Amazon SQS kuyruk türleri SSE kullanabilir?
Hem standart kuyruklar hem de FIFO kuyrukları SSE’yi destekler.
Amazon SQS ile SSE kullanmak için hangi izinlere sahip olmam gerekir?
SSE’yi kullanabilmeniz için önce AWS KMS anahtar politikalarını kuyrukların şifrelenmesine ve iletilerin şifrelenip şifrelerinin çözülmesine imkan tanıyacak şekilde yapılandırmanız gerekir.
Bir kuyrukta SSE’yi etkinleştirmek istiyorsanız Amazon SQS için AWS tarafından yönetilen müşteri ana anahtarını (CMK) veya özel bir CMK’yı kullanabilirsiniz. Daha fazla bilgi için AWS KMS Geliştirici Kılavuzu'ndaki Müşteri Ana Anahtarları bölümüne bakın.
Bir üreticinin şifrelenmiş bir kuyruğa ileti gönderebilmesi için CMK’ya yönelik kms:GenerateDataKey ve kms:Decrypt izinlerine sahip olması gerekir.
Bir tüketicinin şifrelenmiş bir kuyruktan ileti alabilmesi için belirtilen kuyrukta varsa iletilerin şifrelenmesi amacıyla kullanılan CMK’ya yönelik kms:Decrypt iznine sahip olması gerekir. Sıra bir teslim edilemeyen iletiler sırası olarak çalışıyorsa tüketicinin varsa kaynak kuyrukta mesajların şifrelenmesi amacıyla kullanılan CMK'ye yönelik de kms:Decrypt iznine sahip olması gerekir.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki SSE'yi Kullanmak İçin Hangi İzinlere Sahip Olmam Gerekir? bölümüne bakın.
Amazon SQS ile SSE kullanımı için ücretlendirme uygulanır mı?
Ek Amazon SQS ücreti uygulanmaz. Ancak Amazon SQS’den AWS KMS’ye yapılan çağrılar ücretlidir. Daha fazla bilgi için AWS Anahtar Yönetimi Hizmeti Fiyatlandırması bölümüne bakın.
AWS KMS kullanım ücretleri, kuyruklarınız için yapılandırılan veri anahtarı yeniden kullanım dönemine bağlıdır. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki AWS KMS Kullanım Maliyetlerimi Nasıl Tahmin Edebilirim? bölümüne bakın.
Amazon SQS için SSE neleri şifreler ve şifreleme nasıl uygulanır?
SSE, Amazon SQS kuyruğundaki bir iletinin gövdesini şifreler.
SSE aşağıdaki bileşenleri şifrelemez:
- Kuyruk meta verileri (kuyruk adı ve öznitelikleri)
- İleti meta verileri (ileti kimliği, zaman damgası ve öznitelikleri)
- Kuyruk başına ölçümler
Amazon SQS, yapılandırılabilir bir süreliğine (1 dakika ile 24 saat arasında) zarf şifreleme ve mesajların şifresinin çözülmesi hizmetlerini sağlamak amacıyla Amazon SQS için AWS tarafından yönetilen müşteri ana anahtarını (CMK) veya özel bir CMK'yi temel alarak veri anahtarları oluşturur.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS için SSE Neleri Şifreler? bölümüne bakın.
Amazon SQS için SSE, mesajları şifrelemek için hangi algoritmayı kullanır?
SSE, AES-GCM 256 algoritmasını kullanır.
SSE, saniye başına işlem (TPS) sayısını veya Amazon SQS ile oluşturulabilecek kuyruk sayısını sınırlar mı?
SSE, Amazon SQS'nin aktarım hızını (TPS) etkilemez. Oluşturabileceğiniz SSE kuyruğu sayısını aşağıdaki faktörler sınırlar:
- Veri anahtarı yeniden kullanım süresi (1 dakika ile 24 saat arasında).
- Hesap başına AWS KMS kotası (varsayılan olarak 100 TPS).
- Kuyruklara erişen IAM kullanıcılarının veya hesaplarının sayısı.
- Büyük bir kapsam olması (kapsam ne kadar büyük olursa o kadar çok AWS KMS çağrısı gerekir).
Örneğin, aşağıdakileri göz önünde bulunduralım:
- Veri anahtarı yeniden kullanım döneminizi 5 dakika (300 saniye) olarak ayarladınız.
- KMS hesabınızın varsayılan olarak 100 TPS'lik bir AWS KMS TPS kotası vardır.
- Bekleme listesi olmadan ve 1 IAM kullanıcısıyla, tüm kuyruklarda SendMessage veya ReceiveMessage eylemleri için bir Amazon SQS kuyruğu kullanıyorsunuz.
Bu durumda, SSE ile Amazon SQS kuyruklarının teorik üst sınırını şu şekilde hesaplayabilirsiniz:
300 saniye × 100 TPS / 1 IAM kullanıcısı = 30.000 kuyruk
AWS KMS kullanım maliyetlerimi nasıl tahmin edebilirim?
Maliyetleri tahmin etmek ve AWS faturanızı daha iyi anlamak için Amazon SQS’nin CMK’nızı ne sıklıkta kullandığını bilmek isteyebilirsiniz.
Not: Aşağıdaki formül beklenen maliyetler konusunda iyi bir fikir verse de Amazon SQS'nin dağıtılmış yapısı nedeniyle gerçekte oluşacak maliyetler daha yüksek olabilir.
Kuyruk (R) başına API isteği sayısını hesaplamak için şu formülü kullanın:
R = B / D * (2 * P + C)
B, faturalandırma dönemidir (saniye cinsinden)
D, veri anahtarı yeniden kullanım dönemidir (saniye cinsinden)
P, Amazon SQS kuyruğuna gönderim yapan üretim sorumlusu sayısıdır.
C, Amazon SQS kuyruğundan alım yapan tüketim sorumlusu sayısıdır.
Önemli: Genel olarak üretim sorumluları, tüketim sorumlularının iki katı maliyetle çalışır. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Veri Anahtarı Yeniden Kullanım Dönemi Nasıl Uygulanır? bölümüne bakın.
Üretici ve tüketici farklı IAM kullanıcılarına sahipse maliyet artar.
Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki AWS KMS Kullanım Maliyetlerimi Nasıl Tahmin Edebilirim? bölümüne bakın
Uygunluk
Amazon SQS, PCI DSS sertifikalı mıdır?
Evet. Amazon SQS, PCI DSS Düzey 1 sertifikasına sahiptir. Daha fazla bilgi için PCI Uyumluluğu bölümüne bakın.
Amazon SQS, HIPAA'ya uygun mudur?
Evet. AWS, HIPAA uyumluluğu programını HIPAA İçin Uygun Hizmet olarak Amazon SQS’yi içerecek şekilde genişletmiştir. AWS ile İş Ortağı Sözleşmesi (BAA) yaptıysanız HIPAA ile uyumlu uygulamalarınızı oluşturmak, korunan sağlık bilgileri (PHI) içeren iletiler dahil olmak üzere aktarım halindeki iletileri depolamak ve ileti aktarmak için Amazon SQS’yi kullanabilirsiniz.
Zaten AWS ile BAA imzaladıysanız Amazon SQS’yi hemen kullanmaya başlayabilirsiniz. BAA’nız yoksa veya HIPAA ile uyumlu uygulamalarınız için AWS’yi kullanma konusunda başka sorularınız varsa daha fazla bilgi edinmek üzere bize başvurun.
Not: PHI verilerini Amazon SQS aracılığıyla aktarmayı tercih ediyorsanız (veya 256 KB'den büyük mesajlarınız varsa), alternatif olarak Amazon SQS Java İçin Genişletilmiş İstemci Kitaplığı'nı kullanarak Amazon SQS mesaj yüklerini Amazon S3 aracılığıyla gönderebilirsiniz (Amazon S3, Amazon S3 Aktarım Hızlandırma kullanımı dışında HIPAA İçin Uygun Hizmetlerden biridir). Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS Java İçin Genişletilmiş İstemci Kitaplığı'nı kullanma bölümüne bakın.
Sınırlar ve kısıtlamalar
Mesajlarımı Amazon SQS mesaj kuyruklarında ne kadar süre tutabilirim?
Daha uzun ileti tutma dönemi, iletinin üretilmesi ile tüketilmesi arasındaki aralığın uzamasına imkan tanıyarak daha fazla esneklik sunar.
Amazon SQS ileti tutma dönemini 1 dakika ile 14 gün arası bir değer olacak şekilde ayarlayabilirsiniz. Varsayılan değer 4 gündür. İleti tutma kotasına ulaşıldığında iletileriniz otomatik olarak silinir.
Amazon SQS'yi daha uzun bir mesaj tutma dönemini destekleyecek şekilde nasıl yapılandırabilirim?
İleti tutma dönemini yapılandırmak için konsolu veya Distributiveness yöntemini kullanarak MessageRetentionPeriod özniteliğini ayarlayın. Bir iletinin Amazon SQS’de kaç saniye tutulacağını belirtmek için bu özniteliği kullanın.
MessageRetentionPeriod özniteliğini kullanarak ileti tutma dönemini 60 saniye (1 dakika) ile 1.209.600 saniye (14 gün) arası bir değere ayarlayabilirsiniz. Bu mesaj özniteliğiyle çalışma hakkında daha fazla bilgi için Amazon SQS API Referansı bölümüne bakın.
Amazon SQS için maksimum mesaj boyutunu nasıl yapılandırabilirim?
Maksimum ileti boyutunu yapılandırmak için konsolu veya SetQueueAttributes yöntemini kullanarak MaximumMessageSize özniteliğini ayarlayın. Bu öznitelik, bir Amazon SQS iletisinin içerebileceği bayt sayısını belirtir. Bu özniteliği 1.024 bayt (1 KB) ile 262.144 bayt (256 KB) arası bir değere ayarlayın. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS Mesaj Özniteliklerini Kullanma bölümüne bakın.
256 KB'den büyük mesajlar göndermek için Amazon SQS Java İçin Genişletilmiş İstemci Kitaplığı'nı kullanın. Bu kitaplık, Amazon S3’te yer alan ve boyutu 2 GB’a kadar olabilecek bir ileti yükünün başvurusunu içeren bir Amazon SQS iletisi göndermenize imkan tanır.
Bir mesaja ne tür veriler ekleyebilirim?
Amazon SQS iletileri XML, JSON ve biçimlendirilmemiş metin dahil olmak üzere 256 KB’a kadar metin verisi içerebilir. Aşağıdaki Unicode karakterleri kabul edilir:
#x9 | #xA | #xD | [#x20 – #xD7FF] | [#xE000 – #xFFFD] | [#x10000 – #x10FFFF]
Daha fazla bilgi için XML 1.0 Belirtimi'ne bakın.
Amazon SQS mesaj kuyrukları ne kadar büyük olabilir?
Tek bir Amazon SQS ileti kuyruğu sınırsız sayıda ileti içerebilir. Bununla birlikte, aktarım halindeki iletiler için sayı kotası standart kuyruklarda 120.000, FIFO kuyruklarında 20.000'dir. İletiler, bir tüketim bileşeni tarafından kuyruktan alınmış olmasına rağmen henüz kuyruktan silinmedikleri süre boyunca aktarım halinde kabul edilir.
Kaç mesaj kuyruğu oluşturabilirim?
Dilediğiniz sayıda ileti kuyruğu oluşturabilirsiniz.
Amazon SQS mesaj kuyruklarının adları için boyut sınırlaması var mıdır?
Kuyruk adları 80 karakterle sınırlıdır.
Amazon SQS mesaj kuyruklarının adları konusunda kısıtlamalar var mıdır?
Alfasayısal karakterler, kısa çizgiler (-) ve alt çizgiler (_) kullanabilirsiniz.
Bir mesaj kuyruğu adını yeniden kullanabilir miyim?
Bir ileti kuyruğunun adı, ilgili AWS hesabında ve bölgesinde benzersiz olmalıdır. Bir ileti kuyruğunun adını, ileti kuyruğunu sildikten sonra yeniden kullanabilirsiniz.
Kuyruk paylaşımı
Bir mesaj kuyruğunu nasıl paylaşabilirim?
Paylaşılacak ileti kuyruğu ile bir erişim politikası bildirimini ilişkilendirebilir ve verilen izinleri belirtebilirsiniz. Amazon SQS, erişim politikası bildirimleri oluşturup bunları yönetmeye yönelik API’ler sağlar:
- AddPermission
- RemovePermission
- SetQueueAttributes
- GetQueueAttributes
Daha fazla bilgi için Amazon SQS API Referansı bölümüne bakın.
Paylaşılan kuyruk erişimi için kim ücret öder?
Paylaşılan ileti kuyruğu erişimi için ileti kuyruğunun sahibi ücret öder.
Kendisiyle bir mesaj kuyruğunu paylaşmak istediğim başka bir AWS kullanıcısını nasıl tanımlayabilirim?
Amazon SQS API’si, AWS kullanıcılarını tanımlamak için AWS hesap numarasını kullanır.
Kendisiyle bir mesaj kuyruğunu paylaşmak istediğim bir AWS kullanıcısına ne sağlamalıyım?
Bir ileti kuyruğunu bir AWS kullanıcısıyla paylaşmak için paylaşmak istediğiniz ileti kuyruğunun tam URL’sini sağlayın. CreateQueue ve ListQueues işlemleri, yanıtlarında bu URL’yi döndürür.
Amazon SQS, anonim erişimi destekler mi?
Evet. Bir ileti kuyruğuna anonim kullanıcıların erişmesine imkan tanıyan bir erişim politikası yapılandırabilirsiniz.
İzinler API'sini hangi durumlarda kullanmalıyım?
İzinler API’si, yazılım geliştiricilere bir ileti kuyruğuna erişimi paylaşmaya yönelik bir arabirim sağlar. Ancak bu API, koşullu erişim ya da daha gelişmiş kullanım örnekleri için kullanılamaz.
JSON nesneleriyle SetQueueAttributes işlemini hangi durumlarda kullanmalıyım?
SetQueueAttributes işlemi, tam erişim politikası dilini destekler. Örneğin, politika dilini kullanarak bir ileti kuyruğuna erişimi IP adresine ve günün saatine göre kısıtlayabilirsiniz. Daha fazla bilgi için Amazon SQS Geliştirici Kılavuzu'ndaki Amazon SQS Politika Örnekleri bölümüne bakın.
Hizmet erişimi ve bölgeler
Amazon SQS hangi bölgelerde kullanılabilir?
Hizmetlerin bölgelere göre erişilebilirlik durumunu görmek için AWS Küresel Altyapısı Bölge Tablosu bölümüne bakın.
Mesajları farklı bölgelerdeki kuyruklar arasında ortak olarak kullanabilir miyim?
Hayır. Her Amazon SQS ileti kuyruğu ilgili bölge içinde bağımsızdır.
Bölgeler arasında fiyatlandırma farkı var mıdır?
Amazon SQS fiyatlandırması, Çin (Pekin) hariç tüm bölgelerde aynıdır. Daha fazla bilgi için Amazon SQS Fiyatlandırması bölümüne bakın.
Çeşitli bölgeler arasında fiyatlandırma yapısı nasıldır?
Tek bir bölge içinde Amazon SQS ile Amazon EC2 ya da AWS Lambda arasında ücretsiz olarak veri aktarabilirsiniz.
Farklı bölgelerdeki Amazon SQS ile Amazon EC2 veya AWS Lambda arasında veri aktarımı yaptığınızda, normal veri aktarım fiyatı üzerinden ücret ödersiniz. Daha fazla bilgi için Amazon SQS Fiyatlandırması bölümüne bakın.
Teslim edilemeyen mesaj kuyrukları
Teslim edilemeyen iletiler sırası nedir?
Teslim edilemeyen ileti kuyruğu; kaynak kuyruğun tüketici uygulaması, iletileri başarılı bir şekilde tüketemediği takdirde kaynak kuyruğun, iletileri gönderebileceği bir Amazon SQS kuyruğudur. Teslim edilemeyen ileti kuyrukları, ileti tüketim hatalarını ele almanızı ve tüketilemeyen iletilerin yaşam döngüsünü yönetmenizi kolaylaştırır. Teslim edilemeyen ileti kuyruğuna gönderilen iletiler için bir alarm yapılandırabilir, iletinin kuyruğa gönderilmesine neden olan istisnalara yönelik günlükleri inceleyebilir ve tüketici uygulaması sorunlarının nedenlerini tespit etmek için ileti içeriklerini analiz edebilirsiniz. Tüketici uygulamanızın sorununu giderdikten sonra iletileri teslim edilemeyen ileti kuyruğunuzdan kaynak kuyruğa yönlendirebilirsiniz.
Teslim edilemeyen iletiler sıraları nasıl çalışır?
Kaynak kuyruğunuzu oluştururken Amazon SQS, bir teslim edilemeyen ileti kuyruğu (DLQ) ve SQS'nin hangi koşulda iletileri DLQ'ya taşıması gerektiğini belirlemenize olanak tanır. Koşul, bir tüketicinin iletiyi kuyruktan alabilme sayısıdır ve bu, maxReceiveCount olarak tanımlanır. Teslim edilemeyen ileti kuyruğunun bir kaynak kuyruk ve maxReceiveCount ile yapılandırılmasına yönlendirme politikası denir. Bir ileti için ReceiveCount değeri kuyruğa ilişkin maxReceiveCount değerini aştığında Amazon SQS, iletiyi (orijinal ileti kimliği ile birlikte) teslim edilemeyen ileti kuyruğuna taşımak üzere tasarlanmıştır. Örneğin, kaynak kuyruk maxReceiveCount değeri beş olacak şekilde bir yönlendirme politikası içeriyorsa ve kaynak kuyruğun tüketicisi bu iletiyi başarılı şekilde tüketemeden altı kez aldıysa SQS, iletiyi teslim edilemeyen ileti kuyruğuna taşır.
Yönlendirme politikası, tüketilemeyen iletileri kaynak kuyruktan teslim edilemeyen ileti kuyruğuna taşıyarak bu iletilere ait yaşam döngüsünün ilk yarısını yönetir. Ardından, teslim edilemeyen ileti kuyruğundan kaynak kuyruğa verimli şekilde yönlendirme süreci, bu iletileri aşağıdaki gibi ait oldukları kaynak kuyruğa geri taşıyarak döngüyü tamamlar.
Teslim edilemeyen iletiler sırasından kaynak sırasına yönlendirme nasıl çalışır?
Öncelikle, ileti özniteliklerini ve ilgili meta verileri göstererek teslim edilemeyen ileti kuyruğunda bulunan iletilerin bir örneğini incelemenize olanak tanır. Ardından, iletileri inceledikten sonra bunları kaynak kuyruklarına geri taşıyabilirsiniz. Ayrıca, Amazon SQS'nin iletileri teslim edilemeyen ileti kuyruğundan kaynak kuyruğa hangi hızda taşıyacağını yapılandırmak için yönlendirme hızını seçebilirsiniz.
Teslim edilemeyen iletiler sırasını FIFO kuyrukları ile kullanabilir miyim?
Evet. Ancak FIFO kuyrukları ile FIFO teslim edilemeyen ileti kuyruğu kullanmanız gerekir. (Benzer şekilde, standart kuyrukla yalnızca standart bir teslim edilemeyen ileti kuyruğu kullanabilirsiniz.)