RabbitMQ Nedir ve Neden Kullanılır?
Eğer bir mikro hizmet mimarisi veya dağıtık bir uygulama geliştiriyorsanız, mesaj kuyruğu sistemlerine aşina olmanız gerekir. RabbitMQ, bu alandaki en popüler ve güçlü çözümlerden biridir. Yüksek verimliliği, sağlamlığı ve kolay kullanımıyla geliştiriciler arasında oldukça tercih edilmektedir.
RabbitMQ, temel olarak mesajları kuyruğa ekler ve bu mesajların doğru zamanlarda doğru alıcılara ulaştırılmasını sağlar. Bu sayede, sisteminizdeki farklı bileşenler arasında asenkron iletişimi sorunsuz bir şekilde sağlayabilirsiniz. Yani, işlerinizin birbirine bağımlılığını azaltarak uygulamanızı daha hızlı ve verimli hale getirebilirsiniz.
Bugün ise sizlere, RabbitMQ’yu Linux sisteminizde nasıl kuracağınızı göstereceğim. Adım adım takip ederek, kısa bir süre içinde RabbitMQ’nun gücünden yararlanmaya başlayabilirsiniz!
1. RabbitMQ Kurulumuna Başlamadan Önce
RabbitMQ’yu kurmadan önce, sisteminizde bazı ön koşulların sağlanmış olması gerekiyor. Bunlar:
- Erlang: RabbitMQ, Erlang dilinde yazılmıştır, bu yüzden Erlang’ın kurulu olması gerekiyor.
- Linux Sunucusu: Bu rehberde Linux üzerinde kurulum yapacağız. Ubuntu ve Debian tabanlı dağıtımlar için aynı adımları izleyebilirsiniz.
2. Erlang Kurulumu
RabbitMQ’yu kurmadan önce, önce Erlang’ı sisteminize kurmanız gerekiyor. Erlang, RabbitMQ'nun temel yapı taşlarından biridir. Hadi başlayalım!
Terminali açın ve aşağıdaki komutla Erlang’ı kurun:
sudo apt update
sudo apt install erlang
Erlang kurulumunu bitirdikten sonra, kurulumun başarılı olup olmadığını kontrol etmek için aşağıdaki komutu çalıştırabilirsiniz:
erl
Eğer Erlang shell ekranı açılırsa, kurulum başarılı demektir.
3. RabbitMQ Kurulumu
Erlang kurulumunu tamamladıktan sonra, RabbitMQ’yu kurmaya geçebiliriz. RabbitMQ’nun resmi reposunu sisteminize ekleyerek, en güncel sürümü kolayca kurabilirsiniz.
Öncelikle, RabbitMQ’nun resmi GPG anahtarını ekleyelim:
wget -O - https://dl.bintray.com/rabbitmq/debian/KEY.gpg | sudo apt-key add -
Ardından, RabbitMQ’nun repository’sini ekleyelim:
sudo sh -c 'echo "deb https://dl.bintray.com/rabbitmq/debian $(lsb_release -c | awk "{print $2}") main" > /etc/apt/sources.list.d/rabbitmq.list'
Şimdi sisteminize RabbitMQ’yu kurabilirsiniz:
sudo apt update
sudo apt install rabbitmq-server
Kurulum tamamlandıktan sonra, RabbitMQ servisini başlatabiliriz:
sudo systemctl start rabbitmq-server
Ve RabbitMQ’nun otomatik olarak her açılışta başlamasını sağlamak için:
sudo systemctl enable rabbitmq-server
RabbitMQ’nun çalıştığını kontrol etmek için aşağıdaki komutu kullanabilirsiniz:
sudo systemctl status rabbitmq-server
4. RabbitMQ Yönetim Paneli
RabbitMQ, varsayılan olarak bir web tabanlı yönetim paneline sahiptir. Bu panel, RabbitMQ sunucusundaki kuyrukları ve bağlantıları yönetmenizi sağlar.
Yönetim panelini aktif etmek için şu komutu kullanın:
sudo rabbitmq-plugins enable rabbitmq_management
Paneli açmak için tarayıcınızda şu URL’ye gidin:
```
http://localhost:15672/
```
Varsayılan kullanıcı adı ve şifre: guest/guest
Yönetim panelinde kuyruklar, bağlantılar, abonelikler ve daha fazlasını görüntüleyebilir ve yönetebilirsiniz.
5. RabbitMQ’yu Test Edin
Şimdi RabbitMQ’nun doğru çalışıp çalışmadığını test edebiliriz. İlk olarak, RabbitMQ kuyruklarına mesaj gönderip alabilmeniz için bir uygulama yazmanız gerekir. Basit bir Python uygulaması ile mesaj gönderip alabilirsiniz. İşte basit bir örnek:
import pika
# Bağlantı kurun
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
# Kuyruk oluşturun
channel.queue_declare(queue='hello')
# Mesaj gönderin
channel.basic_publish(exchange='', routing_key='hello', body='Hello RabbitMQ!')
print(" [x] Gönderilen: 'Hello RabbitMQ!'")
connection.close()
Eğer yukarıdaki kodu çalıştırdıysanız, RabbitMQ’da `hello` kuyruğuna bir mesaj gönderilmiş olacak. Şimdi, mesajı almak için şu komutu kullanabilirsiniz:
import pika
# Bağlantı kurun
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
# Kuyruğa abone olun
def callback(ch, method, properties, body):
print(f" [x] Alınan mesaj: {body.decode()}")
channel.basic_consume(queue='hello', on_message_callback=callback, auto_ack=True)
print(' [*] Mesajları bekliyorum...')
channel.start_consuming()
Mesaj başarıyla alındığında, terminalde "Alınan mesaj: Hello RabbitMQ!" mesajını göreceksiniz.
6. Sonuç
Ve işte bu kadar! Artık RabbitMQ’nun Linux üzerinde nasıl kurulacağını öğrendiniz. Bu adımları takip ederek, kendi sisteminize RabbitMQ kurabilir ve mesaj kuyruğu sistemlerinizi daha verimli hale getirebilirsiniz. RabbitMQ’nun gücünden faydalanarak, uygulamanızdaki bileşenler arasında güçlü bir iletişim sağlayabilirsiniz.
Unutmayın! RabbitMQ, büyük ölçekli dağıtık sistemlerde en önemli araçlardan biridir. Bu yüzden kurulumunuzu doğru yapıp, RabbitMQ'nun sunduğu tüm avantajlardan yararlanmak için her adımı dikkatlice takip edin.