อ่าน 6 นาที
ไอบีเอ็มคิว
IBM MQ คือกลุ่ม ผลิตภัณฑ์ มิดเดิลแวร์ที่เน้นการรับส่งข้อความ ซึ่ง IBM เปิดตัวในเดือนธันวาคม 1993 เดิมทีเรียกว่า MQSeries และเปลี่ยนชื่อเป็น WebSphere MQ ในปี 2002...
ไอบีเอ็มคิว
IBM MQคือกลุ่ม ผลิตภัณฑ์ มิดเดิลแวร์ที่เน้นการรับส่งข้อความซึ่งIBMเปิดตัวในเดือนธันวาคม 1993 เดิมทีเรียกว่าMQSeriesและเปลี่ยนชื่อเป็นWebSphere MQในปี 2002 เพื่อเป็นส่วนหนึ่งของกลุ่ม ผลิตภัณฑ์ WebSphere ต่อมา ในเดือนเมษายน 2014 ได้เปลี่ยนชื่อเป็นIBM MQอีกครั้ง ผลิตภัณฑ์ในกลุ่ม MQ ประกอบด้วย IBM MQ, IBM MQ Advanced, IBM MQ Appliance, IBM MQ for z/OS และ IBM MQ on IBM Cloud นอกจากนี้ IBM MQ ยังมีตัวเลือกการใช้งานในรูปแบบคอนเทนเนอร์อีกด้วย
MQ ช่วยให้แอปพลิเคชันอิสระและอาจไม่ทำงานพร้อมกันบนระบบกระจายสามารถสื่อสารกันได้อย่างปลอดภัยโดยใช้ข้อความ MQ มีให้บริการบนแพลตฟอร์มจำนวนมาก (ทั้งของ IBM และไม่ใช่ของ IBM) รวมถึงz/OS ( เมนเฟรม ), IBM i , Transaction Processing Facility , UNIX ( AIX , HP-UX , Solaris ), HP NonStop , OpenVMS , LinuxและMicrosoft Windows
ส่วนประกอบ MQ
ส่วนประกอบหลักของ MQ ได้แก่:
- ข้อความ : ข้อความคือชุด ข้อมูล ไบนารีหรืออักขระ (เช่นASCIIหรือEBCDIC ) ที่มีความหมายต่อโปรแกรมที่เกี่ยวข้อง เช่นเดียวกับโปรโตคอลการสื่อสาร อื่นๆ ข้อมูลเกี่ยวกับการจัดเก็บ การกำหนดเส้นทาง และการส่งมอบจะถูกเพิ่มเข้าไปในข้อความก่อนการส่ง และจะถูกลบออกจากข้อความก่อนการส่งมอบไปยังแอปพลิเคชันผู้รับ
- คิว : คิวข้อความคือวัตถุที่ใช้จัดเก็บข้อความในแอปพลิ เคชัน
- ตัวจัดการคิว (Queue Manager ): บริการระบบที่จัดเตรียมคอนเทนเนอร์เชิงตรรกะสำหรับคิวข้อความ มีหน้าที่ในการถ่ายโอนข้อมูลไปยังตัวจัดการคิวอื่นๆ ผ่านช่องทางข้อความ แม้ว่าจะไม่จำเป็นอย่างยิ่งสำหรับมิดเดิลแวร์ที่เน้นการส่งข้อความ แต่ก็เป็นข้อกำหนดเบื้องต้นของ IBM MQ ตัวจัดการคิวจะจัดการการจัดเก็บข้อมูล ปัญหาเรื่องเวลา การเรียกใช้งาน และฟังก์ชันอื่นๆ ทั้งหมดที่ไม่เกี่ยวข้องโดยตรงกับการเคลื่อนย้ายข้อมูลจริง
โปรแกรมที่ผสานรวมกับ IBM MQ ใช้ Application Program Interface (API) ที่สม่ำเสมอในทุกแพลตฟอร์ม
ประเภทการส่งข้อความ
MQ รองรับ การส่งข้อความ แบบจุดต่อจุดและแบบเผยแพร่-สมัครรับข้อมูล
API
API ที่ได้รับการสนับสนุนโดยตรงจาก IBM ได้แก่:
- อินเทอร์เฟซคิวข้อความของ IBM (MQI) สำหรับC , COBOL , PL/I , Java , Rexx , [ 1 ] RPGและC++
- บริการส่งข้อความ Java (JMS)
- XMS สำหรับ C/C++ และ .NET [ 2 ]
- .สุทธิ
- พักผ่อน
- สบู่
IBM ระบุโปรโตคอลทางเลือกเป็น "API" เช่นกัน ซึ่งรวมถึง: [ 3 ]
นอกจากนี้ ยังมี API เพิ่มเติม (ซึ่งไม่ได้รับการสนับสนุนอย่างเป็นทางการ) ที่สามารถใช้งานได้ผ่านทางผู้ให้บริการภายนอก ได้แก่:
- อินเทอร์เฟซ Perl (พัฒนาและสนับสนุนโดย Hildo Biersma) มีให้บริการจากCPAN [ 4 ]
- อินเทอร์เฟซPython PyMQI (เดิมพัฒนาโดย Les Smithson) สามารถดาวน์โหลดได้จากPyPI [ 5 ]
- พาวเวอร์เชลล์[ 6 ]
คุณสมบัติ
การส่งแบบครั้งเดียว : MQ ใช้การส่งแบบครั้งเดียวเท่านั้น คุณภาพการบริการแบบนี้โดยทั่วไปจะช่วยป้องกันการสูญหายหรือการส่งข้อความซ้ำ
การส่งข้อความแบบอะซิงโครนัส : MQ มอบกลไกให้แก่นักออกแบบแอปพลิเคชันเพื่อสร้างสถาปัตยกรรมที่ไม่ขึ้นอยู่กับเวลา ข้อความสามารถส่งจากแอปพลิเคชันหนึ่งไปยังอีกแอปพลิเคชันหนึ่งได้ โดยไม่คำนึงว่าแอปพลิเคชันเหล่านั้นกำลังทำงานอยู่พร้อมกันหรือไม่ หากแอปพลิเคชันผู้รับข้อความไม่ได้ทำงานอยู่เมื่อผู้ส่งส่งข้อความไป ตัวจัดการคิวจะเก็บข้อความนั้นไว้จนกว่าผู้รับจะร้องขอ ลำดับของข้อความทั้งหมดจะถูกรักษาไว้ โดยค่าเริ่มต้นจะเป็น ลำดับ FIFO ( First In, First Out) ของการรับในคิวภายในตามลำดับความสำคัญของข้อความ
การแปลงข้อมูล : เช่นจาก Big Endianเป็นLittle Endianหรือ จาก EBCDICเป็นASCIIการดำเนินการนี้ทำได้โดยใช้ Message Data Exit Exit คือแอปพลิเคชันที่คอมไพล์แล้วซึ่งทำงานบนโฮสต์ตัวจัดการคิว และจะถูกเรียกใช้งานโดยซอฟต์แวร์ IBM MQ เมื่อจำเป็นต้องแปลงข้อมูล
กรอบสถาปัตยกรรมที่ขับเคลื่อนด้วยข้อความ : IBM MQ อนุญาตให้การรับข้อความ "กระตุ้น" ให้แอปพลิเคชันอื่นทำงานได้
ขอบเขตของ API : MQ รองรับ API มาตรฐานของJava Message Service (JMS) และยังมี API เฉพาะของตนเองที่เรียกว่า Message Queuing Interface (MQI) ซึ่งมีมาก่อน JMS หลายปี และตั้งแต่เวอร์ชัน 8.0.0.4 เป็นต้นไป MQ ยังรองรับ MQ Light API อีกด้วย
การจัดกลุ่มคลัสเตอร์ : การใช้งาน MQ หลายตัวร่วมกันประมวลผลข้อความ ทำให้เกิดการกระจายภาระงานอย่างสมดุล
การสื่อสาร
ผู้จัดการคิวสื่อสารกับโลกภายนอกได้สองวิธี คือ:
- การเชื่อมต่อโดยตรง (Bindings) : การเชื่อมต่อซอฟต์แวร์โดยตรง โดยทั่วไปจะเร็วกว่า แต่จำกัดเฉพาะโปรแกรมที่ทำงานบนโฮสต์ทางกายภาพเดียวกันกับตัวจัดการคิวเท่านั้น
- การเชื่อมต่อเครือข่ายหรือ "ไคลเอ็นต์" : แอปพลิเคชันที่ใช้การเชื่อมต่อไคลเอ็นต์สามารถเชื่อมต่อกับตัวจัดการคิวบนโฮสต์อื่นใดในเครือข่าย ตำแหน่งทางกายภาพของตัวจัดการคิวไม่สำคัญ ตราบใดที่สามารถเข้าถึงได้ผ่านเครือข่าย สามารถใช้ SNA APPC, TCP/IP, NetBIOS และ SPX ได้[ 7 ]นอกจากนี้ยังมี MQ Internet Pass-Thru (MQIPT) สำหรับใช้ผ่านอินเทอร์เน็ต TCP/IP [ 8 ]
การสื่อสารระหว่างผู้จัดการคิว
ระบบนี้อาศัย ช่อง ทางการสื่อสาร ตัวจัดการคิวแต่ละตัวใช้ช่องทางการสื่อสารอย่างน้อยหนึ่งช่องทางเพื่อส่งและรับข้อมูลไปยังตัวจัดการคิวอื่นๆ ช่องทางการสื่อสารเป็นแบบทิศทางเดียว จำเป็นต้องมีช่องทางการสื่อสารที่สองเพื่อส่งข้อมูลกลับ ในเครือข่ายที่ใช้ TCP/IP ช่องทางการสื่อสารจะส่งหรือรับข้อมูลบนพอร์ตเฉพาะ
ประเภทช่องทาง:
- ช่องทางการส่ง : มีปลายทางที่กำหนดไว้และเชื่อมโยงกับคิวการส่งเฉพาะ (กลไกที่ใช้ในการจัดคิวข้อความเพื่อรอการส่งผ่านช่องทาง)
- ช่องรับข้อมูล : รับข้อมูลจากตัวจัดการคิวอื่นๆ ที่มีช่องส่งข้อมูลชื่อเดียวกัน
เมื่อช่องรับข้อความได้รับข้อความ ระบบจะตรวจสอบว่าข้อความนั้นส่งไปยังตัวจัดการคิวและคิวใด ในกรณีที่การสื่อสารล้มเหลว MQ สามารถสร้างการเชื่อมต่อใหม่โดยอัตโนมัติเมื่อแก้ไขปัญหาแล้ว
ตัวรับฟัง (Listener)คือส่วนต่อประสานเครือข่ายของแอปพลิเคชันกับตัวจัดการคิว ตัวรับฟังจะตรวจจับการเชื่อมต่อจากช่องทางขาเข้า และจัดการการเชื่อมต่อของช่องทางส่งกับช่องทางรับ ในเครือข่าย TCP/IP ตัวรับฟังจะ "รอฟัง" การเชื่อมต่อบนพอร์ตเฉพาะ
การส่งข้อมูลไปยังคิวบนตัวจัดการคิวอื่น
ประเภทของคิว:
- คิวภายในเครื่อง : หมายถึงตำแหน่งที่เก็บข้อมูลไว้เพื่อรอการประมวลผล
- คิวระยะไกล : หมายถึงคิวบนตัวจัดการคิวอื่น โดยจะกำหนดคิวปลายทาง ซึ่งเป็นองค์ประกอบหนึ่งของกลไกการกำหนดเส้นทางสำหรับข้อความ
- คิวคลัสเตอร์ : หมายถึงคิวที่สามารถเข้าถึงได้ผ่านตัวจัดการคิวใดๆ ในคลัสเตอร์นั้น
ข้อความจะถูกส่งไปยังคิวระยะไกล ข้อความจะถูกส่งไปยังคิวส่งข้อมูลชั่วคราวที่เชื่อมโยงกับช่องทาง เมื่อส่งข้อความไปยังคิวระยะไกลแล้ว ข้อความจะถูกส่งผ่านช่องทางระยะไกล หากการส่งสำเร็จ ข้อความจะถูกลบออกจากคิวส่ง เมื่อได้รับข้อความ ตัวจัดการคิวรับจะตรวจสอบข้อความเพื่อพิจารณาว่าข้อความนั้นเป็นของตนเองหรือต้องส่งไปยังตัวจัดการคิวอื่น หากตัวจัดการคิวรับมีคิวที่ต้องการ ระบบจะตรวจสอบคิวนั้น และหากมีอยู่ ข้อความจะถูกส่งไปยังคิวนั้น หากไม่มี ข้อความจะถูกส่งไปยังคิวข้อความที่ส่งไม่สำเร็จ ( dead letter queue ) MQ มีคุณสมบัติในการจัดการการส่งข้อมูลอย่างมีประสิทธิภาพผ่านสื่อการสื่อสารที่หลากหลาย ตัวอย่างเช่น ข้อความสามารถถูกรวมกลุ่มกันจนกว่าคิวจะถึงระดับความลึกที่กำหนด
การสั่งซื้อ
แม้ว่าคิวจะเป็นแบบ FIFO (First-In, First-Out) แต่การเรียงลำดับจะขึ้นอยู่กับการรับในคิวภายใน ไม่ใช่การยืนยันข้อความจากผู้ส่ง ข้อความสามารถจัดลำดับความสำคัญได้ และโดยค่าเริ่มต้น คิวจะถูกจัดลำดับความสำคัญตามลำดับการมาถึง คิวจะอยู่ในลำดับการเพิ่มก็ต่อเมื่อข้อความถูกเพิ่มเข้าไปในคิวภายในเท่านั้น การจัดกลุ่มข้อความสามารถใช้เพื่อรับประกันว่าชุดข้อความอยู่ในลำดับที่เฉพาะเจาะจง นอกเหนือจากนั้น หากลำดับมีความสำคัญ แอปพลิเคชันมีหน้าที่ในการใส่ข้อมูลลำดับในข้อความหรือใช้กลไกการจับมือกันผ่านคิวส่งคืน ในความเป็นจริง ลำดับจะถูกรักษาไว้ในการกำหนดค่าที่ไม่ซับซ้อน
บันทึก
องค์ประกอบอีกอย่างหนึ่งของระบบจัดการคิวคือบันทึก (log ) เมื่อมีการเพิ่มข้อความลงในคิวหรือมีการเปลี่ยนแปลงการตั้งค่า ข้อมูลก็จะถูกบันทึกไว้ด้วย ในกรณีที่เกิดความล้มเหลว บันทึกจะถูกใช้เพื่อสร้างวัตถุที่เสียหายและสร้างข้อความขึ้นใหม่ เฉพาะ ข้อความ ที่คงอยู่ถาวร เท่านั้น ที่จะถูกสร้างขึ้นใหม่เมื่อเกิดความล้มเหลว ข้อความที่ไม่คงอยู่ถาวรจะสูญหายไป ข้อความที่ไม่คงอยู่ถาวรสามารถส่งผ่านช่องทางที่ตั้งค่าเป็นโหมดเร็วได้ ซึ่งการส่งจะไม่รับประกันในกรณีที่ช่องทางล้มเหลว
MQ รองรับทั้งการบันทึกข้อมูลแบบวงกลมและแบบเชิงเส้น
การดึงข้อความจากคิว
สามารถดึงข้อมูลจากคิวได้โดยการตรวจสอบคิวเป็นระยะๆ เพื่อดูว่ามีข้อมูลพร้อมใช้งานหรือไม่ หรืออีกทางเลือกหนึ่ง MQ สามารถเรียกใช้งานเหตุการณ์เพื่อให้แอปพลิเคชันไคลเอ็นต์ตอบสนองต่อการส่งข้อความได้
ความพร้อมใช้งาน
IBM MQ นำเสนอโซลูชันที่หลากหลายเพื่อรองรับปัญหาเรื่องความพร้อมใช้งาน:
Native HA (MQ Advanced บนแพลตฟอร์มคอนเทนเนอร์ เช่น Red Hat OpenShift / CNFC Kubernetes และ Red Hat Linux):เป็นสถาปัตยกรรมแบบควอรัมที่ต้องการโหนดแอคทีฟหนึ่งโหนดและโหนดสำเนาสองโหนด บันทึกจะถูกจำลองแบบซิงโครนัสระหว่างโหนด นอกจากนี้ยังมี คุณสมบัติ การจำลองข้ามภูมิภาคที่อนุญาตให้คลัสเตอร์ Native HA (ในโหมด Live) จำลองแบบอะซิงโครนัสไปยังคลัสเตอร์ Native HA อื่น (ในโหมด Recovery) [ 9 ]
ตัวจัดการคิวข้อมูลจำลอง (RDQM / 'Easy HA' - MQ Advanced บน Red Hat Linux เท่านั้น): การจำลองแบบซิงโครนัสระหว่างเซิร์ฟเวอร์สามเครื่องที่ใช้ที่อยู่ IP แบบลอยตัวร่วมกัน
คลัสเตอร์ตัวจัดการคิว: กลุ่มของตัวจัดการคิวสองตัวขึ้นไปบนคอมพิวเตอร์หนึ่งเครื่องขึ้นไปจะถูกกำหนดให้เป็นคลัสเตอร์ ซึ่งจะเชื่อมต่อกันโดยอัตโนมัติ และอนุญาตให้แชร์คิวระหว่างกันเพื่อการกระจายภาระงานและความซ้ำซ้อน
กลุ่มการแชร์คิว (เฉพาะ z/OS): ในสภาพแวดล้อมคิวแบบแชร์ แอปพลิเคชันสามารถเชื่อมต่อกับตัวจัดการคิวใดก็ได้ภายในกลุ่มการแชร์คิว เนื่องจากตัวจัดการคิวทั้งหมดในกลุ่มการแชร์คิวสามารถเข้าถึงชุดคิวที่ใช้ร่วมกันชุดเดียวกันได้ แอปพลิเคชันจึงไม่ขึ้นอยู่กับความพร้อมใช้งานของตัวจัดการคิวใดคิวหนึ่งโดยเฉพาะ ซึ่งทำให้มีความพร้อมใช้งานสูงขึ้นหากตัวจัดการคิวตัวใดตัวหนึ่งหยุดทำงาน เนื่องจากตัวจัดการคิวอื่นๆ ทั้งหมดในกลุ่มการแชร์คิวสามารถดำเนินการประมวลผลคิวต่อไปได้
ตัวจัดการคิวแบบหลายอินสแตนซ์ (มีให้ใช้งานตั้งแต่เวอร์ชัน 7.0.1): อินสแตนซ์ของตัวจัดการคิวเดียวกันจะถูกกำหนดค่าบนคอมพิวเตอร์สองเครื่องขึ้นไป โดยคิวและข้อมูลเมตาจะอยู่ในพื้นที่จัดเก็บข้อมูลร่วมกัน เมื่อเริ่มต้นหลายอินสแตนซ์ อินสแตนซ์หนึ่งจะกลายเป็นอินสแตนซ์ที่ใช้งานอยู่ และอินสแตนซ์อื่นๆ จะกลายเป็นอินสแตนซ์สำรอง หากอินสแตนซ์ที่ใช้งานอยู่ล้มเหลว อินสแตนซ์สำรองที่ทำงานอยู่บนคอมพิวเตอร์เครื่องอื่นจะเข้ามารับช่วงต่อโดยอัตโนมัติ
ประวัติศาสตร์
วันที่วางจำหน่ายเวอร์ชัน
| ชื่อเวอร์ชัน | วันที่วางจำหน่าย |
|---|---|
| IBM MQ 10.0 LTS | 16 มิถุนายน 2569 |
| IBM MQ 9.4 LTS | 18 มิถุนายน 2567 |
| IBM MQ 9.3 LTS | 23 มิถุนายน 2565 |
| IBM MQ 9.2 LTS | 23 กรกฎาคม 2563 [ 10 ] |
| IBM MQ 9.1 LTS | 23 กรกฎาคม 2561 [ 11 ] |
| IBM MQ บน IBM Cloud | 13 มีนาคม 2561 [ 12 ] |
| IBM MQ สำหรับ HPE Nonstop 8.0 | 23 มิถุนายน 2560 |
| IBM MQ 9.0 LTS | 2 มิถุนายน 2559 [ 13 ] |
| IBM MQ 8.0 | 23 พฤษภาคม 2557 |
| เว็บสเฟียร์ เอ็มคิว 7.5 | 15 มิถุนายน 2555 |
| เว็บสเฟียร์ เอ็มคิว 7.1 | พฤศจิกายน 2554 |
| เว็บสเฟียร์ MQ 7.0 z/OS | มิถุนายน 2551 |
| WebSphere MQ 7.0 (แบบกระจาย, iSeries) | พฤษภาคม 2551 |
| WebSphere MQ 6.0 z/OS | มิถุนายน 2548 |
| WebSphere MQ 6.0 (แบบกระจาย, iSeries) | พฤษภาคม 2548 |
| WebSphere MQ 5.3 z/OS | มิถุนายน 2545 |
| WebSphere MQ 5.3 (แบบกระจาย, iSeries) | มิถุนายน กรกฎาคม ตุลาคม พฤศจิกายน 2545 |
| MQSeries 5.2 (แบบกระจาย) | ธันวาคม พ.ศ. 2543 |
| MQSeries สำหรับ OS/390 V5.2 | พฤศจิกายน 2000 |
| MQSeries สำหรับ AS/400 เวอร์ชัน 5.1 | กรกฎาคม-สิงหาคม 2543 |
| MQSeries สำหรับ OS/390 V2.1 | กุมภาพันธ์ 1999 |
| เอ็มคิวซีรีส์ 5.1 | เมษายน (NT), มิถุนายน 2542 |
| MQSeries สำหรับ AS/400 V4.2 | กุมภาพันธ์ 1998 |
| เอ็มคิวซีรีส์ 5.0 | ตุลาคม พ.ศ. 2540 |
| MQSeries สำหรับ MVS/ESA 1.2 | 29 สิงหาคม พ.ศ. 2540 [ 14 ] |
| MQSeries สำหรับ MVS 1.1.4 | มิถุนายน 2539 |
| MQSeries 2.2 (Sun OS/Solaris, DC/OSx) | มิถุนายน กรกฎาคม พ.ศ. 2539 |
| MQSeries 2.0 Windows NT | ไตรมาสที่ 2 ปี 1996 |
| MQSeries 2.2 (HP, SCO) | ไตรมาสที่ 4 ปี 1995 |
| MQSeries สำหรับ MVS 1.1.3 | พฤษภาคม 2538 |
| MQSeries 2.0 (OS/2, AIX) | กุมภาพันธ์ 1995 (จุดเริ่มต้นของการสิ้นสุดของ ezBridge) |
| เอ็มคิวเอ็ม/400 วี3 | ไตรมาสที่ 4 ปี 1994 |
| ezBridge Transact สำหรับ MQSeries 3.0 | กรกฎาคม 2537 |
| MQSeries สำหรับ MVS 1.1.2 | มิถุนายน 2537 |
| เอ็มคิวเอ็ม/400 เวอร์ชัน 2.3 | กุมภาพันธ์/เมษายน 2537 |
| ezBridge Transact สำหรับ MQSeries | มีนาคม กันยายน พฤศจิกายน ธันวาคม 1993 (แพลตฟอร์มต่างกัน) |
| MQSeries สำหรับ MVS เวอร์ชัน 1.1.1 | 31 ธันวาคม พ.ศ. 2536 |
วันที่สิ้นสุดการสนับสนุนเวอร์ชัน
ตารางต่อไปนี้ใช้กับซอฟต์แวร์ MQ อุปกรณ์ MQ มีวันสิ้นสุดอายุการใช้งานของทั้งเฟิร์มแวร์และฮาร์ดแวร์ที่แตกต่างจากในตาราง[ 15 ]
| ชื่อเวอร์ชัน | ความพร้อมใช้งานทั่วไป | สิ้นสุดการตลาด | สิ้นสุดการสนับสนุน |
|---|---|---|---|
| IBM MQ 10.0 | 16 มิถุนายน 2569 | - | - |
| IBM MQ 9.4 | 18 มิถุนายน 2567 | - | - |
| IBM MQ 9.3 | 23 มิถุนายน 2565 | - | 30 กันยายน 2027 |
| IBM MQ 9.2 | 23 กรกฎาคม 2563 | - | 30 กันยายน 2025 |
| IBM MQ 9.1 | 23 กรกฎาคม 2561 | 15 กันยายน 2023 | 30 กันยายน 2023 |
| IBM MQ 9.0 | 02-มิถุนายน-2559 | 17 กันยายน 2021 | 30 กันยายน 2021 |
| IBM MQ 8.0 | 13 มิถุนายน 2557 | 17 เมษายน 2563 | 30 เมษายน 2563 |
| เว็บสเฟียร์ เอ็มคิว 7.5 | 06-ก.ค.-2555 | 16 ธันวาคม 2559 | 30 เมษายน 2561 |
| เว็บสเฟียร์ เอ็มคิว 7.1 | 25 พฤศจิกายน 2554 | 12 กรกฎาคม 2559 | 30 เมษายน 2560 |
ภาพพื้นหลังอ้างอิงทางสถาปัตยกรรม
เมื่อคอมพิวเตอร์ถือกำเนิดขึ้น IBM มองเห็นโอกาสในการนำเทคโนโลยีใหม่มาประยุกต์ใช้เพื่อตอบสนองความต้องการในการสลับข้อความ
ในช่วงต้นทศวรรษ 1960 บริษัท IBM ได้วางจำหน่ายระบบควบคุมการสื่อสาร IBM 7740 และระบบควบคุมการส่งข้อมูลแบบตั้งโปรแกรม IBM 7750 ซึ่งเป็นระบบสลับข้อความแบบตั้งโปรแกรมได้
ระบบ IBM System/360 เปิดตัวในเดือนเมษายน พ.ศ. 2507 และมาพร้อมกับวิธีการเข้าถึงการสื่อสาร เช่นBTAMและQTAM (Basic and Queued Telecommunications Access Methods) ในปี พ.ศ. 2514 TCAM หรือTelecommunications Access Methodได้นำเสนอรูปแบบการสลับข้อความหรือการกำหนดเส้นทางข้อความที่ทันสมัยยิ่งขึ้นแก่ผู้ใช้ TCAM ได้รับการยอมรับอย่างกว้างขวาง โดยเฉพาะอย่างยิ่งในอุตสาหกรรมการเงินและการซื้อขายหลักทรัพย์ TCAM รองรับการส่งข้อความแบบอะซิงโครนัส เช่นเดียวกับ MQ ในภายหลัง TCAM 3.0 เพิ่มคิวข้อความบนดิสก์ที่สามารถนำกลับมาใช้ใหม่ได้สำหรับการกู้คืนในเวลาต่อมา เช่นเดียวกับ MQ โปรแกรม PL/I ระดับสูงสามารถใช้เพื่อเข้าถึงชุดข้อมูลชั่วคราว (คิวข้อความแบบไดนามิก) การอ่านข้อความจากชุดข้อมูลชั่วคราวจะส่งผลให้ข้อความนั้นถูกลบออกจากคิว เช่นเดียวกับการอ่านแบบไม่เรียกดูใน MQ
ในช่วงปลายทศวรรษ 1970 ระบบจัดการธุรกรรมได้ถือกำเนิดขึ้น โดยแต่ละระบบพยายามที่จะก้าวขึ้นเป็นผู้นำในอุตสาหกรรม ภายใน IBM นั้นCICSและIMSถูกเลือกให้เป็นผลิตภัณฑ์เชิงกลยุทธ์เพื่อตอบสนองความต้องการด้านการจัดการธุรกรรม ทั้ง CICS และ IMS ต่างก็มีกลไกการสลับข้อความในรูปแบบของตนเอง โดย IMS เป็นระบบคิวแบบฟรอนท์เอนด์ และ CICS มีฟังก์ชัน Transient Data เป็นพื้นฐานที่เป็นไปได้สำหรับการสลับข้อความ
CICS ได้สร้างชื่อเสียงในฐานะระบบจัดการธุรกรรมยอดนิยมในช่วงปี 1968-1971 ผู้ใช้ที่เลือกใช้ TCAM เนื่องจากความสามารถในการจัดการข้อความต่างต้องการใช้งาน TCAM ร่วมกับ CICS ในเดือนธันวาคม 1971 IBM ได้ประกาศการสนับสนุน TCAM สำหรับ CICS ในฐานะส่วนหนึ่งของผลิตภัณฑ์ CICS/OS-Standard ซึ่งจะวางจำหน่ายในเดือนธันวาคม 1972 สำหรับลูกค้าที่สนใจ นี่ทำให้พวกเขาสามารถใช้ TCAM เพื่อประโยชน์ในการจัดการข้อความ และยังสามารถเชื่อมต่อเทอร์มินัลหรือคอมพิวเตอร์ที่เชื่อมต่อกับ TCAM กับแอปพลิเคชันออนไลน์ของ CICS ได้อีกด้วย
ในเดือนมกราคม พ.ศ. 2516 TCAM ยังคงได้รับการสนับสนุนโดย CICS/OS-Standard เวอร์ชัน 2.3 อย่างไรก็ตาม การสนับสนุน TCAM ถูกตัดออกไปจากการเปิดตัว CICS/VS ครั้งแรก ซึ่งประกาศในเดือนกุมภาพันธ์ พ.ศ. 2516 และวางจำหน่ายในเดือนมิถุนายน พ.ศ. 2517 แน่นอนว่า ลูกค้า CICS-TCAM จำนวนมากไม่พอใจกับทิศทางของผลิตภัณฑ์ดังกล่าว
ด้วยแรงกดดันอย่างมากจากลูกค้า CICS-TCAM การสนับสนุน TCAM ใน CICS จึงได้รับการนำกลับมาใช้ในผลิตภัณฑ์ CICS/VS 1.1 ตั้งแต่เดือนกันยายน พ.ศ. 2517 นอกเหนือจากการสนับสนุน DCB ก่อนหน้านี้แล้ว การนำการสนับสนุน TCAM กลับมาใช้ครั้งนี้ทำให้ CICS เริ่มสนับสนุนการเข้าถึง TCAM ผ่าน VTAM หรือที่รู้จักกันในชื่อการสนับสนุน ACB การสนับสนุน CICS TCAM ACB ถูกยกเลิกในผลิตภัณฑ์ CICS/ESA เวอร์ชัน 3 ในปี พ.ศ. 2533
ในปี 1992 IBM ได้ประกาศผลิตภัณฑ์ใหม่ชื่อ MQSeries ต่อมาได้เปลี่ยนชื่อแบรนด์เป็น WebSphere MQ (แต่ชื่อย่ออย่างเป็นทางการยังคงเป็น MQ) ในปี 2002 เพื่อสนับสนุนชื่อตระกูล WebSphere และผลิตภัณฑ์ดังกล่าว และในปี 2014 ได้เปลี่ยนชื่อเป็น IBM MQ MQ ถูกสร้างขึ้นเพื่อเป็นส่วนขยายของฟังก์ชัน TCAM จากระบบเฉพาะของ IBM ไปยังแพลตฟอร์มอื่นๆ ทั้งหมด MQ มีสถาปัตยกรรมที่ช่วยให้ระบบที่แตกต่างกันสามารถสื่อสารกันได้ (เช่น IBM, HP, Sun, Tandem เป็นต้น) MQ สามารถใช้กับระบบ CICS เพื่อส่งและรับข้อมูลจาก/ไปยังระบบอื่นๆ ที่รองรับ MQ ได้ MQ สามารถใช้เพื่อเริ่มต้นการทำงานในระบบ CICS หรือธุรกรรม CICS สามารถเริ่มต้นการทำงานในระบบ CICS หรือระบบที่ไม่ใช่ CICS ได้
ปัจจุบัน IBM MQ รองรับสภาพแวดล้อมที่แตกต่างกันถึง 80 แบบ และได้กลายเป็นผลิตภัณฑ์การสลับ/กำหนดเส้นทางการส่งข้อความแบบรับประกันชั้นนำในอุตสาหกรรม[ 16 ]
MQ และบริการเว็บ
IBM MQ สามารถใช้เป็นรากฐานในการสร้างสถาปัตยกรรมแบบบริการเป็นศูนย์กลางได้ นอกจากนี้ยังมีผลิตภัณฑ์เสริมอีกหลายอย่างที่จะช่วยแปลงโปรแกรมเดิมให้เป็นเว็บเซอร์วิส ที่ใช้งานได้ โดยใช้ MQ องค์กรขนาดใหญ่ที่มีความหลากหลายมักปรากฏในรูปแบบของสหพันธ์ของโดเมนที่ค่อนข้างเป็นอิสระโดยอิงตามสายงานธุรกิจ หน้าที่ หรือการกำกับดูแล ในสภาพแวดล้อมเช่นนี้ บริการบางอย่างอาจถูกใช้ร่วมกันหรือนำกลับมาใช้ใหม่ได้เฉพาะภายในโดเมนเดียว ในขณะที่บริการอื่นๆ อาจถูกใช้ร่วมกันหรือนำกลับมาใช้ใหม่ได้ทั่วทั้งองค์กร IBM MQ เป็นเครื่องมือที่ช่วยให้การสื่อสารเกิดขึ้นระหว่างสายงานธุรกิจหรือโดเมนธุรกิจที่แยกจากกัน
ผลิตภัณฑ์ที่เกี่ยวข้องในตระกูลผลิตภัณฑ์ IBM MQ ที่เรียกว่าIBM App Connect Enterprise (เดิมคือ IBM Integration Bus / WebSphere Message Broker) ช่วยให้สามารถขยายสถาปัตยกรรมแบบคิวได้อย่างหลากหลายและแข็งแกร่ง โดยใช้ IBM Integration Bus ผู้ใช้สามารถสร้างส่วนหน้าของ WebServices ได้อย่างสมบูรณ์ พร้อมด้วย การสนับสนุนไฟล์ WSDLที่สามารถโต้ตอบกับแอปพลิเคชันแบบคิวใดๆ ก็ได้
ดูเพิ่มเติม
- โปรโตคอลการจัดคิวข้อความขั้นสูง
- IBM WebSphere Message Broker
- บริการข้อความ Java
- คิวข้อความ
- บริการจัดคิวข้อความ
- เอ็มคิวทีที
ลิงก์ภายนอก
- หน้าผลิตภัณฑ์ IBM MQ
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ไอบีเอ็มคิว
IBM MQ คือกลุ่ม ผลิตภัณฑ์ มิดเดิลแวร์ที่เน้นการรับส่งข้อความ ซึ่ง IBM เปิดตัวในเดือนธันวาคม 1993 เดิมทีเรียกว่า MQSeries และเปลี่ยนชื่อเป็น WebSphere MQ ในปี 2002...
ประเภทการส่งข้อความ
MQ รองรับ การส่งข้อความ แบบจุดต่อจุดและแบบ เผยแพร่-สมัครรับข้อมูล
API
API ที่ได้รับการสนับสนุนโดยตรงจาก IBM ได้แก่:
คุณสมบัติ
การส่งแบบครั้งเดียว : MQ ใช้การส่งแบบครั้งเดียวเท่านั้น คุณภาพการบริการแบบนี้โดยทั่วไปจะช่วยป้องกันการสูญหายหรือการส่งข้อความซ้ำ