Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 216172|Jawab: 69

[Program Konsol] Contoh operasi .NET/C# ActiveMQ [Kode sumber]

  [Salin tautan]
Diposting pada 27/07/2017 13.19.10 | | | |

Ringkasan informasi tentang ActiveMQ dan RabbitMQ
http://www.itsvse.com/thread-4659-1-1.html
(Sumber: Architect_Programmer)

Karena proyek membutuhkan beberapa data untuk didorong dan diterima, karena jumlah datanya relatif besar, sekitar 3 juta data sehari

Pada awalnya, saya menggunakan http post untuk mengirimkan data, tetapi menemukan bahwa itu terlalu lambat, dan kecepatan pengirimannya jauh lebih kecil daripada kecepatan penerimaan.

Oleh karena itu, jika Anda ingin menggunakan koneksi soket yang panjang untuk mendorong dan menerima data, tulis sendiri server dan klien soket, satu adalah buang-buang waktu, tetapi mungkin tidak dilakukan dengan baik

Terakhir, activemq digunakan untuk mendorong dan menerima data

Pertama, kode produser adalah sebagai berikut:



Konsumen, ada dua model:

1: Langganan biasa, tidak perlu "berlangganan" terus-menerus, yaitu, saat terhubung, Anda dapat menerima pesan, dan Anda tidak dapat menerima pesan sebelum terhubung, menggunakan "CreateConsumer"
2: Langganan persisten, setelah terhubung, Anda dapat menerima data yang belum pernah didorong sebelumnya, menggunakan "CreateDurableConsumer"


Tautan ke pengenalan CreateDurableConsumer:Login hyperlink terlihat.

Buat langganan persisten yang tidak dibagikan pada topik yang ditentukan jika belum ada, dan buat konsumen pada langganan persisten tersebut. Metode ini membuat langganan persisten tanpa menggunakan pemilih pesan, dan nilai noLocal adalah false.
Aplikasi menggunakan langganan persisten, dan aplikasi perlu menerima semua pesan yang diterbitkan pada topik tersebut, termasuk pesan yang diterbitkan ketika tidak ada konsumen aktif yang terkait dengannya. Penyedia JMS menyimpan catatan langganan persisten ini dan memastikan bahwa semua pesan dari penerbit subjek akan disimpan hingga dikirimkan ke konsumen dan dikonfirmasi oleh langganan persisten tersebut hingga kedaluwarsa.

Langganan persisten terus mengakumulasi pesan hingga dihapus menggunakan metode berhenti berlangganan.

Metode ini hanya dapat digunakan dengan langganan persisten yang tidak dibagikan. Setiap langganan persisten yang dibuat menggunakan metode ini tidak akan dibatalkan. Ini berarti bahwa hanya satu konsumen aktif (yaitu, tidak tertutup) yang dapat ada pada langganan pada satu waktu. Istilah "konsumen" di sini menunjukkan objek TopicSubscriber, MessageConsumer, atau JMSConsumer di klien apa pun.

Langganan persisten yang tidak dibagikan diidentifikasi dengan nama yang ditentukan klien dan pengidentifikasi klien yang harus diatur. Aplikasi yang kemudian ingin membuat konsumen pada langganan persisten yang tidak dibagikan harus menggunakan pengidentifikasi klien yang sama.

Jika langganan persisten yang tidak dibagikan dengan nama dan pengidentifikasi klien yang sama sudah ada, dan topik, pemilih pesan, dan nilai noLocal yang sama sudah ditentukan, dan tidak ada konsumen yang sudah aktif (yaitu, tidak ditutup) pada langganan persisten, metode ini membuat langganan tahan lama yang ada di MessageConsumer.

Jika langganan persisten yang tidak dibagikan dengan nama dan pengidentifikasi klien yang sama sudah ada, dan ada konsumen pada langganan persisten yang sudah aktif (yaitu, tidak ditutup), JMSException akan dilemparkan.

Jika sudah ada langganan persisten yang tidak dibagikan dengan nama dan pengidentifikasi klien yang sama tetapi subjek yang berbeda, pemilih pesan atau nilai noLocal telah ditentukan, dan tidak ada konsumen yang sudah aktif (yaitu tidak ditutup) pada langganan persisten, maka ini setara dengan berhenti berlangganan (menghapus) yang lama dan membuat yang baru.

Langganan persisten bersama dan tidak bersama mungkin tidak memiliki nama dan identitas klien yang sama. Jika langganan persisten bersama dengan nama dan pengidentifikasi klien yang sama sudah ada, JMSException akan dilemparkan.

Tidak ada batasan untuk langganan persisten dan langganan non-persisten bersama dengan nama dan clientId yang sama. Langganan semacam itu akan sepenuhnya terpisah.

Metode ini sama dengan metode createDurableSubscriber yang sesuai, kecuali bahwa metode ini mengembalikan MessageConsumer, bukan TopicSubscriber untuk mewakili konsumen.

Parameter:
Tema - Langganan topik non-sementara
name - Nama yang digunakan untuk mengidentifikasi langganan ini
Melempar:
InvalidDestinationException - Jika topik tidak valid ditentukan.
IllegalStateException - Jika ID tamu tidak diatur
JMSException -
Jika sesi gagal membuat langganan persisten yang tidak dibagikan dan MessageConsumer karena beberapa kesalahan internal
Jika langganan persisten yang tidak dibagikan dengan nama dan pengidentifikasi klien yang sama sudah ada, dan konsumen sudah aktif
Jika langganan persisten bersama dengan nama dan pengidentifikasi klien yang sama sudah ada
Sejak:
JMS 2.0

IMessageConsumer CreateDurableConsumer(Tujuan ITopic, nama string, pemilih string, bool noLocal);

di mana messageSelector adalah pemilih pesan; Bendera noLocal adalah false secara default, dan ketika diatur ke true, bendera ini membatasi konsumen untuk hanya menerima pesan yang diterbitkan oleh koneksi yang sama dengan mereka sendiri, yang hanya berlaku untuk topik, bukan antrean. name adalah identitas unik topik langganan, dan parameter ini perlu diatur saat Anda berlangganan langganan persisten.

Activemq .net perlu referensi unduhan paket:Login hyperlink terlihat.

Unduhan kode sumber lengkap:

Wisatawan, jika Anda ingin melihat konten tersembunyi dari posting ini, silakanJawab




Skor

Jumlah peserta1MB+1 Roboh alasan
lxc1118 + 1 Sangat kuat!

Lihat semua penilaian





Mantan:Konfigurasi izin pengguna Activemq
Depan:Unknown: Input variables exceeded 1000. To increase the limit change max_inpu...
Diposting pada 16/01/2018 09.11.47 |
a5192142 Dipaparkan pada 2017-10-20 11:46
RE: .net/c# activemq操作示例[源码] [修改]
Mode lanjutan

Cara membaca kode sumber
Diposting pada 11/12/2019 11.49.26 |
Metode resepnya merepotkan,
Diposting pada 20/10/2017 11.46.30 |
RE: .net/c# activemq操作示例[源码] [修改]
Mode lanjutan
Diposting pada 16/08/2017 23.54.36 |
Saat menggunakan M2MQTT, sertifikat dilaporkan sebagai kesalahan
Diposting pada 17/08/2017 04.14.37 |
Sekarang mulailah mengutak-atik cara menggunakan MQTT untuk push
Diposting pada 17/08/2017 15.45.19 |
Saya pikir itu harus bagus
Diposting pada 29/08/2017 10.40.38 |
Semoga ini membantu
Diposting pada 29/08/2017 13.38.07 |
Saya harap berhasil
Diposting pada 14/09/2017 15.15.04 |
Ketika saya masih muda, saya membaca puisi dan buku, dan saya pergi ke mana pun saya pergi
Diposting pada 25/09/2017 09.35.22 |
Saya sudah lama mencarinya, saya harap kali ini membantu, terima kasih!
Diposting pada 25/09/2017 09.45.59 |
@小渣渣
     Cara membeli aksesoris!
Diposting pada 29/09/2017 16.35.28 |
Karena bagaimanapun juga, saya tertarik, dan saya datang untuk menemukan materi untuk dipelajari dan dipelajari
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com