Skip to content

Tutorial for Advanced Programming 2024 Rust Software Architecture Subscriber - Faculty of Computer Science, Universitas Indonesia

Notifications You must be signed in to change notification settings

divieurora/advpro-tutorial-subscriber

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advance Programming Tutorial 8

Tutorial for Advanced Programming 2024 Module 8 - Faculty of Computer Science, Universitas Indonesia


Reflection

  1. What is amqp?

    AMQP atau Advanced Message Queueing Protocol adalah protokol standar lapisan aplikasi yang memungkinkan aplikasi klien berkomunikasi dengan server dan berinteraksi. AMQP juga menentukan protokol lapisan jaringan dan high-level architecture untuk message brokers.

  2. What it means? guest:guest@localhost:5672, what is the first guest, and what is the second guest, and what is localhost:5672 is for?

    • guest pertama adalah username sedangkan guest yang kedua adalah password. Dalam hal ini, guest:guest berarti username dan password-nya adalah guest.
    • localhost:5672 artinya server berjalan pada mesin klien dengan port 5672 yang merupakan port default untuk AMQP.

RabbitMQ

  1. Simulation slow subscriber

    RabbitMQ Slow Rates

    Total number queue dalam mesin saya adalah 50, karena saya melakukan cargo run Publisher sebanyak 10 kali.

  2. Running at least three subscribers

    Terminal Cargo Run RabbitMQ Slow 3 Subscriber

    Ketika menjalankan 3 Subscriber, spike berkurang secara lebih cepat karena setiap request yang dikirimkan ke Subscriber dibagi ke 3 Subscribers yang berbeda. Dengan beberapa Subscriber yang running, setiap message yang diterima oleh Publisher akan dikirimkan ke masing-masing Subscriber secara paralel.

    Hal yang mungkin dapat di-improve dari code adalah:

    • Pada Subscriber, thread::sleep dapat dihilangkan atau dikurangi agar waktu eksekusi dapat menjadi lebih efisien.
    • Pada Publisher, dapat diubah menjadi asynchronous menggunakan async/await untuk meningkatkan kinerja dan skalabilitas program.

About

Tutorial for Advanced Programming 2024 Rust Software Architecture Subscriber - Faculty of Computer Science, Universitas Indonesia

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published