Microsoft Azure App Service คืออะไร?

Azure App Service เป็นอีกหนึ่งในบริการยอดนิยมของ Microsoft ที่ถูกใช้บริการมากที่สุด บริการนี้มีเครื่องมือที่จำเป็นเเละตอบโจทย์เป็นอย่างมากสำหรับ Developer ที่ต้องการมุ่งเน้นเเละให้ความสำคัญไปกับการพัฒนา Application โดยที่ไม่ต้องกังวลเกี่ยวกับ Infrastructure ใดๆ

Azure App Service

เป็นบริการให้เช่าใช้พื้นที่สำหรับการวางเว็ปไซต์ที่มีความยืดหยุ่นสูงในรูปแบบ PaaS (Platform As a Service) โดยสามารถเพิ่มจำนวนหรือ Scale Out อัตโนมัติ เพื่อรองรับการเข้าระบบที่มีจำนวนมาก โดยที่ไม่ต้องเสียเวลาในการเปิดปิดเครื่องเพื่อ Set up ระบบใหม่ ซึ่ง Azure App Service นั้นรองรับการทำงานบน Windows และ Linux เป็นหลัก เเละยังสามารถรองรับได้หลากหลายภาษาเช่น ASP.NET, PHP, Node.js และ Python เเละอื่นๆ โดยก่อนจะเริ่มการใช้งานในเเต่ละบริการของ Azure App Service นั้น ผู้ใช้บริการจะต้องทำการกำหนดชุดประมวลผลใน Azure App Service Plan เพื่อกำหนดค่าต่างๆบน App 

Azure App Service Plan

คือกลุ่มของเซิฟเวอร์หลายๆตัวที่ทำงานร่วมกันเหมือน Server Farm ซึ่งทำหน้าที่กำหนดขนาดของ Hardware ที่ทำหน้าที่ประมวลผลของเครื่องคอมพิวเตอร์ เมื่อผู้ใช้งานได้ทำการสร้าง App ใน App Service ขึ้นมา App นั้นจะถูกรวมไปอยู่ใน Azure App Service Plan และเมื่อ App ทำงาน มันจะทำงานตามค่าที่ถูกกำหนดไว้ใน Azure App Service Plan โดยที่จะสามารถกำหนดค่าต่างๆใน 1 Server เพื่อเป็นต้นแบบหรือเป็น Server หลักสำหรับการทำงานบนคอมพิวเตอร์ที่มีทรัพยากร โดยมี Operating System อยู่ 2 ระบบปฎิบัติการ ซึ่งทั้งสองระบบนี้มีความแตกต่างกันทั้งราคาและบริการเสริม

  1. Windows
  2. Linux

Scaling

คือวิธีการปรับแต่งขนาดของระบบเพื่อรองรับปริมาณผู้ใช้งานที่จะเข้ามาใช้บริการใน Server ที่มีจำนวนผู้ใช้งานเป็นจำนวนมาก โดยมีรูปแบบวิธีการปรับแต่ง แบ่งเป็น 2 รูปเเบบดังนี้

Scale Up & Scale Down

Scale-Up Scale Down

เป็นการ เพิ่ม/ลด ขนาดของทรัพยากรคอมพิวเตอร์ 1 เครื่อง เพื่อทำให้ Server มีประสิทธิภาพในการประมวลผลที่มากขึ้น เพื่อรองรับการทำงานที่มีผู้ใช้มากขึ้นเช่น การเพิ่มขนาดของ CPU, RAM,DISK Space เเละอื่นๆ เพื่อเร่งให้เครื่องทำงานได้เร็วยิ่งขึ้นกว่าเดิม หรือรองรับการประมวลผลได้มากขึ้น

Scale Out & Scale In

Scale-Out Scale In

เป็นการ เพิ่ม/ลด จำนวนเครื่อง หรือเป็นการนำคอมพิวเตอร์หลายๆเครื่องที่มี Runtime เหมือนกันมาช่วยกันประมวลให้รองรับการทำงานที่มากกว่าแบบ Scale Up 

Software Container

คือการสร้างสภาพแวดล้อมหรือจำลองสภาพแวดล้อมเฉพาะขึ้นมาบนเครื่อง Server เพื่อใช้ในการ Run service ที่ต้องการ มีการทำงานคล้ายคลึงกับ Virtual Machine เพื่อให้ซอฟต์แวร์ทำงานได้โดยไม่ไปรบกวนกับซอฟต์แวร์ตัวอื่นบนระบบปฏิบัติการเดียวกัน 

ทำให้ช่วยลดการเกิดปัญหาความต่างโปรแกรมกันระหว่างเครื่อง Development กับ Production ซึ่งอาจจะใช้ตัวละเวอร์ชั่นกัน ซึ่งถ้าหากนำ Code มาเขียนบนเครื่อง Development อาจจะสามารถรันได้ปกติ แต่เมื่อเอา Code ขึ้น Production อาจจะทำให้ Code นั้นเกิด Error

 Software Container

Docker เป็นหนึ่งใน Software Container ที่นิยมใช้กันอย่างเเพร่หลายเป็นวงกว้าง เป็นตัวจัดการ Container ที่ง่ายกว่าตัวอื่นๆ ทำให้ปัจจุบัน  Docker เริ่มเข้ามามีบทบาทในกลุ่มของนักพัฒนามากขึ้นเรื่อยๆ โดยคุณสมบัติของ Docker นั้นมีดังนี้

  • สามารถใช้งานได้หลาย Platform ทั้งบน Windows , Linux และ Mac 
  • ในทุกๆครั้งที่จะทำการติดตั้ง Container ไม่จำเป็นต้องติดตั้งระบบ OS ใหม่
  • สามารถ Build Container เป็น Image แล้วส่งเป็นไฟล์ให้คนในทีมใช้งานได้โดยไม่ต้องกังวลในการติดตั้งเครื่องมือที่ต่างเวอร์ชั่นกัน

บริการ Azure App Service มีทั้งหมด 5 บริการ

1.Web Apps

เป็นหนึ่งในบริการ Azure ที่ใช้กันอย่างแพร่หลาย ซึ่งช่วยให้ผู้ใช้บริการสามารถเช่าวาง website หรือ web application ใน App Service เป็น Platform ที่มีประสิทธิภาพในการ build, deploy เเละยังสามารถปรับขนาดของ Web ได้อย่างอัตโนมัติ (scale up and scale down) พร้อมกับทั้งสามารถสร้างบริการ CI ( continuous integration) โดยบริการ App Service นี้ สามารถรองรับได้หลากหลายภาษาเช่น NET, Java, PHP, Node.js, Python

2. Mobile Apps

บริการนี้จะมาช่วยให้ผู้ใช้บริการสร้าง Mobile Application โดยสามารถทำ Backend เเละทำการ Run APIs สำหรับการพัฒนา Mobile Application โดยในบริการ Azure App Service นั้นมีบริการต่างๆสำหรับ Mobile Apps เช่น 

Offline Sync

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

เมื่อเกิดปัญหาในสภาวะที่ระบบ Offline บริการ Offline Sync จะช่วยดำเนินการให้ผู้ใช้งานยังสามารถใช้งานได้ในขณะที่ Offline เเละเมื่อกลับมา Online อีกครั้ง ข้อมูลนั้นๆก็จะทำการ Run เองโดยอัตโนมัติ

ตัวอย่าง: เมื่อผู้ใช้งานกำลังจะโพสต์รูปบน Social Media บนมือถือ เเต่เมื่อกำลังจะกดอัพรูป อยู่ดีๆสัญญาณอินเตอร์เน็ตก็เกิดหลุดหายไป บริการ Offline Sync จะช่วยให้ผู้ใช้งานยังคงดำเนินการกับโพสต์นั้นได้เเละเมื่ออินเตอร์เน็ตกลับมา Online อีกครั้ง โพสต์นั้นจะถูกอัพโหลดโดยทันที

Push Notifications

เป็นการสร้างการเเจ้งเตือนจาก App ของผู้ใช้บริการไปยังเครื่องมือสื่อสารของผู้ใช้งาน โดยอุปกรณ์สื่อสารในทุกเเพลตฟอร์มจะมีระบบในการ Push Notification ที่เรียกว่า Platform Notification Service (PNS) โดยของฝั่งระบบ IOS คือ Apple Push Notification Service (APNS) เเละฝั่งของ Android คือ Firebase Cloud Messaging (FCM)

3. API Apps

API หรือ Application Programming Interface ทำหน้าที่ช่วยในการเข้าถึงข้อมูลต่าง ๆหรือจะเป็นการนำข้อมูลต่างๆออกจากเว็บไซต์ หรือจะเป็นการส่งข้อมูลเข้าไป โดยเจ้าของเว็บไซต์จะกำหนดขอบเขตในการเข้าถึงบริการต่าง ๆของทางเว็บไซต์ ซึ่งเป็นแพลตฟอร์มที่ช่วยในการสร้างโฮสต์และใช้ API สำหรับระบบคลาวด์และโครงสร้างพื้นฐานภายในองค์กร รองรับหลากหลายภาษาเช่น Python, C # หรือแม้แต่ PHP และอีกทั้งยังรองรับ Framework เช่น Node JS, ASP.net Web API และอื่นๆ

4. Function Apps 

การประมวลผลแบบไร้เซิร์ฟเวอร์ (Serverless) ช่วยให้ Developer สามารถมุ่งเน้นกับการให้ความสำคัญของการสร้างแอปพลิเคชันได้เร็วขึ้นโดยไม่จำเป็นต้องจัดการโครงสร้างพื้นฐานของคอมพิวเตอร์ (Infrastructure) โดยผู้ให้บริการระบบคลาวด์จะเป็นคนดูแลทุกอย่างของ Server ให้ทั้งการจัดเตรียม ปรับขนาดและจัดการโครงสร้างพื้นฐานที่จำเป็นในการรันโค้ดอัตโนมัติ โดยที่ Dev นั้นจะเป็นผู้ทำการนำ Code ไป Run บนโปรแกรมเพื่อให้การทำงานเป็นไปอย่างอัตโนมัติ สามารถรองรับในการใช้งานได้หลากหลายภาษาและแพลตฟอร์มเช่น NuGet และ NPM

มีคำถามหรือข้อสงสัยเพิ่มเติม สามารถ Inbox เข้ามาสอบถามได้นะคะ ?

บทความของเราน่าสนใจใช่ไหม เเชร์เลย!

Recent Posts

SQL Database Deployment Model

Microsoft Azure SQL Database [Deployment Model]

Deployment Model   เป็นบริการในรูปแบบPlatform as a Serviceของระบบฐานข้อมูลDatabaseบนโครงสร้างของMicrosoft AzureโดยมีDeployment Options ดังต่อไปนี้ 

Read More »
Microsoft App Serviceคืออะไร?

Microsoft Azure App Service คืออะไร?

Azure App Service เป็นอีกหนึ่งในบริการยอดนิยมของ Microsoft ที่ถูกใช้บริการมากที่สุด บริการนี้มีเครื่องมือที่จำเป็นเเละตอบโจทย์เป็นอย่างมากสำหรับ Developer ที่ต้องการมุ่งเน้นเเละให้ความสำคัญไปกับการพัฒนา Application

Read More »