Acara Fanout Amazon ke SNS AWS Event Fork Pipelines - Amazon Simple Notification Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Acara Fanout Amazon ke SNS AWS Event Fork Pipelines

Untuk pengarsipan dan analitik acara, Amazon SNS sekarang merekomendasikan untuk menggunakan integrasi aslinya dengan Amazon Data Firehose. Anda dapat berlangganan aliran pengiriman Firehose ke SNS topik, yang memungkinkan Anda mengirim pemberitahuan ke titik akhir pengarsipan dan analitik seperti bucket Amazon Simple Storage Service (Amazon S3), tabel Amazon Redshift, Amazon Service (Service), dan banyak lagi OpenSearch . OpenSearch Menggunakan Amazon SNS dengan aliran pengiriman Firehose adalah solusi yang dikelola sepenuhnya dan tanpa kode yang tidak mengharuskan Anda menggunakan fungsi. AWS Lambda Untuk informasi selengkapnya, lihat Aliran pengiriman Fanout ke Firehose.

Anda dapat menggunakan Amazon SNS untuk membangun aplikasi berbasis peristiwa yang menggunakan layanan pelanggan untuk melakukan pekerjaan secara otomatis sebagai respons terhadap peristiwa yang dipicu oleh layanan penayang. Pola arsitektur ini dapat membuat layanan lebih dapat digunakan kembali, dapat dioperasikan, dan dapat diskalakan. Namun demikian, pola tersebut dapat menjadi padat karya untuk fork pemrosesan peristiwa ke dalam alur yang mengatasi persyaratan penanganan peristiwa umum, seperti penyimpanan peristiwa, cadangan, pencarian, analitik, dan ulangan.

Untuk mempercepat pengembangan aplikasi berbasis peristiwa, Anda dapat berlangganan pipeline penanganan acara—yang didukung oleh pipa Event Fork— ke topik Amazon. AWS SNS AWS Event Fork Pipelines adalah rangkaian aplikasi bersarang sumber terbuka, berdasarkan Model Aplikasi AWS Tanpa Server (AWS SAM), yang dapat Anda gunakan langsung dari rangkaian AWS Event Fork Pipelines (pilih Tampilkan aplikasi yang membuat IAM peran khusus atau kebijakan sumber daya) ke akun Anda. AWS

Untuk kasus penggunaan AWS Event Fork Pipelines, lihatMenyebarkan dan menguji aplikasi sampel pipeline fork SNS event Amazon.

Bagaimana AWS Event Fork Pipelines bekerja

AWS Event Fork Pipelines adalah pola desain tanpa server. Namun, ini juga merupakan rangkaian aplikasi tanpa server bersarang berdasarkan AWS SAM (yang dapat Anda terapkan langsung dari AWS Serverless Application Repository (AWS SAR) ke Anda untuk memperkaya platform berbasis peristiwa Anda Akun AWS ). Anda dapat men-deploy aplikasi bersarang tersebut secara individual, sesuai kebutuhan arsitektur Anda.

Diagram berikut menunjukkan aplikasi AWS Event Fork Pipelines yang dilengkapi dengan tiga aplikasi bersarang. Anda dapat menyebarkan saluran pipa apa pun dari rangkaian AWS Event Fork Pipelines AWS SAR secara independen, sesuai kebutuhan arsitektur Anda.

Arsitektur AWS Event Fork Pipelines, menunjukkan bagaimana peristiwa dari SNS topik Amazon disaring dan diproses melalui tiga pipeline yang berbeda: Penyimpanan dan Pencadangan Acara, Pencarian Acara dan Analisis, dan Pemutaran Ulang Acara. Pipa ini digambarkan sebagai kotak yang ditumpuk secara vertikal, masing-masing secara independen memproses peristiwa secara paralel dari topik Amazon yang sama. SNS

Setiap pipeline berlangganan SNS topik Amazon yang sama, memungkinkan dirinya untuk memproses peristiwa secara paralel karena peristiwa ini dipublikasikan ke topik tersebut. Setiap alur bersifat independen dan dapat mengatur Kebijakan Filter Berlangganan miliknya sendiri. Hal ini mengizinkan alur untuk memproses hanya subset dari peristiwa yang menjadi perhatian (bukan semua peristiwa yang diterbitkan untuk topik).

catatan

Karena Anda menempatkan tiga AWS Event Fork Pipelines di samping pipeline pemrosesan acara reguler Anda (mungkin sudah berlangganan SNS topik Amazon Anda), Anda tidak perlu mengubah bagian mana pun dari penerbit pesan Anda saat ini untuk memanfaatkan Pipelines Fork AWS Event di beban kerja yang ada.

Penyimpanan peristiwa dan alur cadangan

Diagram berikut menunjukkan Penyimpanan Peristiwa dan Alur Cadangan. Anda dapat berlangganan pipeline ini ke SNS topik Amazon Anda untuk secara otomatis mencadangkan peristiwa yang mengalir melalui sistem Anda.

Pipeline ini terdiri dari SQS antrian Amazon yang menyangga peristiwa yang dikirimkan oleh SNS topik Amazon, AWS Lambda fungsi yang secara otomatis melakukan polling untuk peristiwa ini dalam antrian dan mendorongnya ke aliran Amazon Data Firehose, dan bucket Amazon S3 yang secara tahan lama mencadangkan peristiwa yang dimuat oleh aliran.

Fork-Event-Storage-Backup-Pipeline, yang dirancang untuk memproses dan mencadangkan acara dari SNS topik Amazon. Alur dimulai dengan SNS topik Amazon dari mana acara disebarkan ke SQS antrian Amazon. Peristiwa yang difilter ini kemudian diproses oleh fungsi Lambda, yang meneruskannya ke Amazon Kinesis Data Firehose. Aliran Firehose bertanggung jawab untuk menyangga, mengubah, dan mengompresi peristiwa sebelum memuatnya ke dalam bucket cadangan Amazon S3. Terakhir, Amazon Athena dapat digunakan untuk menanyakan data yang disimpan. Diagram menggunakan serangkaian ikon dan panah untuk menggambarkan aliran dari satu layanan ke layanan berikutnya, dengan jelas memberi label pada setiap komponen pipa.

Untuk penyetelan halus perilaku pengaliran Firehose Anda, Anda dapat mengonfigurasinya untuk membuffer, mengubah, dan mengompres peristiwa Anda sebelum memuatnya ke dalam bucket. Saat acara dimuat, Anda dapat menggunakan Amazon Athena untuk menanyakan bucket menggunakan kueri standarSQL. Anda juga dapat mengonfigurasi alur untuk menggunakan kembali bucket Amazon S3 yang ada atau membuat yang baru.

Pencarian peristiwa dan alur analitik

Diagram berikut ini menunjukkan Pencarian Peristiwa dan Alur Analitik. Anda dapat berlangganan pipeline ini ke SNS topik Amazon Anda untuk mengindeks peristiwa yang mengalir melalui sistem Anda di domain penelusuran dan kemudian menjalankan analitik pada mereka.

Pipeline ini terdiri dari SQS antrian Amazon yang menyangga peristiwa yang disampaikan oleh SNS topik Amazon, AWS Lambda fungsi yang melakukan polling peristiwa dari antrian dan mendorongnya ke aliran Amazon Data Firehose, domain OpenSearch Layanan Amazon yang mengindeks peristiwa yang dimuat oleh aliran Firehose, dan bucket Amazon S3 yang menyimpan peristiwa mati yang tidak dapat diindeks dalam pencarian domain.

Event Search dan Analytics Pipeline dalam sebuah AWS arsitektur. Dimulai di sebelah kiri dengan SNS topik Amazon menerima semua acara. Peristiwa ini kemudian disalurkan melalui garis putus-putus yang mewakili “peristiwa yang difilter penggemar” ke dalam antrian Amazon. SQS Dari antrian, peristiwa diproses oleh fungsi Lambda yang kemudian meneruskannya ke aliran Amazon Kinesis Data Firehose. Data Firehose mengarahkan peristiwa ke dua tujuan: satu rute mengarah ke Amazon Elasticsearch Service untuk pengindeksan, dan rute lainnya mengirimkan peristiwa yang tidak dapat diproses atau “surat mati” ke ember surat mati Amazon S3. Di paling kanan, output dari Layanan Elasticsearch dimasukkan ke dasbor Kibana untuk analitik dan visualisasi. Seluruh aliran ditata secara horizontal dan setiap komponen dihubungkan oleh garis yang menunjukkan arah aliran data.

Untuk penyetelan halus pengaliran Firehose Anda dalam syarat buffering peristiwa, transformasi, dan kompresi, Anda dapat mengonfigurasi alur ini.

Anda juga dapat mengonfigurasi apakah pipeline harus menggunakan kembali domain yang ada di OpenSearch domain Anda Akun AWS atau membuat yang baru untuk Anda. Saat peristiwa diindeks dalam domain pencarian, Anda dapat menggunakan Kibana untuk menjalankan analitik pada peristiwa Anda dan memperbarui dasbor visual secara waktu nyata.

Alur ulangan peristiwa

Diagram berikut ini menunjukkan Alur Ulangan Peristiwa. Untuk merekam peristiwa yang telah diproses oleh sistem Anda selama 14 hari terakhir (misalnya ketika platform Anda perlu pulih dari kegagalan), Anda dapat berlangganan pipeline ini ke SNS topik Amazon Anda dan kemudian memproses ulang acara.

Pipeline ini terdiri dari SQS antrean Amazon yang menyangga peristiwa yang dikirimkan oleh SNS topik Amazon, dan AWS Lambda fungsi yang melakukan polling peristiwa dari antrian dan memindahkannya kembali ke pipeline pemrosesan acara reguler Anda, yang juga berlangganan topik Anda.

Event Replay Pipeline dalam format flowchart. Dari kiri ke kanan, dimulai dengan SNS topik Amazon yang mendistribusikan peristiwa yang difilter ke dua proses paralel. Alur atas mewakili pipeline pemrosesan peristiwa reguler Anda, yang mencakup SQS antrian Amazon yang memproses peristiwa. Aliran yang lebih rendah, diberi label sebagai “fork-event-replay-pipeline,” termasuk antrian SQS replay Amazon di mana peristiwa disimpan sementara sebelum diproses oleh fungsi replay Lambda. Fungsi Lambda ini memiliki kemampuan untuk mengarahkan ulang peristiwa ke dalam pipeline pemrosesan acara reguler Anda atau menahannya untuk diputar ulang, berdasarkan apakah fitur pemutaran ulang diaktifkan atau dinonaktifkan. Diagram juga menunjukkan bahwa operator memiliki kontrol atas mengaktifkan atau menonaktifkan fungsionalitas pemutaran ulang acara.
catatan

Secara default, fungsi ulangan dinonaktifkan, tidak memindahkan kembali peristiwa Anda. Jika Anda perlu memproses ulang peristiwa, Anda harus mengaktifkan antrean SQS pemutaran ulang Amazon sebagai sumber peristiwa untuk fungsi AWS Lambda pemutaran ulang.

Menyebarkan Pipa Garpu AWS Acara

Suite AWS Event Fork Pipelines (pilih Tampilkan aplikasi yang membuat IAM peran kustom atau kebijakan sumber daya) tersedia sebagai grup aplikasi publik di AWS Serverless Application Repository, tempat Anda dapat menerapkan dan mengujinya secara manual menggunakan konsol.AWS Lambda Untuk informasi tentang penerapan pipeline menggunakan AWS Lambda konsol, lihat. Berlangganan AWS Event Fork Pipelines ke topik Amazon SNS

Dalam skenario produksi, kami sarankan untuk menyematkan AWS Event Fork Pipelines dalam template aplikasi Anda secara keseluruhan. AWS SAM Fitur aplikasi bersarang memungkinkan Anda melakukan ini dengan menambahkan sumber daya AWS::Serverless::Application ke AWS SAM template Anda, mereferensikan AWS SAR ApplicationId dan aplikasi bersarangSemanticVersion.

Misalnya, Anda dapat menggunakan Event Storage dan Backup Pipeline sebagai aplikasi bersarang dengan menambahkan YAML cuplikan berikut ke Resources bagian template Anda. AWS SAM

Backup: Type: AWS::Serverless::Application Properties: Location: ApplicationId: arn:aws:serverlessrepo:us-east-2:123456789012:applications/fork-event-storage-backup-pipeline SemanticVersion: 1.0.0 Parameters: #The ARN of the Amazon SNS topic whose messages should be backed up to the Amazon S3 bucket. TopicArn: !Ref MySNSTopic

Saat Anda menentukan nilai parameter, Anda dapat menggunakan fungsi AWS CloudFormation intrinsik untuk mereferensikan sumber daya lain di template Anda. Misalnya, dalam YAML cuplikan di atas, TopicArn parameter mereferensikan AWS::SNS::Topic sumber dayaMySNSTopic, yang didefinisikan di tempat lain dalam template. AWS SAM Untuk informasi selengkapnya, lihat Referensi Fungsi Intrinsik di Panduan Pengguna AWS CloudFormation .

catatan

Halaman AWS Lambda konsol untuk AWS SAR aplikasi Anda menyertakan tombol Salin sebagai SAM Sumber Daya, yang menyalin yang YAML diperlukan untuk menyarangkan AWS SAR aplikasi ke clipboard.