หากพูดถึง API คุณรู้ไหมว่ามันคืออะไร? API ย่อมากจาก Application Programming Interface คือการเชื่อมต่อระหว่างระบบหนึ่งไปยังอีกระบบหนึ่ง ยกตัวอย่างเช่น โรงพยาบาลหนึ่งต้องการใช้ข้อมูลจากบริษัทประกันเพื่อต้องการที่จะรู้ว่าคนไข้ที่มารักษาที่โรงพยาบาลแห่งนี้ทำประกันกับบริษัทนี้จริงหรือไม่ก็ใช้ API ในการเชื่อมต่อเพื่อตรวจสอบข้อมูล
ทำไมถึงต้องมี API?
ในยุคปัจจุบันการทำงานระหว่างแอปพลิเคชันหรือแม้แต่ภายในแอปพลิเคชันก็มี API เป็นส่วนประกอบ เพราะฉะนั้นประโยชน์แรกของ API เลยก็คือใช้เป็นตัวเชื่อมต่อระหว่างแอปพลิเคชันเรียกว่า Point of Integration ถัดไปคือแอปพลิเคชันแบบเก่า ๆ ที่เราอาจจะเคยเรียนมาเป็นแบบ standalone หรือ web application เราก็เปลี่ยนมาเป็นรูปแบบของ front-end และ back-end ที่มี API คั่นกลาง ซึ่งเราเรียกว่าการทำ Application Modernization เรียกว่าการเขียนใหม่หรือปรับปรุงใหม่เราก็ใช้ API ทั้งนั้น พอมี API เกิดขึ้นในแอปพลิเคชันแล้ว ถัดมาจึงทำให้เกิดการแชร์กันระหว่างแอปพลิเคชันพอ build up ขึ้นมาจะทำให้เกิด Ecosystems
Ecosystems เป็นการเชื่อมต่อระหว่างแอปพลิเคชันหลาย ๆ แอปพลิเคชันหรือเป็นการเชื่อมต่อกันหลาย ๆ องค์กร โดยทั่วไปจะทำให้เกิดการ Transform ไปถึง Business Model ซึ่งมีการร่วมมือกันทางธุรกิจเกิดจากการแลกเปลี่ยน API ยกตัวอย่างเช่น ถ้าเราเปิด Facebook สิ่งที่จะขึ้นเป็นอย่างแรกเลยก็คือบาร์สีฟ้า ซึ่งก็คือโครงสร้างของเว็บไซต์จะขึ้นก่อนส่วนที่ขึ้นตามมาทีหลังก็คือ content ต่าง ๆ ที่ขึ้นกันตามไทม์ไลน์ซึ่งก็คือการเรียกแต่ละ API สำหรับการดึงข้อมูลของ content แต่ละส่วนบนหน้าจอ
API ทำให้เกิดสิ่งที่เรียกว่า Ecosystems ล้อมรอบ API ตามทฤษฎีของ Ecosystems แบ่งเป็น 4 ระดับ 1. Internal Ecosystems คือ แอปพลิเคชันข้างในใช้กันเองหรือในองค์กรด้วยกันเอง 2. Partner Ecosystems คือ ธุรกิจเชื่อมต่อกันเป็นพาร์ทเนอร์แล้วเรียก API ข้ามกัน 3. Industry Ecosystems เช่น ในอุตสาหกรรมแบงก์หรืออุตสาหกรรมโรงพยาบาลอาจจะมีการแลกเปลี่ยนข้อมูลเชิงธุรกิจในอุตสหากรรมเดียวกัน 4. Public Ecosystem บางองค์กรจะมี Open API สำหรับให้คนทั่วไปดูว่าทางองค์กรมีข้อมูลอะไรบ้างให้เรียกใช้และมี API key อะไรบ้าง ยกตัวอย่างเช่น บริษัทน้ำมันมี API ให้คนทั่วไปเช็กราคาน้ำมันได้ หรือบริษัทการเงินมี API ให้คนเรียกดูอัตราแลกเปลี่ยนเงินระหว่างประเทศได้
ถ้าหากเรามอง API เป็นสินค้าหนึ่งเรามาสามารถทำ API ของเราได้เพื่อหาเงินจาก API ที่เราสร้างขึ้นข้อมูลที่เราแชร์ออกไปอาจแชร์จากข้อมูล CRM Data ของตนเองหรือไปดึงข้อมูลจากคนที่แชร์ API ที่เป็นพาร์ทเนอร์ของเราก็ได้เช่นกัน ซึ่งต้องมีการกำหนดว่าใครสามารถใช้ API ได้มากน้อยแค่ไหนก็ต้องมี API management
API management จะช่วยจัดการกรุ๊ป API ออกมาเป็นกลุ่มว่าสินค้าแต่ละกลุ่มเป็น API เกี่ยวกับอะไร
ขั้นตอนในการ build up API ด้วย API management
1. Design
2. Develop
3. Integrate
4. Secure
5. Deploy
6. Publish
7. Monitor
8. Analyze
9. Monetize
API management บางแบรนด์สามารถทำ flow ได้ ยกทำอย่างเช่น Apigee สามารถทำ flow condition หลังจากที่เรียกเข้ามามันสามารถตรวจสอบเงื่อนไขของความปลอดภัยต่าง ๆ จากนั้นก็จะไปเรียน service หลังบ้านซึ่งอาจจะเกิดจากการเรียก service หลายตัวเพื่อ return ผลลัพธ์ออกไปจากการเรียก API 1 ครั้ง รวมไปถึงการทำ Transformation ข้อมูลต่าง ๆ และอีกอย่างที่สำคัญที่สุดคือการทำ rate limit เช่น การลิมิตว่าเรียกได้ภายใน 1 นาทีไม่เกิน 100 ครั้ง
ในด้านความปลอดภัย API management ก็จะช่วยเสริมความปลอดภัยในมุม SSL ต่าง ๆ ยกตัวอย่างเช่น การทำ API key ในขั้นต่ำ, SSO, การเข้ารหัสด้วย JWT API management ส่วนใหญ่จะเน้นความปลอดภัยเป็นสำคัญ และเพื่อรองรับการใช้ใน multi-platform API management มีการปรับตัวมาใช้ SaaS อยู่บนเว็บไซต์หรืออยู่บน cloud ของ Google เองในขณะเดียวกันถ้าหากระบบงานของลูกค้าอยู่บน Data Center ของลูกค้าหรืออาจจะอยู่ในหลากหลาย Cloud Apigee จึงมีผู้ช่วยที่จะมาดูแลในส่วนตรงนี้นั่นคือ Anthos
Anthos คือ multi-cluster Kubernetes management สมมุติว่าต้องมี cluster ของ Kubernetes หลายชุดหรือหลาย Data center สามารถรวมกันเป็น single dashboard แล้วจัดการได้ผ่าน UI ที่เดียวหรือเลือก deploy container ของแอปพลิเคชันลงไปพร้อมกันหลาย cluster จาก UI ที่เดียว เช่นเราอยากมีแอปพลิเคชันที่สามารถ deploy ได้หลาย data center และบน หลาย cloud พร้อมกันเราก็สามารถใช้ Anthos ได้
Anthos สามารถทำงานได้หมดเลยทั้งบน Google cloud, Azure, AWS, GCP, vSphere รวมไปถึงในรูปแบบ Attached Clusters คือติดตั้งเป็นโมดูลบนหลาย data center หรือ cloud อื่นๆแต่ควบคุมผ่าน UI บน Google cloud ที่เดียวอีกด้วย