2009-04-01 20 views
5

ActiveMQ'da İleti Gruplama özelliğini kim kullandı? ActiveMQ ileti gruplandırması performansı

http://activemq.apache.org/message-groups.html

Bu benim üzerinde çalıştığım bir proje için gerçekten yararlı bir özellik olurdu ama ne kadar iyi bu özellik ölçekleri ve gerçekleştirir merak ediyorum. Sistemimizde, iletileri yaklaşık 3-5 iletiden oluşan gruplara ayırmamız gerekecek, bu nedenle süreç devam ederken sürekli olarak gruplar ekliyor olacağız. Bu durumda, sonuçta tüm grupları depolamaya çalışan bellek tükendi gibi görünüyor.

Herhangi bir deneyim/düşünce/artı/ekseri ile ilgileniyorum.

cevap

7

Pek çok projede Mesaj Grupları kullandım ve harika çalışıyor. Tam açıklama olsa da, Mesaj Grupları için zorlayanlardan biriydim ve ilk uygulama çalışmasının çoğunu yaptım.

İleti Grupları kullanım durumu, büyük konu hiyerarşilerinin bölümlendirilmesinden geldi; finansal hisse senedi sembolleri ve benzerleri ile uğraşmak gibi. Mesaj gruplarının çok ince taneli korelasyon ifadeleri (JMSXGroupID dizeleri) kullanabilmelerini istedik - böylece tarih, stok sembolü ve ürün türünü groupID olarak kullanabiliriz - veya müşteri veya ticari işlem kimliği veya her neyse.

Her grup kimliği dizgesini bellekte tutmaya çalışmaktan kaçınmak için, varsayılan sağlayıcı karma kutuları kullanır; böylece tek tek dizeleri değil, yalnızca karma kutularının eşlemelerini tüketicilerle eşleştiririz. Bu yüzden kullanmak istediğiniz kadar çok grup kimliğine ölçeklendiriyor! Aynı zamanda, eski mesaj grubu kimliklerini 'temizlemek' anlamına da gelmiyor demektir.

+2

'JMSXGroupID' bazılarının 3345'e eşit olduğunu varsayalım. Daha sonra JMSXGroupID = 3345 olan tüm mesajlar aynı tüketici. Ancak dinamik olarak yeni bir tüketici eklediğimi farzediyorum: activeMq 3345 mesajını aynı eski tüketiciye göndermeyi garanti ediyor (siz de id'in karmasını sakladığını söylediğiniz gibi). Teşekkürler. – Trying

+0

Neden her GroupID dizesinin yerini alma karma kullanılmasının etkili olacağını anlamıyorum? Karma değeri çok mu küçük? Ama her gün bir milyon yeni GroupID'im varsa ne olur? – flycee