Genel Bakış
Amacı Nedir?
Amacı Nedir?
Merkezi Yönetim
Connection (Bağlantı), ActiveMQ broker’larına güvenilir erişim sağlayarak mesaj gönderme ve alma işlemlerini merkezileştirir.
Yeniden Kullanılabilirlik
Farklı Integration Flow adımlarında yeniden kullanılabilir bağlantı parametreleri sunarak yapılandırma tekrarını ortadan kaldırır.
Ortam Bazlı Yönetim
Ortam bazlı yönetimle Development, Test ve Production arasında tutarlı dağıtım (Deployment) süreçleri sağlar.
Performans ve Dayanıklılık
Gelişmiş timeout ve pool yönetimi sayesinde yüksek trafikli senaryolarda performans ve dayanıklılık kazandırır.
Çalışma Prensibi
Çalışma Prensibi
Bağlantı Başlatma
Integration Flow veya Connector içerisinden Message Queue bağlantısı talep edildiğinde, sistem yapılandırılmış connection parametrelerini okur.
Connection Pool Yönetimi
Aktif connection pool stratejisiyle önceden açılmış bağlantılar yeniden kullanılır; pool doluysa yeni connection oluşturulur.
Kimlik Doğrulama
Temel Authentication mekanizmasıyla (kullanıcı adı/şifre) veya opsiyonel SSL/TLS sertifika doğrulamasıyla broker’a kimlik doğrulaması yapılır.
Veri İletişimi
AMQP/TCP protokolü üzerinden Queue veya Topic hedefine JMS mesajları senkron/asenkron olarak iletilir ya da tüketilir.
Bağlantı Yönetimi
İşlem tamamlandığında bağlantı pool’a geri döner; pasif bağlantılar pool politikalarına göre kapatılır.
Hata Yönetimi
Bağlantı hatası, timeout veya authentication hatası durumunda hata ayrıntıları loglanır sistem otomatik yeniden deneme ve kullanıcıya uyarı mesajı üretir.
Kullanım Alanları
Kullanım Alanları
Asenkron Mesaj Kuyruğu
Uygulama bileşenlerinin ActiveMQ üzerinden asenkron mesaj kuyruğu işlemleri yürütmesi.
Güvenilir Mesaj Yayını
Queue veya Topic tabanlı entegrasyonlarda güvenilir mesaj yayını ve tüketimi.
Yüksek Hacimli Mesaj Senaryoları
İş zekâsı, bildirim veya entegrasyon servislerinde yüksek hacimli mesaj senaryoları.
Mikroservisler Arası İletişim
Mikroservisler arası iletişimde AMQP tabanlı olay paylaşımı.
Legacy JMS Entegrasyonu
Legacy JMS uygulamalarını modern Integration Flow adımlarına dahil etme.
Teknik Özellikler ve Yetenekler
Temel Özellikler
Protokol Esnekliği: AMQP veya TCP protokolü seçimiyle farklı ActiveMQ dağıtımlarına uygun bağlantı sağlar. Destination Yönetimi: Queue veya Topic destinasyonlarını tek ekran üzerinden yönetir, gerekli kimlik bilgileriyle birlikte saklar. Oturum Onayı Politikası: AUTO_ACKNOWLEDGE varsayılanı ile hızlı entegrasyon; CLIENT_ACKNOWLEDGE veya TRANSACTED ile gelişmiş kontrol sunar. Ortam Bazlı Yapılandırma: Her ortam (Development, Test, Production) için ayrı connection parametreleri tanımlama imkanı. Enable/Disable Kontrolü: Connection’ı aktif veya pasif hale getirme (enable/disable toggle). Pasif durumda bağlantı kullanılamaz ancak yapılandırması saklanır.İleri Düzey Özellikler
Timeout Yönetimi: Bağlanma, istek yanıtlama ve mesaj gönderme süreleri milisaniye cinsinden hassas ayarlanabilir. İçerik Özelleştirme: Content-Type ve Content-Encoding alanlarıyla mesaj meta verisi standartlaştırılır. Client ID Tanımlama: JMS ClientID desteği sayesinde kalıcı abonelik veya dayanıklı tüketici senaryoları mümkün olur. Connection Test Özelliği: “Test Connection” butonu ile bağlantı parametrelerini kaydetmeden önce doğrulama imkanı. Export/Import Özelliği: Connection yapılandırmasını ZIP dosyası olarak export etme. Farklı ortamlara (Development, Test, Production) import etme. Versiyon kontrolü ve yedekleme imkanı. Connection Monitoring: Bağlantı sağlığı, pool durumu ve performans metriklerini izleme.Connection Parametreleri
Zorunlu Parametreler
Zorunlu Parametreler
Name
Açıklama: Connection adı (benzersiz olmalı)
Örnek Değer:
Notlar: Boşlukla başlamaz, özel karakterler kullanılmamalı
Örnek Değer:
Production_ActiveMQNotlar: Boşlukla başlamaz, özel karakterler kullanılmamalı
Broker URL
Açıklama: ActiveMQ broker erişim adresi
Örnek Değer:
Notlar: Protokol (amqp/tcp) ve port değerini içerir
Örnek Değer:
tcp://mq.prod.local:61616Notlar: Protokol (amqp/tcp) ve port değerini içerir
Username
Açıklama: ActiveMQ erişim kullanıcı adı
Örnek Değer:
Notlar: Yetkilendirilmiş hesap kullanılmalı
Örnek Değer:
mq_service_userNotlar: Yetkilendirilmiş hesap kullanılmalı
Password
Açıklama: Kullanıcıya ait şifre
Örnek Değer:
Notlar: Şifre saklama için secret manager kullanılmalı
Örnek Değer:
********Notlar: Şifre saklama için secret manager kullanılmalı
Destination Type
Açıklama: Queue veya Topic seçimi
Örnek Değer:
Notlar: Enum değerleri: QUEUE, TOPIC
Örnek Değer:
QUEUENotlar: Enum değerleri: QUEUE, TOPIC
Destination Name
Açıklama: Mesaj kuyruğu veya topic adı
Örnek Değer:
Notlar: Namespace kuralına uyulmalı
Örnek Değer:
order.events.queueNotlar: Namespace kuralına uyulmalı
ActiveMQ Connection Protocol Type
Açıklama: Kullanılacak bağlantı protokolü
Örnek Değer:
Notlar: Enum değerleri: AMQP, TCP
Örnek Değer:
AMQPNotlar: Enum değerleri: AMQP, TCP
Session Acknowledgement
Açıklama: JMS oturum onay tipi
Örnek Değer:
Notlar: Enum değerleri: AUTO_ACKNOWLEDGE, CLIENT_ACKNOWLEDGE, SESSION_TRANSACTED, DUPS_OK_ACKNOWLEDGE
Örnek Değer:
AUTO_ACKNOWLEDGENotlar: Enum değerleri: AUTO_ACKNOWLEDGE, CLIENT_ACKNOWLEDGE, SESSION_TRANSACTED, DUPS_OK_ACKNOWLEDGE
Environment Id
Açıklama: Ortam seçimi referansı
Örnek Değer:
Notlar: Ortam listesi Environment servisinden gelir
Örnek Değer:
env-prod-01Notlar: Ortam listesi Environment servisinden gelir
İsteğe Bağlı Parametreler
İsteğe Bağlı Parametreler
Send Timeout
Açıklama: Mesaj gönderimi için bekleme süresi
Varsayılan Değer: 60000
Önerilen Değer: 30000 - 120000 aralığında ihtiyaca göre
Varsayılan Değer: 60000
Önerilen Değer: 30000 - 120000 aralığında ihtiyaca göre
Request Timeout
Açıklama: Yanıt bekleme süresi
Varsayılan Değer: 60000
Önerilen Değer: Kritik işlemler için 45000
Varsayılan Değer: 60000
Önerilen Değer: Kritik işlemler için 45000
Close Timeout
Açıklama: Bağlantıyı kapatma süresi
Varsayılan Değer: 60000
Önerilen Değer: Uzun oturumlar için 90000
Varsayılan Değer: 60000
Önerilen Değer: Uzun oturumlar için 90000
Connect Timeout
Açıklama: Broker’a bağlanma süresi
Varsayılan Değer: 60000
Önerilen Değer: Yüksek gecikmeli ağlarda 90000 ms
Varsayılan Değer: 60000
Önerilen Değer: Yüksek gecikmeli ağlarda 90000 ms
Content Type
Açıklama: Mesaj içerik tipi
Varsayılan Değer: application/json
Önerilen Değer: İş yüküne göre application/xml
Varsayılan Değer: application/json
Önerilen Değer: İş yüküne göre application/xml
Content Encoding
Açıklama: Mesaj karakter seti
Varsayılan Değer: UTF-8
Önerilen Değer: Standart UTF-8 kullanımı önerilir
Varsayılan Değer: UTF-8
Önerilen Değer: Standart UTF-8 kullanımı önerilir
Client ID
Açıklama: Kalıcı abonelik kimliği
Varsayılan Değer: durable-consumer-1
Önerilen Değer: Durable topic aboneliklerinde zorunlu
Varsayılan Değer: durable-consumer-1
Önerilen Değer: Durable topic aboneliklerinde zorunlu
Timeout ve Connection Pool Parametreleri
Connection Timeout
Açıklama: Bağlantı kurulması için maksimum bekleme süresi
Varsayılan: 60000
Min: 1000 | Max: 180000
Birim: milisaniye
Varsayılan: 60000
Min: 1000 | Max: 180000
Birim: milisaniye
Request Timeout
Açıklama: İstek yanıtı için maksimum bekleme süresi
Varsayılan: 60000
Min: 1000 | Max: 180000
Birim: milisaniye
Varsayılan: 60000
Min: 1000 | Max: 180000
Birim: milisaniye
Pool Size
Açıklama: Connection pool’daki maksimum bağlantı sayısı
Varsayılan: 10
Min: 1 | Max: 200
Birim: adet
Varsayılan: 10
Min: 1 | Max: 200
Birim: adet
Send Timeout
Açıklama: Mesaj gönderiminin en uzun sürmesi beklenen süre
Varsayılan: 60000
Min: 5000 | Max: 180000
Birim: milisaniye
Varsayılan: 60000
Min: 5000 | Max: 180000
Birim: milisaniye
Kullanım Senaryoları
Sipariş Kuyruğu Tüketimi
Durum: Yeni sipariş mesajları ActiveMQ kuyruğuna düşüyor
Çözüm: Destination Type=QUEUE, Destination Name=order.events.queue, Protocol=AMQP
Beklenen Davranış: Integration Flow sipariş mesajlarını sıralı tüketir
Çözüm: Destination Type=QUEUE, Destination Name=order.events.queue, Protocol=AMQP
Beklenen Davranış: Integration Flow sipariş mesajlarını sıralı tüketir
Canlı Bildirim Yayını
Durum: Websocket bildirimleri topic üzerinden dağıtılacak
Çözüm: Destination Type=TOPIC, Destination Name=notifications.topic, ClientID=notif-producer
Beklenen Davranış: Tüm aboneler gerçek zamanlı bildirim alır
Çözüm: Destination Type=TOPIC, Destination Name=notifications.topic, ClientID=notif-producer
Beklenen Davranış: Tüm aboneler gerçek zamanlı bildirim alır
Yüksek Güvenlikli Broker
Durum: Production broker sadece SSL kabul ediyor
Çözüm: Protocol=TCP, Broker URL=ssl://mq.prod.local:61617, SSL sertifika ekleri
Beklenen Davranış: Şifreli bağlantı başarılı kurulur
Çözüm: Protocol=TCP, Broker URL=ssl://mq.prod.local:61617, SSL sertifika ekleri
Beklenen Davranış: Şifreli bağlantı başarılı kurulur
Uzun Süreli İşlem
Durum: Batch job büyük mesaj paketleri gönderiyor
Çözüm: Send Timeout=120000, Request Timeout=120000, Pool Size=30
Beklenen Davranış: Mesaj gönderimi kesintisiz tamamlanır
Çözüm: Send Timeout=120000, Request Timeout=120000, Pool Size=30
Beklenen Davranış: Mesaj gönderimi kesintisiz tamamlanır
Test Ortamı Simülasyonu
Durum: Test broker düşük kaynaklı
Çözüm: Pool Size=5, Request Timeout=45000, Content Type=application/json
Beklenen Davranış: Kaynak kullanımı optimize edilir, test stabil çalışır
Çözüm: Pool Size=5, Request Timeout=45000, Content Type=application/json
Beklenen Davranış: Kaynak kullanımı optimize edilir, test stabil çalışır
Disaster Recovery
Durum: Yedek broker’a geçiş gerekliliği
Çözüm: Broker URL ikincil adrese güncellenir, Enable toggle ile aktif edilir
Beklenen Davranış: Trafik kesintisiz şekilde yedek broker’a kayar
Çözüm: Broker URL ikincil adrese güncellenir, Enable toggle ile aktif edilir
Beklenen Davranış: Trafik kesintisiz şekilde yedek broker’a kayar
Connection Yapılandırma
Yeni Apache ActiveMQ Oluşturma

Yapılandırma Adımları
1
Oluşturma Sayfasına Gitme
- Sol menüden Connection → Apache ActiveMQ bölümüne gidin.
- Sağ üstteki [+ Create] butonuna tıklayın.
2
Temel Bilgileri Girme
Enable Status (Aktif Durumu):Toggle ile aktif/pasif durumu ayarlayın. Yeni connection’lar varsayılan olarak aktiftir.Name (İsim) Zorunlu:Örnek:
Production_ActiveMQ- Benzersiz isim girin, boşlukla başlamaz.
- Sistem otomatik kontrol eder. Yeşil tik: kullanılabilir. Kırmızı çarpı: mevcut isim.
- Maks. 1000 karakter.
- Connection’ın amacını açıklayın.
Sayfanın üst kısmındaki işlem butonları alanında, [<> Variable] butonunu kullanarak dinamik değer seçebilir, global variable ifadeleri sayesinde connection parametrelerini sabit değer yerine değişken tabanlı yönetebilirsiniz. Detaylı bilgi için Dinamik Değişkenler sayfasını inceleyebilirsiniz.
3
Environment (Ortam) Seçimi
- Dropdown menüden ortam seçin: Development, Test, veya Production.
- Her ortam için farklı connection parametreleri tanımlanabilir.
4
ActiveMQ Temel Parametreleri
- Broker URL, ActiveMQ Connection Protocol Type, Destination Type, Destination Name alanlarını girin.
- Broker URL’si AMQP/TCP şemasına uygun olmalı; destinasyon tipi Queue veya Topic olarak seçilmelidir.
5
Mesajlaşma Oturumu ve İçerik Ayarları
- Session Acknowledgement tipini JMS stratejinize göre belirleyin. Opsiyonel olarak Content Type, Content Encoding, Client ID alanlarını doldurun.
- Durable topic aboneliklerinde Client ID gereklidir.
6
Timeout ve Connection Pool Ayarları
- Send Timeout, Request Timeout, Connect Timeout, Close Timeout değerlerini milisaniye olarak girin.
- Yoğun trafik için pool boyutlarını ve süreleri optimize edin.
7
Güvenlik ve Authentication Ayarları
- Username ve Password alanlarını doldurun. SSL/TLS gereksinimleri varsa broker URL’sini ssl:// ile yapılandırın ve gerekli sertifikaları Environment deposuna ekleyin.
8
Test Connection
- [Test Connection] butonuna tıklayın.
- Bağlantı parametrelerinin doğru olup olmadığını test edin.
- Başarılı: Yeşil onay mesajı, Başarısız: Hata detayları gösterilir.
9
Kaydetme
- Sağ üstteki [Save and Deploy] butonuna tıklayın.
- Benzersiz isim
- Zorunlu alanlar dolu
- Test connection başarılı (önerilir)
- Connection listeye eklenir.
- Integration Flow ve Connector adımlarında kullanılabilir hale gelir.
- Ortama göre aktif olur.
Connection’ı Silme
Connection’ı silmek için:Yöntem 1: View Ekranından
- Connection’ın view ekranına gidin.
- Sağ üstteki [Delete] butonuna tıklayın.
- Onay dialogunda silme işlemini onaylayın.
Yöntem 2: Liste Ekranından
- Connection listesinde satır sonundaki ⋮ menüsünden Delete seçeneğini tıklayın.
- Onay dialogunda silme işlemini onaylayın.
Silme İpuçları
Silmeden Önce Kontrol Edin:
- Integration Flow veya Connector adımlarında kullanılıyor olabilir.
- Gerekirse alternatif bir connection atayın.
- Silmeden önce Export ile yedek alın.
Alternatif: Deaktif Etme
- Silmek yerine view ekranından [Disabled] butonunu kullanın.
- Connection pasif olur ancak silinmez.
- Gerektiğinde [Enabled] butonu ile yeniden etkinleştirilebilir.
Connection’ı Dışa/İçe Aktarma
Bu adımda kullanıcı, mevcut connection’ları yedekleme, farklı ortamlara taşıma veya paylaşma amacıyla dışa aktarabilir (export) ya da daha önce dışa aktarılmış bir connection’ı tekrar içe aktarabilir (import). Bu işlem, sürüm yönetimi, test ve üretim ortamları arasında geçiş veya ekipler arası paylaşım süreçlerinde veri bütünlüğünü korumak için kullanılır.
Dışa Aktarma (Export)
Dışa Aktarma (Export)
Yöntem 1: View Ekranından
- Connection’ın view ekranına gidin.
- Sağ üstteki [Export] butonuna tıklayın.
- ZIP dosyası otomatik olarak indirilir.
Yöntem 2: Liste Ekranından
- Connection listesinde satır sonundaki ⋮ menüsünden Export seçeneğini tıklayın.
- ZIP dosyası otomatik olarak indirilir.
Dosya Formatı
Format:
Örnek:
{Date}-activemq-integration-{ConnectionName}-export.zipÖrnek:
13 Nov 2025-activemq-integration-Production_ActiveMQ-export.zipZIP İçeriği
- Connection JSON dosyası
- Metadata bilgileri
- Bağımlılık bilgileri (örneğin sertifikalar, key store)
Kullanım Alanları
- Yedekleme
- Ortamlar arası taşıma (Test → Prod)
- Versiyonlama
- Ekip veya proje bazlı paylaşım
İçe Aktarma (Import)
İçe Aktarma (Import)
İçe Aktarma Adımları
- Ana listede [Import Apache ActiveMQ] butonuna tıklayın.
- İndirilen ZIP dosyasını seçin.
- Sistem kontrolleri: Format geçerli mi? İsim çakışması var mı? Bağımlılıklar mevcut mu?
- Ardından [Import] butonuna tıklayın.
İçe Aktarma Senaryoları
Senaryo 1: İsim Çakışması → Eski connection’ın üzerine yazın veya yeni bir isimle oluşturun.Senaryo 2: Eksik Bağımlılıklar → Eksik sertifikaları veya key store’ları önce oluşturun veya import sırasında çıkarın.
Connection’ın Kullanım Alanları
Connection Oluşturma ve Aktif Etme
Adımlar:
- Connection’ı oluşturun.
- Test Connection ile bağlantıyı doğrulayın.
- Save and Deploy ile kaydedin ve etkinleştirin.
- Connection’ın Enabled durumda olduğundan emin olun.
- View ekranından connection bilgilerini görüntüleyebilirsiniz.
Connection Görüntüleme ve Yönetim
- View ekranından connection’ın tüm yapılandırma bilgilerini görüntüleyebilirsiniz.
- View ekranından Edit, Enable/Disable, Delete ve Export işlemlerini gerçekleştirebilirsiniz.
- Connection durumunu anlık olarak kontrol edebilirsiniz.
Integration / Connector Adımlarında Kullanım
- Mesaj kuyruğu (queue), topic, e-posta, FTP/SFTP, LDAP veya benzeri dış sistemlerle iletişim isteyen adımlarda connection seçilir.
- Örnek: “Send Message”, “Consume Message”, “Upload File”, “Read Directory” gibi adımlar.
- Bağlantı seçimi bu adımların yapılandırmasında yer alan Connection alanından yapılır.
Scheduled Job Kullanımı
- Zamanlanmış görevlerde (ör. belirli aralıklarla mesaj gönderme, dosya işleme vb.) bağlantı seçilerek dış sistemlere erişim sağlanır.
- Connection değiştiğinde, job çalışma davranışı da buna göre güncellenir.
Test Amaçlı Kullanım
- Connection Test özelliği ile bağlantının doğruluğu Integration Flow’dan bağımsız olarak kontrol edilebilir.
- Bu test hata ayıklama sürecinde kritik önem taşır.
- View ekranından connection bilgilerini kontrol ederek test sonuçlarını doğrulayabilirsiniz.
Connection Durum Yönetimi
- View ekranından Enable/Disable butonları ile connection durumunu hızlıca değiştirebilirsiniz.
- Pasif connection’lar Integration Flow’larda kullanılamaz.
- Durum değişiklikleri anında uygulanır ve connection listesinde görüntülenir.

