Pertama-tama, Anda perlu memahami item mana dalam daftar Anda yang memiliki batas skala yang mungkin Anda tekan, dan mana yang tidak. Beberapa di antaranya tergantung pada implementasi sehingga sangat membantu untuk membaca internal, misalnya buku RabbitMQ in Action.
Jumlah antrian dibatasi oleh RAM Anda. Jumlah pesan yang dimainkan, di sisi lain, tidak dibatasi oleh RAM karena RabbitMQ secara otomatis mengeluarkannya ke disk. Suatu kali saya secara tidak sengaja mendapat hampir 8 juta pesan yang dimainkan di server pengembangan ketika saya tidak memperhatikan.
Juga tidak ada batasan untuk ukuran pesan, tetapi Anda benar-benar harus berpikir dua kali jika ukuran satu pesan melebihi 512 ribu. Saya akhirnya menggunakan cache memori untuk mengirimkan objek besar di antara aplikasi dan hanya mengirim pesan kontrol yang lebih kecil yang menyertakan kunci memcache. Tetapi jika Anda benar-benar ingin, Anda dapat mengirim JPEG besar dan objek biner seperti file JAR sebagai pesan.
Jumlah pelanggan adalah batas OS karena pelanggan membutuhkan setidaknya satu soket TCP terbuka. Tentu saja itu bisa disetel di sebagian besar OS, jadi jarak tempuh Anda akan bervariasi dan itulah sebabnya Anda harus menguji model Anda. Saya telah menggunakan JMETER untuk memuat uji aplikasi web kami dan saya baru saja menemukan plugin AMQP ini https://github.com/jlavallee/JMeter-Rabbit-AMQP tetapi belum menggunakannya. Bagaimanapun, ini adalah jenis pengujian yang akan dengan cepat memberi tahu Anda apa yang akan ditangani oleh perangkat keras Anda (atau konfigurasi VM).
Satu-satunya hal yang sulit yang Anda miliki adalah menguji sejumlah besar konsumen ke antrian fanout. Anda mungkin juga ingin membandingkan menggunakan pertukaran topik, dengan konsumen yang berlangganan menggunakan kunci pengikat wildcard (*) yang mencapai hasil akhir yang sama. Cobalah untuk menjalankan tes ini dengan sebanyak mungkin mesin yang berbeda untuk memastikan bahwa Anda tidak mengalami hambatan yang disebabkan oleh satu server yang menjalankan proses konsumen. PS yang terlihat seperti plugin Jmeter mungkin juga berguna untuk mensimulasikan konsumen.