ActiveMQ
ActiveMQ bağlantısı kullanan eylemler/konnektörler için, ActiveMQ bağlantısının ayarlarının yapıldığı ekrandır.
ActiveMQ ayarlarını içeren görsele aşağıda yer verilmiştir:
ActiveMQ konfigürasyonu için kullanılan alanlar aşağıdaki tabloda görülmektedir.
Alan | Açıklama |
---|---|
Etkin (Enabled) | Ayarın aktiflik durumunu belirtir. |
Adı (Name) | Yapılacak ayarın ad bilgisidir. |
Açıklama (Description) | Açıklama girilebilir. |
ActiveMQ Bağlantı Protokol Tipi (ActiveMQ Connection Protocol Type) | ActiveMQ'ye AMQP protokolü ile mi yoksa TCP protokolü ile mi bağlantı kurulacağının seçimi için kullanılır. |
Broker URL | ActiveMQ kurulu olduğu hedef bağlantı URL'sidir. |
Kullanıcı Adı (Username) | ActiveMQ bağlanmak için gerekli kullanıcı adı bilgisidir. |
Parola (Password) | ActiveMQ bağlanmak için gerekli parola bilgisidir. |
Hedef Tipi (Destination Type) | Hedefin Kuyruk(Queue) mu, Topic mi olduğu seçmek için kullanılır. |
Hedef Adı (Destination Name) | Hedef Kuyruk(Queue) ise kuyruk adı, Topic ise topic adıdır. |
Oturum Onayı (Session Acknowledgement) | Oturum Onayının nasıl yapılması gerektiğini belirtir. |
Client ID | Bağlantılarda JMS clientId değerinin ayarlanması için kullanılır. |
Gönderme Zaman Aşımı (Send Timeout) | Gönderme zaman aşımı değeridir. |
İstek Zaman Aşımı Süresi (Request Timeout) | Bağlantı tipi AMQP ise istek zaman aşımı değerini belirtir. Eğer bağlantı tipi TCP seçilmiş ise Broker URL değerine "requestTimeout" parametresi olarak eklenmelidir. |
Zaman Aşımını Kapatma Süresi (Close Timeout) | Bir Bağlantının kapanmasından önce, bağlantının temiz bir şekilde kapatılması için ne kadar süre bekleyeceğini kontrol etmek için kullanılan kapatma zaman aşımını ayarlar. Negatif bir değer sonsuza kadar beklemek anlamına gelir. |
Bağlantı Zaman Aşımı Süresi (Connect Timeout) | Bağlantı tipi AMQP ise bir istemcinin, denemenin başarısız olduğunu düşünmeden önce, uzak eşle başarılı bir bağlantı kurulması için ne kadar süre bekleyeceğini kontrol etmek için kullanılan zaman aşımı değerini ayarlar. Eğer bağlantı tipi TCP seçilmiş ise Broker URL değerine "connectTimeout" parametresi olarak eklenmelidir. |
İçerik Türü (Content Type) | Gönderilecek olan verinin contentType değerinin girildiği yerdir. |
İçerik Kodlama (Content Encoding) | Gönderilecek olan verinin contentEncoding değerinin girildiği yerdir. |
BROKER URL için Örnekler
AMQP URL Örnekleri
Senaryo | URL Örneği | Açıklama |
---|---|---|
Basit Bağlantı | amqp://localhost:5672 | En temel AMQP bağlantısı |
Kimlik Doğrulamalı | amqp://user:password@localhost:5672 | Kullanıcı adı ve şifre ile bağlantı |
SSL/TLS | amqps://secure-broker.example.com:5671 | Güvenli AMQP bağlantısı |
Çoklu Broker | amqp://broker1:5672,amqp://broker2:5672 | Birden fazla broker'a bağlantı |
Timeout Ayarlı | amqp://localhost:5672?transport.connectTimeout=30000&transport.requestTimeout=30000 | Timeout değerleri belirlenmiş |
SSL ve Failover | amqps://broker:5671?transport.trustStoreLocation=/path/truststore.jks&failover.maxReconnectAttempts=5 | SSL ve yeniden bağlanma ayarlı |
Prefetch Ayarlı | amqp://broker:5672?jms.prefetchPolicy.all=1000 | Mesaj ön yükleme ayarlı |
Çok Özellikli | amqp://broker:5672?jms.prefetchPolicy.all=1000&amqp.idleTimeout=30000&transport.connectTimeout=30000 |
TCP URL Örnekleri
Senaryo | URL Örneği | Açıklama |
---|---|---|
Basit Bağlantı | tcp://localhost:61616 | En temel TCP bağlantısı |
Kimlik Doğrulamalı | tcp://user:password@localhost:61616 | Kullanıcı adı ve şifre ile bağlantı |
Timeout Ayarlı | tcp://localhost:61616?soTimeout=30000&soWriteTimeout=30000 | Timeout değerleri belirlenmiş |
Basit Failover | failover:(tcp://broker1:61616,tcp://broker2:61616) | Temel failover yapılandırması |
SSL ile | ssl://secure-broker:61617?needClientAuth=true&keyStore=/path/keystore.jks | SSL sertifikalı bağlantı |
Performans Optimizasyonlu | tcp://localhost:61616?tcpNoDelay=true&socketBufferSize=65536 | Performans için optimize edilmiş |
Yüksek Kullanılabilirlik | failover:(tcp://primary:61616,tcp://backup:61616)?maxReconnectAttempts=-1 | Yüksek kullanılabilirlik için ayarlanmış |
Tam Failover | failover:(tcp://broker1:61616,tcp://broker2:61616)?initialReconnectDelay=1000&maxReconnectDelay=30000&maxReconnectAttempts=5 | Detaylı failover ayarları |
Üretim Ortamı | failover:(tcp://prod1:61616,tcp://prod2:61616)?randomize=true&priorityBackup=true&useExponentialBackOff=true | Üretim ortamı için optimize edilmiş |
Önemli Parametreler ve Değerleri
Parametre Tipi | Parametre | Örnek Değer | Açıklama |
---|---|---|---|
Timeout | soTimeout | 30000 | Socket okuma timeout (ms) |
Timeout | soWriteTimeout | 30000 | Socket yazma timeout (ms) |
Failover | maxReconnectAttempts | 5 | Maksimum yeniden bağlanma denemesi |
Failover | initialReconnectDelay | 1000 | İlk bağlanma gecikmesi (ms) |
Performans | tcpNoDelay | true | TCP Nagle algoritması devre dışı |
Performans | socketBufferSize | 65536 | Socket buffer boyutu (bytes) |
Prefetch | jms.prefetchPolicy.queuePrefetch | 1000 | Queue için ön yükleme sayısı |
Prefetch | jms.prefetchPolicy.topicPrefetch | 1000 | Topic için ön yükleme sayısı |
SSL | needClientAuth | true | Client sertifikası gerekli |
SSL | verifyHost | true | Host doğrulama aktif |
Yaygın Kullanım Senaryoları
Senaryo | Protokol | Önerilen URL |
---|---|---|
Development | AMQP | amqp://localhost:5672 |
Development | TCP | tcp://localhost:61616 |
Test | AMQP | failover:(amqp://test1:5672,amqp://test2:5672)?failover.maxReconnectAttempts=3 |
Test | TCP | failover:(tcp://test1:61616,tcp://test2:61616)?maxReconnectAttempts=3 |
Production | AMQP | amqps://prod:5671?transport.trustStoreLocation=/certs/truststore.jks&failover.maxReconnectAttempts=-1 |
Production | TCP | failover:(tcp://prod1:61616,tcp://prod2:61616)?randomize=true&maxReconnectAttempts=-1 |
Yüksek Güvenlik | AMQP | amqps://secure:5671?transport.verifyHost=true&transport.trustStoreLocation=/certs/truststore.jks |
Yüksek Güvenlik | TCP | ssl://secure:61617?needClientAuth=true&keyStore=/certs/keystore.jks |
Yüksek Performans | AMQP | amqp://fast:5672?jms.prefetchPolicy.all=2000&amqp.maxFrameSize=1048576 |
Yüksek Performans | TCP | tcp://fast:61616?tcpNoDelay=true&socketBufferSize=131072&wireFormat.maxFrameSize=104857600 |