web-servicessoapmessage-queuesoaems

What is the difference between a Web Service and an Enterprise Messaging System?


From what I understand both transfer data of a certain format between points. What exactly is the difference between the two? Are there any examples that can help differentiate the two?


Solution

  • A web service is a connection between two devices over a network. It is much like a client-server relationship, but more. The service user generates a message, usually in xml and sends it to the webservice using a designated protocol such as soap. The web service consumes the message, verifies that is a valid message, performs its service and returns a response.

    An enterprise messaging system sends messages between systems and applications in an asychronous manner using different protocols such as DDS, MSMQ or AMQP. This allows things such as event driven programming.

    A web service example: One business sends an order for supplies via the internet in an xml message listing their business information and itemized order in a prescribed format. They get an reply back saying your order is confirmed, order id and total, also in an xml message. No GUIs used, code on both ends needs to consume the xml messages.

    EMS example: Computer system 1 completes entry into the database of time sheet information. It sends a message to computer system 2 to begin the payroll process.