Message-Oriented Middleware as a Queue Management Solution to Improve Job Handling within an E-Commerce System

University essay from KTH/Skolan för elektroteknik och datavetenskap (EECS)

Abstract: Today’s applications are required to continuously adapt and adjust, to be able to meet a constant change in demand. As result of an increasing amount of data, choosing the right communication method becomes a vital step. A solution that have been functional for a long time, may at any point in time be unable to reach the level it requires and instead turns into bottlenecks and inefficient solutions.Using a database as a communication method between system entities, does not have to be a bad solution. A database has it perks with being a simple solution and efficient query operations. However, using it as a queue management system, requires entities to continuously poll new table entries. This solution may not be the most suitable nor best available option. There exists communication system developed for the specific purpose of efficiently distributing messages to available parties.Implementing a message-oriented middleware enables for asynchronous communication which promotes applications to be more loosely coupled. As a result, available resources could be better utilised and improve the system performance. This degree project investigates the development and integration of two message-oriented middlewares, RabbitMQ and AcviteMQ, within an e-commerce system. The purpose is to explore the potentials of changing queue management system from a database to a message broker. The expected outcome is a more flexible job handling and, perhaps, an improvement of job processing by using a more efficient distribution.The results show that changing queue management system from the database to a message-oriented middleware could improve the performance of handling of invoice jobs. Testing the application servers of the Proceedo system, with a batch of invoice jobs, showed a potential of up to 17 percent faster process time using a message broker. This corresponds to a reduced process time of around 11 minutes for one application server and 6 minutes using two. Additionally, both brokers provide flexible message handling through functionality to priorities messages.

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)