Java Message Service เป็นเทคโนโลยีที่ช่วยแก้ปัญหาให้กับการประกอบแอพพลิเคชันทางธุรกิจได้
Java Message Service (JMS) ทำหน้าที่ในการรับส่ง message ระหว่างserver กับ client รูปแบบของ message ค่อนข้างที่จะยืดหยุ่น โดยปกติ messageใช้ในการส่งข้อมูลชนิดข้อความ รวมถึงออบเจ็กต์ของจาวา และ message เปล่าที่ใช้สำหรับการตอบกลับ (Acknowledgements) ของการสื่อสารมาตรฐาน
ความแตกต่างระหว่าง JMS เมื่อเปรียบเทียบกับการสื่อสารในระดับล่างของแพ็กเกต TCP/IP และJava Remote Method Invocation (RMI)
- ในการสื่อสารการสื่อสารในระดับล่างของแพ็กเกต TCP/IP และ Java Remote Method Invocation (RMI) จำเป็นต้องมีการเชื่อมต่อแบบ real time และ messageที่แลกเปลี่ยนกันจะเป็นแบบ Synchronous เท่านั้น ในขณะที่ JMS นั้นยืดหยุ่นกว่าเพราะว่า JMS สนับสนุนการรับส่งแบบ Asynchronous ซึ่งช่วยให้ clientสามารถส่งหรือรับ message ได้โดยที่ไม่ต้องเชื่อมต่อกับserverตลอดเวลา
- การสื่อสารแบบ Asynchronous JMS สามารถนำไปประยุกต์ใช้กับแอพพลิเคชันได้เป็นจำนวนมาก เช่น พนักงานขายที่ใช้ PDA อาจจะต้องการอัพเดตยอดการขายผ่านระบบ message JMS ข้อมูลยอดขายใหม่สามารถเก็บไว้ที่เครื่อง PDA ได้จนกว่าพนักงานขายคนนั้นจะเชื่อมต่อกับ server ระบบ JMS ก็จะอัพเดตกับฐานข้อมูลเองโดยอัตโนมัติ
การส่งmessageแบบ Point-to-Point
การส่ง message แบบนี้มีการทำงานคือระบบจะมีการกำหนดปลายทางไปยังคิวของผู้รับคนใดคนหนึ่ง
การส่งข้อความแบบ Publish/Subscribe
การส่ง message แบบนี้มีการทำงานคือระบบจะ message ส่งไปยังผู้รับหลายๆคนที่ได้ลงทะเบียนกับหัวเรื่องนั้นไว้
กลไกการส่ง message ของ JMS
JMS ใช้ 2 กลไกในการส่ง messageระหว่างระบบ
1. แบบ Point-to-Point โดยจะมี client หนึ่งเครื่องเปิด session เพื่อรับmessageจาก client เครื่องอื่น
2. แบบ Publish/Subscribe จะมี clientหลายๆ เครื่องลงทะเบียนไว้เป็น Listener เพื่อ คอยรับmessageที่อัพเดตเข้ามาในหัวเรื่อง (Topic) ที่ได้ลงทะเบียนไว้ นอกจากโมเดลนี้จะทำให้ client หลายๆ เครื่องรับ messageได้แล้ว ยังช่วยให้แอพพลิเคชันรองรับการเขียนโปรแกรมแบบ Event-Driven อีกด้วย นั่นคือในโปรแกรมสามารถเพิ่มโค้ด onMessage() เพื่อใช้สำหรับรองรับ Event Handlerได้ตามที่ต้องการ
JMS สามารถแก้ได้ปัญหาเรื่องของการส่งmessageแบบ Asynchronous ที่เชื่อถือน่าเชื่อถือ JMS นั้นไม่ใช่คู่แข่งโดยตรงของเว็บเซอร์วิส แต่ JMS นั้นเป็นจุดเริ่มต้นที่ทำให้เว็บเซอร์วิสมีการปรับตัวเพื่อให้สามารถทำงานบนแพลตฟอร์มของจาวาได้ดียิ่งขึ้น ด้วยคุณสมบัติทางด้านความเชื่อถือได้และการส่งmessage แบบ Asynchronous
Last 5 posts by on_the_way
- How to send sms from ror project? - January 7th, 2010
- การหาค่า max/min by RoR - January 7th, 2010
- How to sent email by using ror? - January 7th, 2010
- Ruby can connect Multiple database... - January 7th, 2010
- โพสข้อความใน twitter แต่โผล่ใน Facebook - October 30th, 2009

มานใช้ยังไหง หว่าาาาา …