Мазмұны[Жасыру][Көрсету]
Backend-as-a-Service (BaaS) – әзірлеушілер веб-немесе мобильді әзірлеудің сахналық құрамдас бөліктерін аутсорсингке беретін сервистік парадигма, осылайша олар қосу және ойнату негізінде фронтенді құруға және қолдауға назар аудара алады. серверлік кодты жазу ауыртпалығынан құтылыңыз.
Аутентификация, дерекқорды басқару, нақты уақытта жаңарту, сақтау, хостинг және push ескертулері сияқты серверлік тапсырмаларды қолдайтын бағдарламалық құрал BaaS платформаларымен қамтамасыз етіледі (мобильді қолданбалар үшін).
Түрлі сервер қызметтері негізінен бірдей шешімді қамтамасыз етсе де, олар әртүрлі серверлік технологияларды пайдаланады. Бұл белгілі бір жоба үшін ең жақсы қызметті таңдау кезінде көптеген әзірлеушілер үшін шешуші фактор.
Бұл мақалада біз Supabase-ге тереңірек енетін боламыз.
қандай Супабаза?
Супабаза түрлі қолданбаларға қызмет ретінде Backend ұсынатын ашық бастапқы Firebase балама болып табылады. Оны орнату өте қарапайым және әртүрлі фреймворктармен жылдам жұмыс істейді. Supabase өзін Firebase үшін ашық бастапқы ауыстыру ретінде есептейді.
Ол әзірлеушілерге өздерінің серверлерін жылдам орнатуда пайда әкеледі. «Демалыс күндері салыңыз, миллиондарға жетіңіз», - дейді Supabase.
Supabase өнімдеріне Postgres дерекқоры және аутентификация қызметі кіреді, сақтау және серверсіз қызметтері (бағдарлама логикасы үшін) әлі жұмыс істеп тұр. Оның барлық құралдары негізінен тегін және ашық бастапқы болып табылады. Postgres дерекқорында дерекқор модификацияларының нақты уақыттағы мониторингі және басқару интерфейсі сияқты дерекқорға қатысты құралдар бар.
Сонымен қатар, ол Firebase-пен салыстыруға болатын жылдам API және синтаксисті қамтамасыз етеді. Бұл қайталанатын CRUD кодын қайта жазуға емес, жасауға назар аударуға мүмкіндік беретін CRUD тапсырмаларын дәйекті түрде өңдеуге мүмкіндік береді.
Postgres дерекқоры ұйымдастырылған және қосылған деректерді электрондық кестедегідей сақтауға мүмкіндік беретін кесте болып табылады. Бір қызығы, сіз жобаны жасаған кезде Postgres дерекқоры ретінде бар электрондық кестені пайдалана аласыз.
Supabase қалай жұмыс істейді?
Supabase - бұл тегін бастапқы технологиялар жинағы. Олар Firebase мүмкіндіктерін кәсіпорын деңгейіндегі ашық бастапқы шешімдермен жасайды. Құралдар мен қауымдастықтар MIT, Apache 2 немесе салыстырмалы ашық лицензия бойынша қол жетімді болса, олар оларды пайдаланады және қолдайды.
Құрал бұрыннан жоқ болса, олар оны жасайды және оны қол жетімді етеді Ашық көзі. Supabase Firebase-тің 1:1 картасы емес. Олардың мақсаты - әзірлеушілерге Firebase сияқты әзірлеу тәжірибесін пайдалану ашық бастапқы Технологиялар.
Supabase - орналастырылған платформа. Сіз ештеңе орнатпай-ақ тіркеліп, оны пайдалануды бастай аласыз. Сондай-ақ, сіз өз серверіңізде өзін-өзі орналастыруға және құруға болады.
- PostgreSQL тұрақтылық, мүмкіндіктердің беріктігі және жылдамдығы бойынша үлкен беделге ие; 30 жылдан астам белсенді дамудан кейін,
- Realtime — WebSockets көмегімен PostgreSQL кірістірулерін, жаңартуларын және жоюларын тыңдауға мүмкіндік беретін Elixir сервері. Supabase Postgres-тен репликация сұрауларын тыңдайды, репликация байт ағынын JSON-ға түрлендіреді, содан кейін JSON-ды WebSockets арқылы таратады.
- PostgREST – бұл сіздің PostgreSQL дерекқорыңызды RESTful API интерфейсіне түрлендіретін веб-сервер.
- Storage S3 ішінде сақталған файлдарды басқару үшін RESTful интерфейсін қамтамасыз етеді, Postgres құқықтар менеджері ретінде.
- Postgres-meta — Postgres-ті басқаруға арналған RESTful API, ол кестелерді жүктеп алуға, жауапкершіліктерді тағайындауға және басқа нәрселермен қатар сұрауларды жүргізуге мүмкіндік береді.
- GoTrue — пайдаланушыларды басқаруға және SWT таңбалауыштарын шығаруға мүмкіндік беретін SWT негізіндегі API.
- Конг - бұлтта жұмыс істейтін API шлюзі.
Басталу
1. Жоба
Supabase бағдарламасында жоба барлық дерекқорларыңызға, аутентификация пайдаланушыларына, ережелерге, кестелерге және файлдарды сақтауға арналған контейнер болып табылады.
Жобаңызды орналастыруға болатын бірнеше орын бар және Supabase әкімшілері кідірістерді азайту үшін үнемі жаңа сайттарды қосып отырады. Жобаны жасауға шамамен 2 минут кетеді, сондықтан кофе ішіңіз, артқа отырыңыз және демалыңыз.
2. Жобаның бақылау тақтасы
Жобаңыз аяқталған кезде сізге төменде көрсетілгенге ұқсас бақылау тақтасы ұсынылады. Бұл бақылау тақтасы жобаңыз туралы білуіңіз керек барлық нәрсені, соның ішінде дерекқор қосылымдарын, аутентификация сұрауларын, сақтау сыйымдылығын, клиент кітапханасын енгізуді және т.б. көрсетеді.
3. Кесте жасаушы және редактор
Supabase дерекқоры – Postgres RLS (Row Level Security) көмегімен нақты уақыттағы мүмкіндіктері және саясатқа қол жеткізуді басқаруы бар реляциялық PostgreSQL. Әзірлеушілер Кестені құру және бағандар мен сипаттарды қосу үшін Supabase бақылау тақтасын пайдалана алады. Әзірлеушілер деректерді тікелей бақылау тақтасынан Supabase көмегімен өзгерте алады.
4. Аутентификация
Google, GitHub, Facebook, Twitter, GitLab және т.б. аутентификация провайдерлері Supabase сайтында қолжетімді. Оларды аутентификация тақтасы арқылы қосуға болады. Ол сондай-ақ Phone OTP және Magic Link аутентификациясын қолдайды.
5. Сақтау
Supabase - кез келген файл түрін өңдей алатын және кірістірілген масштабтауға ие ашық бастапқы нысанды сақтау жүйесі. Оның пайдаланушы ережелері мен рұқсаттарын қосатын оңай қолданылатын API бар. CDN интеграциясы, сондай-ақ автоматты түрлендіру және оңтайландыру (материалдың өлшемін өзгерту және қысу) жақын арада қолжетімді болады. Supabase қоймасы осы мүмкіндіктерді қосқанда Firebase сақтау қоймасына күшті бәсекелес болады.
Supabase көмегімен не құра аласыз? (Кейбір мысалдар)
1. Жазылым төлемі Supabase + Stripe + Next.js көмегімен.
Жоғары өнімді SaaS қолданбаларына арналған толық стартер жинағы.
- Supabase қауіпсіз пайдаланушы әкімшілігі мен аутентификацияны қамтамасыз етеді.
- Stripe Checkout және Stripe тұтынушы порталының интеграциясы.
- Supabase PostgreSQL жоғарғы жағында қуатты деректерге қол жеткізу және басқару құралдарын ұсынады.
- Жолақты веб-хуктар баға жоспарлары мен жазылу күйлерін автоматты синхрондауға мүмкіндік береді.
2. KeepLink: Тегтері мен мұрағаты бар қарапайым бетбелгі қызметі
KeepLink – Supabase және Next.js көмегімен жасалған тегтері мен мұрағаты бар негізгі бетбелгі қызметі. Оның әлеуметтік бөлісу мүмкіндіктері жоқ, бірақ сіз өзіңіздің дананы орналастыра аласыз.
- Бар тегтерге негізделген жаңа бетбелгілерді автоматты түрде белгілеңіз.
- Supabase стекінің, әкімші дерекқорлары үшін бүркеншік аттарды тегтеу және тыныш API қолжетімділігі арқасында URL мекенжайларын, тақырыптарды, сипаттамалар, тегтер және мұрағат мазмұнын толық мәтінді іздеу енді мүмкін.
- Metascraper көмегімен сіз беттеріңіз үшін тақырыптар мен сипаттамаларды автоматты түрде жинай аласыз. Сондай-ақ, беттеріңізді SinglePage және Headless Chrome арқылы мұрағаттауға болады.
3. Нақты уақыттағы чат қолданбасы Supabase + React көмегімен
- Нақты уақыттағы хабар алмасу үшін Supabase (PostgreSQL жоғарғы жағында) пайдаланылады.
- Front-end React (CRA) + Vite пайдаланады
- Қолданылатын UI кітапханасы Chakra UI болып табылады.
Басты ерекшеліктер
Мұнда Supabase мүмкіндіктерінің кейбірі берілген:
- Дерекқорды бір минуттан аз уақыт ішінде орнатуға және басқаруға арналған бақылау тақтасы/пайдаланушы интерфейсі.
- Пайдаланушыларды тіркеу және дерекқордағы қатынас шектеулерін жаңарту үшін пайдаланушы аутентификациясын қолданыңыз.
- API және JavaScript кітапханасы.
- Нақты уақыттағы дерекқор тыңдаушылары.
- Функциялар (бірдей). Бұл SQL, JavaScript, Python немесе Java тілінде жазылуы мүмкін дерекқордың сақталатын процедуралары.
артықшылықтары
Supabase келесі себептер бойынша ерекшеленеді:
- Firebase-тен айырмашылығы, сіз күрделі сұрауларды немесе мәтіндік іздеулерді іске қоса аласыз.
- Supabase сіз үшін масштабтаумен айналысады (ол SQL дерекқорын пайдаланса да)
- Supabase көмегімен деректерді тасымалдау оңай, себебі ол PostgreSQL пайдаланады және деректерді a.sql файлы арқылы импорттай аласыз.
Минус
Supabase қабылдаудың кейбір кемшіліктері бар. Олар келесідей:
- Нақты уақыттағы өзгерістерді алу үшін кесте үшін репликация мүмкіндігін белсендіру керек.
- Нақты уақыттағы жаңартулар қосылғанда, Supabase қауіпсіздік саясаттары қолданылмайды.
- Мүмкіндіктер шектеулі.
- Оның SDK тек JavaScript-пен жұмыс істейді (Басқа тілдерге қолдау әлі бета нұсқасында)
Баға
1. Тегін деңгей
- 500 МБ сақтау орны және шексіз API қоңыраулары бар дерекқор
- Аутентификация – 10,000 XNUMX пайдаланушыға дейін
- Файлды сақтау – 1 ГБ дейін сақтау орны, ай сайынғы тасымалдау шектеулері 2 ГБ дейін.
2. Барған сайын төлеңіз
- Деректер базасы – API қоңырауларына шектеусіз бір ГБ жад үшін $0.125
- Auth – шектеусіз
- Файлды сақтау – бір ГБ үшін 0.021 АҚШ доллары сақталған деректер, деректерді тасымалдау $0.07/ГБ
Баға туралы қосымша ақпарат алу үшін олардың веб-сайтына кіре аласыз.
қорытынды
Supabase - ең жақсы ашық бастапқы код Google Firebase бағдарламасына балама. PostgreSQL қуатының арқасында ол әртүрлі керемет мүмкіндіктерді ұсынады және басқа нақты уақыттағы дерекқор жүйелері сияқты деректер түріне ешқандай шектеулер жоқ.
Supabase және оның тамаша мүмкіндіктерін пайдаланып әртүрлі қолданбаларды жасауға болады. Бүгін көріңіз!
Марсело
B2B SaaS жағдайында, әр тұтынушыға 1 негізгі пайдаланушы және осы тұтынушы деректерімен ғана айналысатын осы мастерге қатысты басқа N пайдаланушы болуы мүмкін бе?