ดาวน์โหลดโปรแกรมฟรี
       
   สมัครสมาชิก   เข้าสู่ระบบ
THAIWARE.COM | ทิปส์ไอที
 

Middleware คืออะไร ? มารู้จักตัวกลางเชื่อมโยงระหว่างแอปพลิเคชันกัน

Middleware คืออะไร ? มารู้จักตัวกลางเชื่อมโยงระหว่างแอปพลิเคชันกัน

เมื่อ :
|  ผู้เข้าชม : 4,264
เขียนโดย :
0 Middleware+%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3+%3F+%E0%B8%A1%E0%B8%B2%E0%B8%A3%E0%B8%B9%E0%B9%89%E0%B8%88%E0%B8%B1%E0%B8%81%E0%B8%95%E0%B8%B1%E0%B8%A7%E0%B8%81%E0%B8%A5%E0%B8%B2%E0%B8%87%E0%B9%80%E0%B8%8A%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%A1%E0%B9%82%E0%B8%A2%E0%B8%87%E0%B8%A3%E0%B8%B0%E0%B8%AB%E0%B8%A7%E0%B9%88%E0%B8%B2%E0%B8%87%E0%B9%81%E0%B8%AD%E0%B8%9B%E0%B8%9E%E0%B8%A5%E0%B8%B4%E0%B9%80%E0%B8%84%E0%B8%8A%E0%B8%B1%E0%B8%99%E0%B8%81%E0%B8%B1%E0%B8%99
A- A+
แชร์หน้าเว็บนี้ :

Middleware คืออะไร ?

ทุกวันนี้เทคโนโลยีพัฒนากันไวมาก ความต้องการของผู้บริโภคก็มีมากขึ้นตามไปด้วย มันมีหลายสิ่งที่ผู้บริโภคคาดหวังว่าธุรกิจจะสามารถตอบโจทย์สิ่งที่พวกเขาต้องการได้ อย่างเช่น ความรวดเร็วในการส่งของ, ตอบข้อความในทันที, มีฝ่ายสนับสนุนลูกค้าแบบ 24/7 ฯลฯ การจะทำให้สิ่งเหล่านี้เกิดขึ้นจริงได้ ทุกแผนกภายในองค์กรจะต้องมีการประสานงาน แลกเปลี่ยนข้อมูลกันได้

บทความเกี่ยวกับ API อื่นๆ

แต่ปัญหาคือ ส่วนใหญ่แล้วภายในองค์กรก็จะมีซอฟต์แวร์อยู่หลายตัว และไม่ใช่ทุกตัวที่จะสามารถเชื่อมต่อเพื่อทำงานร่วมกันได้ ซึ่งรวมไปถึงการเชื่อมต่อกับแพลตฟอร์มภายนอกด้วย เช่น การส่งข้อมูลไปยังคลาวด์ หรือฐานข้อมูลบนเว็บไซต์ที่ทางทีม การตลาดดิจิทัล (Digital Marketing) ใช้งานอยู่

คำถามคือ เราจะทำให้ระบบภายในทั้งหมดของเราสื่อสารกันได้ แล้วเชื่อมโยงกับแพลตฟอร์มภายนอกด้วยได้อย่างไร ? นั่นเป็นสาเหตุที่ทำให้ Middleware ถูกพัฒนาขึ้นมา

Middleware คืออะไร ? (What is Middleware ?)

Middleware เป็นซอฟต์แวร์ และคลาวด์ ที่ให้บริการ และความสามารถทั่วไปกับแอปพลิเคชันต่าง ๆ ช่วยให้นักพัฒนา หรือผู้ให้บริการสามารถสร้าง หรือปรับใช้คุณสมบัติต่าง ๆ บนแอปพลิเคชันได้อย่างมีประสิทธิภาพมากขึ้น หน้าที่ของ Middleware คือช่วยเชื่อมต่อระหว่างแอปพลิเคชัน, ข้อมูล และผู้ใช้ให้สื่อสารหากันได้

คำว่า Middleware ไม่ใช่คำใหม่แต่อย่างใด มันเป็นศัพท์เฉพาะที่ใช้ในแวดวงวิศวกรรมซอฟต์แวร์ (Software engineering) มาตั้งแต่ปลายยุค ค.ศ. 1960 (พ.ศ. 2503) และยังคงเป็นองค์ประกอบของซอฟต์แวร์สมัยใหม่ในหลายภาคส่วน

โดย Middleware สามารถมีอยู่ใน Application Runtimes (ซอฟต์แวร์ที่มีหน้าที่สั่งการแอปพลิเคชัน หรือเซอร์วิส), Enterprise Application Integration (EAI) (ขั้นตอนที่ใช้เชื่อมต่อแอปพลิเคชันที่ออกแบบแยกกัน ให้สามารถทำงานร่วมกันได้), บริการคลาวด์ต่าง ๆ, ระบบบริหารข้อมูล, การส่งข้อความ, ระบบยืนยันตัวตน, ระบบจัดการ ส่วนต่อประสานโปรแกรมประยุกต์ (API) ฯลฯ ทั้งหมดที่ว่ามานี้เป็นหน้าที่พื้นฐานของ Middleware

ในปัจจุบันนี้ เทคโนโลยี Middleware ได้กลายเป็นรากฐานให้กับสถาปัตยกรรมคลาวด์สมัยใหม่ สำหรับองค์กรที่มีการใช้ระบบคลาวด์หลายตัว และ Containerized Environments (การรวมแอปพลิเคชันเข้ากับไฟล์ และไลบรารีที่จำเป็นสำหรับการทำงานบนโครงสร้างพื้นฐานไว้ในหน่วยเก็บข้อมูลที่เรียกว่า Container) เนื่องจาก Middleware ช่วยให้ต้นทุนในการพัฒนา และขยายขนาดของแอปพลิเคชันเป็นไปอย่างมีประสิทธิภาพ

ทำไมถึงเรียกว่า Middleware ? (Why do we call Middleware ?)

คำว่า "Middle" ถ้าแปลเป็นภาษาไทยก็จะมีความหมายว่า "ตรงกลาง" ดังนั้นชื่อ "Middleware" ก็มีความหมายตรงตัวเลย โดยมาจากการที่มันเป็นซอฟต์แวร์ที่ทำงานอยู่ตรงกลางระหว่าง "ฝั่งผู้ใช้งาน (Client) ที่ใช้งาน Front-End ในการส่ง Request" กับ "ฝั่ง Back-End ที่คอยบริหารทรัพยากรที่ถูก Request มา"

โดย Client สามารถสร้าง Request ผ่านระบบเครือข่ายได้ ซึ่งตัว Client เองก็ถือว่าเป็นซอฟต์แวร์ชนิดหนึ่งที่ทำงานอยู่บน Front-End ซึ่งเป็นพื้นที่สำหรับให้บุคคลทั่วไปใช้งาน ส่วนทรัพยากรอย่างฐานข้อมูล, Message queues, ข้อมูลประเภท NoSQL, ไฟล์บนเซิร์ฟเวอร์ ฯลฯ พวกนี้จะถูกจัดการโดยระบบหลังบ้าน หรือที่เรียกว่า Back-End โดย Middleware จะอยู่ตรงกลางระหว่าง Front-End กับ Back-End

Middleware คืออะไร ? มารู้จักตัวกลางเชื่อมโยงระหว่างแอปพลิเคชันกัน
ภาพจาก : https://www.freecodecamp.org/news/what-is-middleware-with-example-use-cases/

Middleware ทำงานอย่างไร ? (How does Middleware work ?)

พื้นฐานการทำงานของ Middleware มีวัตถุประสงค์เพื่อให้นักพัฒนาสามารถสร้างแอปพลิเคชัน โดยที่ไม่จำเป็นต้องเขียนระบบ Custom Integration ใหม่เองทุกครั้งที่ต้องการเชื่อมต่อการทำงานกับแอปพลิเคชันอื่น ๆ ไม่ว่าจะเป็น Services, Microservices, Data Source, Computing Resources หรืออุปกรณ์ใด ๆ ก็ตาม

สำหรับ Middleware จะมีลำดับการทำงานดังต่อไปนี้

  1. ทำการรวบรวมเครือข่ายที่มีความกระจัดกระจาย ไม่ปะติดปะต่อเข้าด้วยกัน
  2. จัดระเบียบให้กับซอฟต์แวร์ที่รวบรวมมา เพื่อให้มีความเป็นอันหนึ่งอันเดียวกัน
  3. นำเสนอชุดเครื่องมือที่มีอินเทอร์เฟซรูปแบบเดียวให้แก่นักพัฒนา เพื่อให้การทำงานร่วมกัน มีความเข้าใจตรงกันง่ายขึ้น
  4. มีบริการคุณสมบัติพื้นฐานที่ช่วยให้แอปพลิเคชันสามารถทำงานร่วมกันได้ และช่วยป้องกันไม่ให้เกิดการเขียนฟังก์ชันการทำงานซ้ำกันโดยเปล่าประโยชน์

ที่มันสามารถทำอย่างนั้นได้ก็เพราะ Middleware จะคอยรับผิดชอบในส่วนของการสื่อสารให้เลย ด้วยการให้บริการ Framework ที่สามารถเชื่อมต่อหากันได้ เช่น

  • JavaScript Object Notation (JSON)
  • Representational State Transfer (REST)
  • Extensible Markup Language (XML)
  • Simple Object Access Protocol (SOAP)
  • Web Services

นอกจากนี้ ทาง Middleware ยังมีให้บริการเตรียมส่วนประกอบที่จำเป็นต่อการทำแอปพลิเคชันเอาให้นักพัฒนานำไปใช้ได้ โดยจะทำมาให้เลือกใช้งานได้หลายภาษา เช่น Java, C++, PHP, Python เพื่อให้มีความครอบคลุมต่อการนำไปประยุกต์ใช้ 

ส่วนประกอบพื้นฐานของ Middleware ก็จะประกอบไปด้วย

  • Management Console : สำหรับตรวจสอบภาพรวม และปรับแต่งค่าการทำงานของ Middleware
  • Client Interface : ใช้สื่อสารกับแอปพลิเคชัน, ฐานข้อมูล หรือบริการอื่น ๆ ที่มีความเกี่ยวข้อง
  • Internal Interface : ไว้ตรวจสอบว่าแต่ละส่วนประกอบของ Middleware นั้นทำงานสอดคล้องกันอย่างถูกต้องหรือไม่
  • Platform Interface : ใช้ในการยืนยันความเข้ากันได้ของซอฟต์แวร์ที่มีการสื่อสารหากัน
  • Contract Manager : กำหนดขั้นตอน และกติกาในการแลกเปลี่ยนข้อมูล และรับรองว่าแอปพลิเคชันในระบบจะทำตามกฏอย่างถูกต้อง
  • Session Manager : สร้างช่องทางสื่อสารที่มีความปลอดภัยระหว่าง Middleware กับแอปพลิเคชัน
  • Database Manager : ผสานการทำงานร่วมกับฐานข้อมูล
  • Runtime Monitor : รายงานข้อมูลการทำงานของ Middleware อย่างต่อเนื่อง

หมวดหมู่ของ Middleware (Categories of Middleware)

Middleware นั้นมีอยู่หลายประเภท แต่ผู้เชี่ยวชาญด้านการวิจัยอุตสาหกรรมเทคโนโลยีอย่าง Gartner และ Forrester Research ได้แบ่ง Middleware ออกเป็น 2 หมวดหมู่ใหญ่ คือ Enterprise Middleware และ Platform Middleware

Enterprise Middleware

หมายถึง Middleware ที่ช่วยโปรแกรมเมอร์ให้สามารถสร้างแอปพลิเคชันธุรกิจได้โดยไม่จำเป็นต้องแก้ไขโค้ดใหม่ทุกครั้ง เมื่อต้องเชื่อมการทำงานกับแอปพลิเคชันตัวใหม่ ๆ ช่วยให้พวกมันสามารถทำงาน และแลกเปลี่ยนข้อมูลร่วมกันได้ ด้วยการเพิ่มเลเยอร์ที่ทำหน้าที่เป็นตัวกลางในการแลกเปลี่ยนข้อมูล และรองรับการทำงานร่วมกันแบบ Business to Business (B2B)

ธุรกิจที่ต้องการใช้สามารถเลือกซื้อ Middleware หลายตัวมาทำ On Premises เพื่อใช้ภายในองค์กรของตนเอง หรือจะเลือกใช้แบบที่เป็นระบบคลาวด์ก็ได้

Platform Middleware

Platform middleware มีไว้เพื่อสนับสนุนการพัฒนาซอฟต์แวร์ และให้บริการระบบ Runtime Hosting อย่างเช่น Container สำหรับจัดเก็บ Application Program Logic

นอกจากนี้ Platform Middleware ยังรวมไปถึงเครื่องมือที่สนับสนุนการพัฒนาแอปพลิเคชันอีกด้วย เช่น Web Servers, Application Servers และ Content Management Systems (CMSes).

Platform Middleware มีให้เลือกใช้งานได้ทั้งแบบ On Premises และคลาวด์ เช่นเดียวกันกับ Enterprise Middleware

ประเภทของ Middleware (Types of Middleware)

Middleware มีหลายประเภทให้เลือกใช้งาน โดยต่างกันที่คุณสมบัติในการทำงาน ที่ออกแบบมาตอบโจทย์ความต้องการของแพลตฟอร์มที่มีความหลากหลาย สามารถแบ่งได้ออกเป็น 14 ชนิด ได้ดังต่อไปนี้

1. Application Programming Interface (API)

เป็นเครื่องมือสำหรับช่วยในการทำงานของฟังก์ชันต่าง ๆ ภายในแอปพลิเคชัน ถ้าอธิบายแบบภาษาคนทั่วไป มันก็คือ 'ตัวกลาง' ที่ให้เหล่า เว็บไซต์, ซอฟต์แวร์, แอปพลิเคชัน สามารถสื่อสาร และ ทำงานร่วมกันได้ โดยเชื่อมถึงข้อมูลกับฐานข้อมูล (Database) ของอีกฝ่าย ในรูปแบบของ "โค้ด" ที่เป็นคำสั่งเรียกใช้ API

2. Application Server

เป็นซอฟต์แวร์ Framwork ที่ใช้ในการสร้าง และอยู่เบื้องหลังการทำงานของ Enterprise applications

3. Application Integration

Enterprise application integration เป็น Integration framework ที่ประกอบไปด้วยเทคโนโลยี และบริการต่าง ๆ ของ Middleware หรือ Middleware framework เข้าไว้ด้วยกัน เพื่อช่วยในการเชื่อมต่อระบบ และแอปพลิเคชันข้ามไปยังระบบของบริษัทอื่น ๆ ทำได้ง่าย สะดวกมากขึ้น

4. Content-Centric Middleware

เป็นเหมือนกับ Publish/Subscribe middleware โดย Content-Centric Middleware จะช่วยในการเก็บข้อมูลเนื้อหาของผู้ให้บริการ และผู้บริโภค (Provider-consumer)

5. Data Integration

เครื่องมือสำหรับทำ Data integration กระบวนการรวบรวมข้อมูลจากแหล่งต่าง ๆ เพื่อให้มองเห็นภาพรวมของข้อมูลทั้งหมดได้ง่ายขึ้น

6. Device Middleware

ชุดเครื่องมือสำหรับพัฒนาฮาร์ดแวร์เพื่อทำงานกับแอปพลิเคชันอย่างเฉพาะเจาะจง

7. Embedded Middleware

เป็นสื่อกลางที่ช่วยในการสื่อสารระหว่าง Integration interface (ตัวประสานระหว่างระบบต่าง ๆ ที่มีการแลกเปลี่ยนข้อมูลหรือฟังก์ชันการทำงาน โดยใช้ API หรือ Application Programming Interface เป็นเครื่องมือในการเชื่อมต่อระบบ) กับระบบปฏิบัติการ และแอปพลิเคชันต่าง ๆ

8. Games Engines

สำหรับ เอนจิ้นเกม (Game Engine) มันเป็น Framework ที่ช่วยในการพัฒนาระบบกราฟิก, ฟิสิกส์, สคริปต์, ระบบเครือข่าย ฯลฯ

9. Message-Oriented Middleware (MOM)

เป็นโครงสร้างพื้นฐานที่สนับสนุนการแลกเปลี่ยนข้อความระหว่างระบบ หรือองค์ประกอบต่าง ๆ

10. Object Request Broker (ORB)

ช่วยในการส่ง Objects และ Request จากบริการ ผ่านระบบตามที่กำหนดไว้ได้

11. Portals

หมายถึง Enterprise portal servers เป็นซอฟต์แวร์ Front-End ที่ช่วยให้การสื่อสารระหว่างอุปกรณ์ กับระบบหลังบ้าน Back-End

12. Remote Procedure Call (RPC)

ระบบสื่อสารอุปกรณ์แบบระยะไกล ใช้ทั้งในการทำงานแบบ Synchronously (ทำงานในเวลาเดียวกัน) และ Asynchronously (ทำงานไม่พร้อมกัน)

13. Robotic Middleware

มีไว้เพื่อจัดการกับงานที่มีความซับซ้อนอย่างการพัฒนาหุ่นยนต์ เช่น การควบคุมหุ่นยนต์ หรือระบบจำลองการทำงาน

14. Transaction Processing (TP)

ในส่วนของ Transcation Processing Middleware ถูกนำมาใช้ในขั้นตอนการทำธุรกรรม โดยสามารถใช้ตรวจสอบ และเตรียมสภาพแวดล้อมที่เหมาะสมให้กับนักพัฒนาสามารถใช้ในการพัฒนาระบบธุรกรรม


ธุรกิจไม่สามารถที่จะหยุด หรือชะลอได้เลย ซึ่งแนวทางการทำธุรกิจในปัจจุบันนี้ หลีกเลี่ยงไม่ได้เลยที่จะมีการเชื่อมต่อกับระบบอื่น ๆ อย่างพื้นฐานที่สุดก็เช่น ระบบจ่ายเงิน ที่ระบบหลังบ้านของเราต้องมีการเชื่อมต่อกับระบบของธนาคารเป็นต้น ซึ่งหากเราทำระบบเชื่อมต่อเองทั้งหมดจะเป็นเรื่องที่ยากมาก แถมหลายแพลตฟอร์มก็บังคับให้ใช้ Middleware ในการเชื่อมต่อเท่านั้นด้วย

ดังนั้น Middleware จึงเป็นสิ่งสำคัญ ที่ออกมาตอบโจทย์ในจุดนี้ ซึ่งก็มีผู้ให้บริการอยู่มากมายให้เลือกใช้บริการ หากธุรกิจของคุณต้องการพัฒนาระบบที่เชื่อมต่อกับแพลตฟอร์มอื่น ๆ ก็ลองมองหา Middleware มาช่วยแก้ไขปัญหากันดูนะครับ


ที่มา : www.talend.com , www.redhat.com , www.techtarget.com , www.ibm.com , www.makeuseof.com

0 Middleware+%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3+%3F+%E0%B8%A1%E0%B8%B2%E0%B8%A3%E0%B8%B9%E0%B9%89%E0%B8%88%E0%B8%B1%E0%B8%81%E0%B8%95%E0%B8%B1%E0%B8%A7%E0%B8%81%E0%B8%A5%E0%B8%B2%E0%B8%87%E0%B9%80%E0%B8%8A%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%A1%E0%B9%82%E0%B8%A2%E0%B8%87%E0%B8%A3%E0%B8%B0%E0%B8%AB%E0%B8%A7%E0%B9%88%E0%B8%B2%E0%B8%87%E0%B9%81%E0%B8%AD%E0%B8%9B%E0%B8%9E%E0%B8%A5%E0%B8%B4%E0%B9%80%E0%B8%84%E0%B8%8A%E0%B8%B1%E0%B8%99%E0%B8%81%E0%B8%B1%E0%B8%99
แชร์หน้าเว็บนี้ :
Keyword คำสำคัญ »
เขียนโดย
ระดับผู้ใช้ : Admin    Thaiware
แอดมินสายเปื่อย ชอบลองอะไรใหม่ไปเรื่อยๆ รักแมว และเสียงเพลงเป็นพิเศษ
 
 
 

ทิปส์ไอทีที่เกี่ยวข้อง

 


 

แสดงความคิดเห็น