תוכן העניינים[להתחבא][הופעה]
Backend-as-a-Service (BaaS) היא פרדיגמת שירות שבה מפתחים במיקור חוץ את הרכיבים מאחורי הקלעים של פיתוח אינטרנט או נייד, כך שהם יוכלו להתמקד בבנייה ותחזוקה של ה-frontend על בסיס הכנס-אנד-פליי. לברוח מהעומס של כתיבת קוד בצד השרת.
תוכנה התומכת במשימות בצד השרת כגון אימות, ניהול מסד נתונים, עדכון בזמן אמת, אחסון, אירוח והתראות דחיפה מסופקת על ידי פלטפורמות BaaS (עבור אפליקציות לנייד).
למרות ששירותי backend שונים מספקים ביסודו את אותו פתרון, הם משתמשים בטכנולוגיות backend מובחנות. זהו גורם מכריע עבור מפתחים רבים בבחירת השירות הטוב ביותר עבור פרויקט מסוים.
במאמר זה, נצלול עמוק לתוך Supabase.
מה Supabase?
Supabase היא אלטרנטיבה של Firebase בקוד פתוח המציעה Backend as a Service למגוון יישומים. זה ממש פשוט להגדרה ופועל במהירות עם מגוון מסגרות. Supabase מחייבת את עצמה כתחליף ל-Firebase בקוד פתוח.
הוא מתכוון להועיל למפתחים בהגדרה מהירה של ה-backend שלהם. "בנה בסוף שבוע, גדל למיליונים", אומר Supabase.
מוצרי Supabase כוללים מסד נתונים Postgres ושירות אימות, עם שירותי אחסון ושרתים ללא שרת (עבור היגיון אחורי) עדיין בעבודה. כל הכלים שלו הם לרוב חינמיים וקוד פתוח. מסד הנתונים Postgres כולל כלים הקשורים למסד נתונים, כגון ניטור בזמן אמת של שינויים במסד הנתונים וממשק ניהול.
יתר על כן, הוא מספק ממשקי API ותחביר מהירים הדומים לאלה של Firebase. זה מאפשר לך לטפל במשימות CRUD בצורה עקבית, מה שמאפשר לך להתמקד ביצירה במקום בשכתוב קוד CRUD חוזר.
מסד הנתונים של Postgres הוא טבלה המאפשרת לך לאחסן נתונים מאורגנים ומחוברים באותו אופן שהיית עושה בגיליון אלקטרוני. באופן מפתיע, כאשר אתה יוצר פרויקט, אתה עשוי להשתמש בגיליון אלקטרוני קיים כמסד הנתונים שלך ב-Postgres.
איך Supabase עובד?
Supabase הוא אוסף של טכנולוגיות מקור חינמיות. הם יוצרים תכונות של Firebase עם פתרונות קוד פתוח ברמה ארגונית. אם הכלים והקהילות זמינים תחת רישיון MIT, Apache 2 או רישיון פתוח דומה, הם ישתמשו בהם ויתמכו בהם.
אם הכלי לא קיים כבר, הם יוצרים אותו והופכים אותו לזמין בתור קוד פתוח. Supabase אינו מיפוי 1:1 של Firebase. המטרה שלהם היא לספק למפתחים חווית פיתוח דמוית Firebase באמצעות קוד פתוח טכנולוגיות.
Supabase היא פלטפורמה שמתארחת. אתה יכול להירשם ולהתחיל להשתמש בו מבלי שתצטרך להתקין דבר. אתה יכול גם לארח בעצמך ולבנות בשרת משלך.
- ל-PostgreSQL יש מוניטין נהדר של יציבות, חוסן תכונה ומהירות; לאחר יותר מ-30 שנה של פיתוח פעיל,
- Realtime הוא שרת Elixir המאפשר לך להאזין להוספות, עדכונים ומחיקות של PostgreSQL באמצעות WebSockets. Supabase מקשיבה לבקשות שכפול מ-Postgres, ממירה את זרם הביטים של השכפול ל-JSON, ולאחר מכן משדרת את ה-JSON דרך WebSockets.
- PostgREST הוא שרת אינטרנט הממיר את מסד הנתונים של PostgreSQL לממשק API של RESTful.
- Storage מספק ממשק RESTful לניהול קבצים המאוחסנים ב-S3, עם Postgres כמנהל הזכויות.
- Postgres-meta הוא ממשק API של RESTful לניהול Postgres המאפשר לך להוריד טבלאות, להקצות אחריות ולבצע שאילתות, בין היתר.
- GoTrue הוא API מבוסס SWT המאפשר לך לנהל משתמשים ולהנפיק אסימוני SWT.
- קונג הוא שער API שפועל על הענן.
תחילת עבודה
1. פרויקט
ב-Supabase, פרויקט הוא מיכל עבור כל מסדי הנתונים, משתמשי האימות, הכללים, הטבלאות ואחסון הקבצים שלך.
ישנם מספר מקומות שמהם לארח את הפרויקט שלך, ומנהלי Supabase מוסיפים כל הזמן אתרים חדשים כדי להפחית את זמן האחזור. פרויקט לוקח בערך 2 דקות ליצור, אז קח קפה, שבי והירגע.
2. לוח המחוונים של הפרויקט
כשהפרויקט שלך יסתיים, יוצג לך לוח מחוונים דומה לזה שמוצג להלן. לוח המחוונים הזה מראה לך את כל מה שאתה צריך לדעת על הפרויקט שלך, כולל חיבורי מסד נתונים, בקשות אימות, קיבולת אחסון, יישום ספריית לקוחות ועוד.
3. יוצר ועורך טבלאות
מסד הנתונים של Supabase הוא PostgreSQL יחסי עם יכולות בזמן אמת ובקרת גישה למדיניות באמצעות Postgres RLS (Row Level Security). מפתחים עשויים להשתמש בלוח המחוונים של Supabase כדי לבנות טבלה ולהוסיף עמודות ומאפיינים. מפתחים עשויים לשנות נתונים ישירות מלוח המחוונים עם Supabase.
4. אימות
Google, GitHub, Facebook, Twitter, GitLab ועוד ספקי אימות זמינים ב-Supabase. אלה עשויים להיות מופעלים באמצעות לוח האימות. זה תומך גם ב-OTP בטלפון ובאימות קישור מג'יק.
5. אִחסוּן
Supabase היא מערכת אחסון אובייקטים בקוד פתוח שיכולה להתמודד עם כל סוג קובץ ויש לה מדרגיות מובנית. יש לו ממשק API קל לשימוש המאפשר כללים והרשאות מותאמים אישית. שילוב CDN, כמו גם טרנספורמציה אוטומטית ואופטימיזציה (שינוי גודל ודחיסת החומר שלך), יהיו זמינים בקרוב. אחסון Supabase יהיה יריב אדיר לאחסון Firebase עם הכללת היכולות הללו.
מה אתה יכול לבנות עם Supabase? (כמה דוגמאות)
1. תשלום מנוי עם Supabase + Stripe + Next.js.
ערכת ההתחלה המלאה לאפליקציות SaaS בעלות ביצועים גבוהים.
- Supabase מספקת ניהול ואימות מאובטח של משתמשים.
- Stripe Checkout ושילוב פורטל הלקוחות של Stripe.
- Supabase מספק כלי גישה וניהול נתונים רבי עוצמה על גבי PostgreSQL.
- Stripe webhooks מאפשר סנכרון אוטומטי של תוכניות מחיר וסטטוסי מנוי.
2. KeepLink: שירות סימניות פשוט עם תגים וארכיון
KeepLink הוא שירות סימניות בסיסי עם תגים וארכיון שנבנה עם Supabase ו-Next.js. אין לו תכונות שיתוף חברתי, אבל אתה יכול לארח מופע משלך.
- תייג סימניות חדשות באופן אוטומטי בהתבסס על תגים קיימים.
- חיפוש טקסט מלא אחר כתובות אתרים, כותרות, תיאורים, תגיות ותוכן ארכיון הודות לערימת Supabase, כינויים לתיוג עבור מסדי נתונים של מנהל מערכת וגישה נינוחה ל-API.
- עם metascraper, אתה יכול לאסוף באופן אוטומטי כותרות ותיאורים עבור הדפים שלך. אתה יכול גם לאחסן את הדפים שלך עם SinglePage ו- Headless Chrome.
3. אפליקציית צ'אט בזמן אמת עם Supabase + React
- להעברת הודעות בזמן אמת, נעשה שימוש ב-Supabase (על גבי PostgreSQL).
- הקצה הקדמי משתמש ב-React (CRA) + Vite
- ספריית ה-UI המשמשת היא UI של Chakra.
תכונות עיקריות
להלן כמה מהתכונות של Supabase:
- לוח מחוונים/ממשק משתמש להגדרה וניהול של מסד הנתונים שלך תוך פחות מדקה.
- כדי לרשום משתמשים ולעדכן את הגבלות הגישה במסד הנתונים שלך, החל אימות משתמש.
- ממשקי API וספריית JavaScript.
- מאזיני מסד נתונים בזמן אמת.
- הפונקציות (בערך). אלו הם נהלים מאוחסנים במסד נתונים שעשויים להיכתב ב-SQL, JavaScript, Python או Java.
Pros
Supabase מייחד את עצמו מהסיבות הבאות:
- בניגוד ל-Firebase, אתה עשוי להפעיל שאילתות מסובכות או חיפושי טקסט.
- Supabase דואגת לשינוי קנה המידה עבורך (למרות שהיא משתמשת במסד נתונים של SQL)
- העברת נתונים פשוטה עם Supabase מכיוון שהיא ממנפת את PostgreSQL, ואתה יכול לייבא נתונים באמצעות קובץ a.sql.
חסרונות
יש כמה חסרונות של אימוץ Supabase. הם כדלקמן:
- כדי לקבל שינויים בזמן אמת, עליך להפעיל את פונקציונליות השכפול של טבלה.
- כאשר עדכונים בזמן אמת מופעלים, מדיניות האבטחה של Supabase אינה חלה.
- התכונות מוגבלות.
- ה-SDK שלו עובד רק עם JavaScript (התמיכה לשפות אחרות עדיין בגרסת בטא)
מחיר כרטיס
1. דרג חינם
- מסד נתונים עם 500 מגה-בייט של שטח אחסון ושיחות API ללא הגבלה
- אימות - עד 10,000 משתמשים
- אחסון קבצים - עד 1 GB של אחסון, עם מגבלות העברה חודשיות של עד 2 GB.
2. שלם תוך כדי
- מסד נתונים - $0.125 ל-GB של אחסון, ללא הגבלה על קריאות API
- אישור - ללא הגבלה
- אחסון קבצים - נתונים מאוחסנים $0.021 ל-GB עם העברת נתונים של $0.07/GB
למידע נוסף על מחירים, אתה יכול לבדוק באתר שלהם.
סיכום
Supabase הוא הקוד הפתוח הטוב ביותר אלטרנטיבה ל-Firebase של גוגל. בגלל הכוח של PostgreSQL, הוא מציע מגוון תכונות יוצאות דופן ואין לו מגבלות על סוגי נתונים כמו מערכות מסד נתונים אחרות בזמן אמת.
אתה יכול ליצור מגוון אפליקציות באמצעות Supabase והתכונות המצוינות שלה. נסה את זה היום!
מרסלו
במקרה של B2B SaaS, האם ניתן להחזיק משתמש ראשי 1 לכל לקוח ו-N משתמשים אחרים הקשורים למאסטר זה העוסקים רק בנתונים מלקוח זה?