GNU/Linux >> Belajar Linux >  >> Linux

Instalasi dan manajemen Rabbitmq

Pengantar

Setiap administrator sistem yang berpengalaman tahu bahwa terkadang menunda tugas untuk nanti sangat berguna dan bahkan perlu, terutama jika tugas itu memakan waktu dan menghabiskan banyak sumber daya. Untuk melakukan ini, Anda memerlukan perantara pesan – program yang menerima pesan (tugas) dari berbagai pengirim (aplikasi web), membentuk antrian dari mereka, dan kemudian mendistribusikannya di antara proses kerja.

Artikel ini akan fokus pada proyek RabbitMQ – sekumpulan aplikasi terbuka untuk mengimplementasikan fungsi broker pesan yang mengimplementasikan Advanced Message Queuing Protocol (AMQP).

Pesan, perantara dan urutan pesan

Pesan adalah cara pertukaran data tertentu antara proses, aplikasi, server virtual dan fisik. Pesan-pesan ini, yang melakukan beberapa fungsi komputasi, dapat berisi hampir semua hal, dari teks biasa hingga blok besar data biner. Untuk pelaksanaan proses ini dengan benar, diperlukan program pihak ketiga – ini adalah perantara pesan.

Pialang pesan biasanya merupakan sekelompok aplikasi, yang masing-masing komponennya dirancang untuk memproses tahap pesan tertentu:menerima pesan, mendefinisikannya dalam antrian, dan mentransfer pesan ke proses kerja yang bertanggung jawab atas pelaksanaannya. Seringkali, alih-alih solusi lengkap, digunakan program yang awalnya tidak dimaksudkan untuk pekerjaan ini (basis data, daemon cron, dll.); mereka hanya membuat antrian pesan (yang secara teknis mewakili buffer tak terbatas), dan kemudian meneruskannya untuk pemrosesan otomatis atau untuk polling.

Mengapa Anda membutuhkan perantara pesan?

Pialang pesan bertindak sebagai perantara antara berbagai layanan (aplikasi web). Mereka secara signifikan mengurangi beban dan mempersingkat waktu pengiriman pesan, karena tugas yang membutuhkan waktu untuk diproses didistribusikan di antara alur kerja yang dirancang khusus untuk melakukan tugas ini. Mereka menyediakan saluran yang andal untuk mengirimkan pesan dari satu aplikasi ke aplikasi lain.

Kapan Anda membutuhkan perantara pesan?

Secara umum, fungsi dasar perantara pesan mencakup banyak bidang, termasuk, namun tidak terbatas pada:

  • Mengurangi waktu respons server web terhadap permintaan (karena mereka tidak harus melakukan tugas yang membutuhkan banyak sumber daya).
  • Distribusi pesan ke beberapa penerima (misalnya, untuk diproses).
  • Pengguna offline nantinya dapat mengambil semua data.
  • Mode operasi asinkron sepenuhnya dengan sistem server.
  • Mengurutkan dan memprioritaskan tugas;
  • Keseimbangan beban antar proses kerja.
  • Meningkatkan keandalan dan waktu aktif aplikasi.

Dan masih banyak lagi.

Ulasan singkat tentang RabbitMQ

RabbitMQ (dirilis pada 2007) adalah salah satu broker pesan sumber terbuka paling populer yang dilisensikan di bawah Mozilla Public License v1.1 sebagai implementasi dari Protokol Antrian Pesan Lanjutan. Didesain di Erlang, RabbitMQ cukup mudah digunakan dan dipasang.

Bagaimana cara kerja RabbitMQ?

RabbitMQ menyediakan antarmuka yang menghubungkan pengirim (Penerbit) dengan penerima (Konsumen) menggunakan broker yang mendistribusikan data dalam daftar yang sesuai – Antrian Pesan.

APPLICATION       EXCHANGE        TASK LIST        WORKER
[DATA]  -------> [DATA] ------> [D]+[D][D][D] ---> [DATA]
Publisher        EXCHANGE          Queue         Consumer

Manfaat RabbitMQ

Tidak seperti solusi lain, RabbitMQ adalah tumpukan aplikasi yang lengkap, dan bukan basis sederhana untuk aplikasi pilihan Anda. Ini menyediakan semua alat yang diperlukan di kompleks.

Ulasan singkat tentang AMQP

AMQP (Advanced Message Queuing Protocol) adalah standar terbuka yang tersebar luas untuk distribusi dan transmisi pesan. Sebagai protokol dan standar, protokol ini menetapkan kerangka kerja umum untuk interaksi berbagai aplikasi dan perantara pesan serta menghilangkan masalah yang disebabkan oleh desain program individual.

Instalasi RabbitMQ

Paket RabbitMQ disediakan oleh CentOS / RHEL dan Ubuntu / Debian. Tetapi, sebagai aturan, paket seperti itu sudah ketinggalan zaman. Oleh karena itu, disarankan untuk mengunduh dan menginstal RabbitMQ secara manual.

Catatan :Disarankan agar semua tindakan manual dilakukan pada server baru agar tidak mengganggu pengoperasian aplikasi yang diluncurkan sebelumnya dan tidak menyebabkan kegagalan konfigurasi.

Instal RabbitMQ di CentOS/RHEL

Sebelum Anda mulai menginstal RabbitMQ, Anda perlu menginstal dependensi program, salah satunya adalah Erlang. Namun, pertama-tama, perlu memperbarui sistem dan aplikasi standar; untuk melakukan ini, jalankan:

# yum -y update

Untuk instalasi Erlang Anda dapat menggunakan:

# Add and enable relevant application repositories:
# Note: We are also enabling third party remi package repositories.
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
# Finally, download and install Erlang:
yum install -y erlang

sekarang Anda dapat menginstal RabbitMQ:

# Download the latest RabbitMQ package using wget:
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.2.2/rabbitmq-server-3.2.2-1.noarch.rpm
# Add the necessary keys for verification:
rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc
# Install the .RPM package using YUM:
yum install rabbitmq-server-3.2.2-1.noarch.rpm

Instal RabbitMQ di Ubuntu

Proses instalasi RabbitMQ di Ubuntu/Debian hampir sama dengan di CentOS. Pertama, Anda perlu memperbarui perangkat lunak:

# apt-get update
# apt-get -y upgrade

Tambahkan kunci rabbitmq:

# curl -fsSL https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc | sudo apt-key add -

Lakukan pembaruan paket:

# apt-get update

Sekarang Anda dapat menginstal rabbitmq RabbitMQ:

$ sudo apt-get install rabbitmq-server

Manajemen RabbitMQ

Seperti yang disebutkan sebelumnya, broker RabbitMQ sangat mudah digunakan. Bagian ini memberikan instruksi untuk mengelola dan mengonfigurasi RabbitMQ.

Mengaktifkan konsol manajemen

RabbitMQ Management Console (RabbitMQ Management Console) adalah salah satu plugin yang tersedia yang memungkinkan Anda memantau proses server RabbitMQ melalui antarmuka pengguna berbasis web grafis.

Dengan menggunakan konsol ini, Anda dapat:

  • Mengelola pesan, antrean pesan, koneksi, dan pengguna;
  • Melacak antrean pesan, koneksi, dan kecepatan pesan
  • Mengirim dan menerima pesan;
  • Melacak proses Erlang dan penggunaan memori;

Dan masih banyak lagi.

Untuk mengaktifkan manajemen RabbitMQ, jalankan perintah:

$ sudo rabbitmq-plugins enable rabbitmq_management

Sekarang Anda dapat membuka konsol manajemen di browser dengan mengunjungi your_ip:15672.

Default rabbitmq user – guest.
Default rabbitmq password – guest

Manajemen RabbitMQ di CentOS/RHEL

Untuk mengaktifkan autostart RabbitMQ, Anda harus menjalankan:

# chkconfig rabbitmq-server on

Untuk memulai, menghentikan, memulai ulang, dan memeriksa status gunakan perintah di bawah ini:

# start:
/sbin/service rabbitmq-server start
# stop:
/sbin/service rabbitmq-server stop
# restart:
/sbin/service rabbitmq-server restart
# status:
/sbin/service rabbitmq-server status

Manajemen RabbitMQ di Ubuntu/Debian

Untuk memulai, menghentikan, memulai ulang, dan memeriksa status rabbitmq di Ubuntu/Debian gunakan perintah di bawah ini:

# start:
service rabbitmq-server start
# stop:
service rabbitmq-server stop
# restart:
service rabbitmq-server restart
# status:
service rabbitmq-server status

Sekarang server rabbitmq Anda siap digunakan!

Konfigurasi RabbitMQ

RabbitMQ hadir dengan pengaturan standar. Secara umum, mereka cukup andal dan tidak memerlukan pengeditan.


Linux
  1. Cara Menginstal RabbitMQ di CentOS/RHEL 7/6 dan Fedora

  2. Cara Install RabbitMQ Server dan Erlang di Linux

  3. melacak IP dan port tertentu

  1. Instal Apache dan PHP di CentOS 7

  2. Pemantauan dan manajemen memori

  3. DESTDIR dan PREFIX dari make

  1. Cara Memasang dan Mengonfigurasi Agen Manajemen Veeam dan Agen Pencadangan Veeam

  2. Cara Menginstal dan Mengkonfigurasi RabbitMQ di Debian 11

  3. Cara Menginstal dan Mengatur RabbitMQ di Ubuntu 16.04