สารบัญ[ซ่อน][แสดง]
Backend-as-a-Service (BaaS) เป็นกระบวนทัศน์ของบริการที่นักพัฒนาซอฟต์แวร์จ้างส่วนประกอบเบื้องหลังของการพัฒนาเว็บหรืออุปกรณ์พกพาเพื่อที่พวกเขาจะได้มุ่งเน้นไปที่การสร้างและบำรุงรักษาส่วนหน้าบนพื้นฐานแบบพลักแอนด์เพลย์และ หลีกหนีจากภาระในการเขียนโค้ดฝั่งเซิร์ฟเวอร์
ซอฟต์แวร์ที่รองรับงานฝั่งเซิร์ฟเวอร์ เช่น การรับรองความถูกต้อง การดูแลฐานข้อมูล การอัปเดตตามเวลาจริง การจัดเก็บ การโฮสต์ และการแจ้งเตือนแบบพุชนั้นให้บริการโดยแพลตฟอร์ม BaaS (สำหรับแอปมือถือ)
แม้ว่าบริการแบ็กเอนด์ต่างๆ จะให้โซลูชันเดียวกันโดยพื้นฐานแล้ว แต่ก็ใช้เทคโนโลยีแบ็กเอนด์ที่แตกต่างกัน นี่เป็นปัจจัยชี้ขาดสำหรับนักพัฒนาหลายๆ คนในการเลือกบริการที่ดีที่สุดสำหรับโครงการใดโครงการหนึ่ง
ในบทความนี้ เราจะเจาะลึกไปที่ Supbase
ความหมายของ ศุภเบส?
ศุภเบส เป็นทางเลือก Firebase แบบโอเพนซอร์สที่นำเสนอ Backend as a Service ให้กับแอปพลิเคชันที่หลากหลาย การติดตั้งและดำเนินการอย่างรวดเร็วด้วยเฟรมเวิร์กต่างๆ ทำได้ง่ายมาก Supabase เรียกเก็บเงินตัวเองเป็นการแทนที่โอเพ่นซอร์สสำหรับ Firebase
มีวัตถุประสงค์เพื่อประโยชน์นักพัฒนาในการตั้งค่าแบ็กเอนด์อย่างรวดเร็ว “สร้างในวันหยุดสุดสัปดาห์ เติบโตเป็นล้าน” ศุภเบสกล่าว
ผลิตภัณฑ์ Supabase ประกอบด้วยฐานข้อมูล Postgres และบริการตรวจสอบสิทธิ์ พร้อมพื้นที่จัดเก็บและบริการไร้เซิร์ฟเวอร์ (สำหรับลอจิกแบ็กเอนด์) ที่ยังใช้งานได้ เครื่องมือทั้งหมดส่วนใหญ่เป็นโอเพ่นซอร์สฟรี ฐานข้อมูล Postgres ประกอบด้วยเครื่องมือที่เกี่ยวข้องกับฐานข้อมูล เช่น การตรวจสอบการแก้ไขฐานข้อมูลแบบเรียลไทม์และอินเทอร์เฟซการจัดการ
นอกจากนี้ยังมี API และไวยากรณ์ที่รวดเร็วซึ่งเทียบได้กับ Firebase สิ่งนี้ทำให้คุณสามารถจัดการกับงาน CRUD ได้อย่างสม่ำเสมอ ช่วยให้คุณมุ่งเน้นไปที่การสร้างแทนที่จะเขียนรหัส CRUD ซ้ำๆ
ฐานข้อมูล Postgres เป็นตารางที่ให้คุณจัดเก็บข้อมูลที่จัดระเบียบและเชื่อมต่อในลักษณะเดียวกับที่คุณทำในสเปรดชีต น่าแปลกที่เมื่อคุณสร้างโครงการ คุณอาจใช้สเปรดชีตที่มีอยู่เป็นฐานข้อมูล Postgres ของคุณ
ซูบาเบสทำงานอย่างไร?
Supbase คือชุดของเทคโนโลยีที่มาฟรี พวกเขากำลังสร้างฟีเจอร์ Firebase ด้วยโซลูชันโอเพนซอร์สระดับองค์กร หากเครื่องมือและชุมชนพร้อมใช้งานภายใต้ MIT, Apache 2 หรือไลเซนส์แบบเปิดที่เทียบเคียงกันได้ พวกเขาจะใช้และสนับสนุนเครื่องมือเหล่านี้
หากเครื่องมือนี้ไม่มีอยู่แล้ว ให้สร้างและทำให้มันพร้อมใช้งานเป็น โอเพนซอร์ส. Supabase ไม่ใช่การแมป Firebase แบบ 1:1 เป้าหมายของพวกเขาคือการมอบประสบการณ์การพัฒนาที่เหมือน Firebase ให้กับนักพัฒนาโดยใช้ โอเพนซอร์ส เทคโนโลยี
Supabase เป็นแพลตฟอร์มที่โฮสต์ คุณสามารถลงทะเบียนและเริ่มใช้งานได้โดยไม่ต้องติดตั้งอะไรเลย นอกจากนี้คุณยังสามารถโฮสต์และสร้างบนเซิร์ฟเวอร์ของคุณเองได้
- PostgreSQL มีชื่อเสียงอย่างมากในด้านความเสถียร ความทนทานของฟีเจอร์ และความเร็ว หลังจากกว่า 30 ปีของการพัฒนาอย่างแข็งขัน
- เรียลไทม์คือเซิร์ฟเวอร์ Elixir ที่ให้คุณฟังการแทรก อัปเดต และลบ PostgreSQL โดยใช้ WebSockets Supabase รับฟังคำขอการจำลองแบบจาก Postgres แปลงสตรีมไบต์การจำลองแบบเป็น JSON จากนั้นจึงเผยแพร่ JSON ผ่าน WebSockets
- PostgREST คือเว็บเซิร์ฟเวอร์ที่แปลงฐานข้อมูล PostgreSQL ของคุณให้เป็น RESTful API
- Storage จัดเตรียมอินเทอร์เฟซ RESTful สำหรับจัดการไฟล์ที่จัดเก็บไว้ใน S3 โดยมี Postgres เป็นผู้จัดการสิทธิ์
- Postgres-meta เป็น RESTful API สำหรับการจัดการ Postgres ที่ให้คุณดาวน์โหลดตาราง มอบหมายความรับผิดชอบ และดำเนินการค้นหา และอื่นๆ
- GoTrue เป็น API แบบ SWT ที่ให้คุณจัดการผู้ใช้และออกโทเค็น SWT
- Kong เป็นเกตเวย์ API ที่ทำงานบนคลาวด์
หากคุณยังไม่ได้เปิดบัญชี IQ Option คลิ๊กที่นี่ กรอกรายละเอียดของคุณและมันจะนำไปยังหน้าเพจที่คล้ายด้านล่างนี้
1. โครงการ
ใน Supabase โปรเจ็กต์คือคอนเทนเนอร์สำหรับฐานข้อมูล ผู้ใช้การตรวจสอบสิทธิ์ กฎ ตาราง และการจัดเก็บไฟล์ทั้งหมดของคุณ
มีหลายที่สำหรับโฮสต์โครงการของคุณ และผู้ดูแลระบบ Supabase จะเพิ่มไซต์ใหม่อย่างต่อเนื่องเพื่อลดเวลาในการตอบสนอง โปรเจ็กต์ใช้เวลาประมาณ 2 นาทีในการสร้าง ดื่มกาแฟ นั่งลงและผ่อนคลาย
2. แดชบอร์ดโครงการ
เมื่อโครงการของคุณเสร็จสิ้น คุณจะเห็นแดชบอร์ดที่คล้ายกับที่แสดงด้านล่าง แดชบอร์ดนี้จะแสดงทุกสิ่งที่คุณจำเป็นต้องรู้เกี่ยวกับโปรเจ็กต์ของคุณ รวมถึงการเชื่อมต่อฐานข้อมูล คำขอตรวจสอบสิทธิ์ ความจุของพื้นที่จัดเก็บ การใช้งานไลบรารีของไคลเอ็นต์ และอื่นๆ
3. ผู้สร้างและแก้ไขตาราง
ฐานข้อมูลของ Supabase เป็น PostgreSQL เชิงสัมพันธ์ที่มีความสามารถแบบเรียลไทม์และการควบคุมการเข้าถึงนโยบายโดยใช้ Postgres RLS (Row Level Security) นักพัฒนาสามารถใช้แดชบอร์ดของ Supabase เพื่อสร้างตารางและเพิ่มคอลัมน์และคุณสมบัติ นักพัฒนาสามารถแก้ไขข้อมูลได้โดยตรงจากแดชบอร์ดด้วย Supabase
4 การรับรอง
Google, GitHub, Facebook, Twitter, GitLab และผู้ให้บริการตรวจสอบสิทธิ์อื่นๆ พร้อมให้บริการบน Supabase สิ่งเหล่านี้สามารถเปิดใช้งานได้โดยใช้แผงการตรวจสอบสิทธิ์ รองรับ Phone OTP และ Magic Link Authentication
5 การเก็บรักษา
Supabase เป็นระบบจัดเก็บออบเจ็กต์แบบโอเพนซอร์สที่สามารถจัดการไฟล์ประเภทใดก็ได้และมีความสามารถในการปรับขนาดในตัว มี API ที่ใช้งานง่ายซึ่งเปิดใช้กฎและการอนุญาตที่กำหนดเอง การผสานรวม CDN ตลอดจนการเปลี่ยนรูปแบบอัตโนมัติและการเพิ่มประสิทธิภาพ (การปรับขนาดและการบีบอัดเนื้อหาของคุณ) จะพร้อมใช้งานในไม่ช้า ที่เก็บข้อมูล Supabase จะเป็นคู่แข่งที่น่าเกรงขามของที่เก็บข้อมูล Firebase ด้วยการรวมความสามารถเหล่านี้ไว้
คุณสามารถสร้างอะไรด้วย Supbase? (ตัวอย่างบางส่วน)
1. ค่าสมัครสมาชิก ด้วย Supbase + Stripe + Next.js
ชุดเริ่มต้นที่สมบูรณ์สำหรับแอป SaaS ประสิทธิภาพสูง
- Supbase ให้การดูแลและรับรองความถูกต้องของผู้ใช้
- Stripe Checkout และการรวมพอร์ทัลลูกค้า Stripe
- Supabase มอบเครื่องมือการจัดการและการเข้าถึงข้อมูลที่มีประสิทธิภาพนอกเหนือจาก PostgreSQL
- เว็บฮุค Stripe เปิดใช้งานการซิงโครไนซ์แผนราคาและสถานะการสมัครโดยอัตโนมัติ
2. KeepLink: บริการคั่นหน้าอย่างง่ายพร้อมแท็กและไฟล์เก็บถาวร
KeepLink เป็นบริการบุ๊กมาร์กพื้นฐานพร้อมแท็กและไฟล์เก็บถาวรที่สร้างด้วย Supabase และ Next.js ไม่มีคุณลักษณะการแบ่งปันทางสังคม แต่คุณสามารถโฮสต์อินสแตนซ์ของคุณเองได้
- แท็กบุ๊กมาร์กใหม่โดยอัตโนมัติตามแท็กที่มีอยู่
- ค้นหาข้อความแบบเต็มสำหรับ URL, ชื่อ, คำอธิบาย, แท็ก และเนื้อหาที่เก็บถาวรด้วยสแต็ก Supabase, นามแฝงการติดแท็กสำหรับฐานข้อมูลผู้ดูแลระบบ และขณะนี้สามารถเข้าถึง API ที่สงบได้
- ด้วย metascraper คุณสามารถรวบรวมชื่อและคำอธิบายสำหรับเพจของคุณได้โดยอัตโนมัติ คุณยังสามารถเก็บถาวรหน้าเว็บของคุณด้วย SinglePage และ Headless Chrome
3. แอพแชทแบบเรียลไทม์ ด้วย Supbase + React
- สำหรับการส่งข้อความแบบเรียลไทม์ จะใช้ Supabase (ที่ด้านบนของ PostgreSQL)
- ส่วนหน้าใช้ React (CRA) + Vite
- ไลบรารี UI ที่ใช้คือ Chakra UI
Key Features
นี่คือคุณสมบัติบางอย่างของ Supbase:
- แดชบอร์ด/ส่วนต่อประสานผู้ใช้สำหรับการตั้งค่าและจัดการฐานข้อมูลของคุณในเวลาน้อยกว่าหนึ่งนาที
- หากต้องการลงทะเบียนผู้ใช้และอัปเดตข้อจำกัดการเข้าถึงในฐานข้อมูลของคุณ ให้ใช้การตรวจสอบสิทธิ์ผู้ใช้
- API และไลบรารี JavaScript
- ผู้ฟังฐานข้อมูลแบบเรียลไทม์
- ฟังก์ชั่น (แบบ) เหล่านี้เป็นขั้นตอนการจัดเก็บฐานข้อมูลที่อาจเขียนใน SQL, JavaScript, Python หรือ Java
ข้อดี
Supbase แตกต่างด้วยเหตุผลดังต่อไปนี้:
- ตรงกันข้ามกับ Firebase คุณอาจเรียกใช้คำค้นหาหรือการค้นหาข้อความที่ซับซ้อนได้
- Supabase ดูแลการปรับขนาดให้คุณ (แม้ว่าจะใช้ฐานข้อมูล SQL)
- การย้ายข้อมูลทำได้ง่ายด้วย Supabase เนื่องจากใช้ประโยชน์จาก PostgreSQL และคุณสามารถนำเข้าข้อมูลโดยใช้ไฟล์ a.sql
จุดด้อย
การนำ Supbase มาใช้มีข้อเสียอยู่บ้าง พวกเขามีดังนี้:
- หากต้องการรับการเปลี่ยนแปลงแบบเรียลไทม์ คุณต้องเปิดใช้งานฟังก์ชันการจำลองแบบสำหรับตาราง
- เมื่อเปิดใช้งานการอัปเดตตามเวลาจริง นโยบายความปลอดภัยของ Supabase จะไม่มีผลใช้บังคับ
- คุณสมบัติมีจำกัด
- SDK ของมันใช้งานได้กับ JavaScript เท่านั้น (รองรับภาษาอื่นยังอยู่ในช่วงเบต้า)
ราคา
1. ฟรีเทียร์
- ฐานข้อมูลที่มีพื้นที่จัดเก็บ 500 MB และการเรียก API ไม่จำกัด
- รับรองความถูกต้อง – มากถึง 10,000 ผู้ใช้
- พื้นที่จัดเก็บไฟล์ – พื้นที่เก็บข้อมูลสูงสุด 1 GB โดยมีข้อจำกัดในการถ่ายโอนรายเดือนสูงสุด 2 GB
2. จ่ายตามที่คุณไป
- ฐานข้อมูล – 0.125 เหรียญสหรัฐต่อพื้นที่เก็บข้อมูล XNUMX GB โดยไม่จำกัดการเรียก API
- รับรองความถูกต้อง – ไม่ จำกัด
- พื้นที่จัดเก็บไฟล์ – ข้อมูลที่จัดเก็บ 0.021 ดอลลาร์ต่อ GB พร้อมการถ่ายโอนข้อมูล $0.07/GB
ดูข้อมูลราคาเพิ่มเติมได้ที่เว็บไซต์.
สรุป
Supabase เป็นโอเพ่นซอร์สที่ดีที่สุด ทางเลือกแทน Firebase ของ Google. เนื่องจากประสิทธิภาพของ PostgreSQL จึงมีคุณสมบัติที่โดดเด่นมากมาย และไม่มีข้อจำกัดประเภทข้อมูลใดๆ เช่นเดียวกับระบบฐานข้อมูลแบบเรียลไทม์อื่นๆ
คุณสามารถสร้างแอพได้หลากหลายโดยใช้ Supabase และคุณสมบัติที่ยอดเยี่ยมของมัน ให้มันลองวันนี้!
มาร์เซโล
ในกรณีของ B2B SaaS เป็นไปได้ไหมที่จะมีผู้ใช้หลัก 1 รายต่อลูกค้าหนึ่งราย และมีผู้ใช้ N รายอื่นที่เกี่ยวข้องกับหลักนี้ที่เกี่ยวข้องกับข้อมูลจากลูกค้ารายนี้เท่านั้น