Содржина[Крие][Прикажи]
Backend-as-a-Service (BaaS) е сервисна парадигма во која програмерите ги нарачуваат компонентите зад сцената на веб или мобилниот развој за да можат да се фокусираат на градење и одржување на предниот дел на основа на plug-and-play и избегајте од товарот на пишување код од страна на серверот.
Софтверот кој поддржува задачи од страна на серверот, како што се автентикација, администрирање на базата на податоци, ажурирање во реално време, складирање, хостирање и притисни предупредувања е обезбеден од платформите BaaS (за мобилни апликации).
Иако различните задни услуги во основа го обезбедуваат истото решение, тие користат различни технологии за заднина. Ова е одлучувачки фактор за многу програмери при изборот на најдобрата услуга за одреден проект.
Во оваа статија, длабоко ќе се нурнеме во Supabase.
Што е База на податоци?
База на податоци е алтернатива на Firebase со отворен код што нуди Backend како услуга за различни апликации. Навистина е едноставно да се постави и работи брзо со различни рамки. Supabase се наплаќа како замена со отворен код за Firebase.
Има намера да им користи на програмерите во брзото поставување на нивниот заднина. „Изградете за викенд, пораснете до милиони“, вели Супабејс.
Производите на Supabase вклучуваат база на податоци на Postgres и услуга за автентикација, со складирање и услуги без сервер (за логика на задниот дел) кои сè уште работат. Сите негови алатки се главно бесплатни и со отворен код. Базата на податоци на Postgres вклучува алатки поврзани со базата на податоци, како што се следење во реално време на модификациите на базата на податоци и интерфејс за управување.
Понатаму, обезбедува брзи API и синтакса кои се споредливи со Firebase. Ова ви овозможува да се справите со задачите CRUD на конзистентен начин, овозможувајќи ви да се фокусирате на создавање наместо препишување на повторувачки CRUD код.
Базата на податоци на Postgres е табела која ви овозможува да складирате организирани и поврзани податоци на ист начин како во табела. Изненадувачки, кога креирате проект, можете да користите постоечка табела како ваша база на податоци на Postgres.
Како работи Supabase?
Supabase е збирка на технологии со бесплатен извор. Тие создаваат функции на Firebase со решенија со отворен код од типот на претпријатие. Доколку алатките и заедниците се достапни под MIT, Apache 2 или споредлива отворена лиценца, тие ќе ги користат и поддржуваат.
Ако алатката веќе не постои, тие ја создаваат и ја прават достапна како со отворен код. Supabase не е мапирање 1:1 на Firebase. Нивната цел е да им овозможат на програмерите развојно искуство слично на Firebase со користење со отворен код технологии.
Supabase е платформа која е хостирана. Може да се регистрирате и да започнете да го користите без да инсталирате ништо. Вие исто така можете сами да хостирате и да изградите на свој сервер.
- PostgreSQL има голема репутација за стабилност, робусност и брзина; По повеќе од 30 години активен развој,
- Realtime е сервер Еликсир кој ви овозможува да слушате вметнувања, ажурирања и бришења на PostgreSQL користејќи WebSockets. Supabase ги слуша барањата за репликација од Postgres, го конвертира протокот на бајти за репликација во JSON, а потоа го емитува JSON преку WebSockets.
- PostgREST е веб-сервер кој ја конвертира вашата база на податоци PostgreSQL во RESTful API.
- Складирањето обезбедува RESTful интерфејс за управување со датотеки складирани во S3, со Postgres како менаџер за права.
- Postgres-meta е RESTful API за администрирање на Postgres што ви овозможува да преземате табели, да доделувате одговорности и да спроведувате прашања, меѓу другото.
- GoTrue е API базиран на SWT што ви овозможува да управувате со корисниците и да издавате SWT токени.
- Конг е порта за API што работи на облакот.
Како да започнете
1. Проект
Во Supabase, проектот е контејнер за сите ваши бази на податоци, корисници за автентикација, правила, табели и складирање датотеки.
Постојат неколку места од каде што можете да го хостирате вашиот проект, а администраторите на Supabase постојано додаваат нови сајтови за да ја намалат доцнењето. На проектот му требаат околу 2 минути за да се создаде, па напијте се на кафе, седнете и опуштете се.
2. Контролна табла на проектот
Кога вашиот проект е завршен, ќе ви биде претставена контролна табла слична на онаа прикажана подолу. Оваа контролна табла ви прикажува сè што треба да знаете за вашиот проект, вклучително и врски со базата на податоци, барања за автентикација, капацитет за складирање, имплементација на библиотека на клиенти и повеќе.
3. Креатор и уредник на табели
Базата на податоци на Supabase е релациона PostgreSQL со можности во реално време и контрола на пристапот на политиката користејќи Postgres RLS (Безбедност на ниво на ред). Програмерите може да ја користат контролната табла на Supabase за да конструираат Табела и да додаваат колони и својства. Програмерите може да ги менуваат податоците директно од контролната табла со Supabase.
4. Автентикација
Google, GitHub, Facebook, Twitter, GitLab и повеќе провајдери за автентикација се достапни на Supabase. Тие може да се вклучат со помош на Панелот за автентикација. Таа, исто така поддржува телефонски 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. Нема никакви функции за социјално споделување, но може да биде домаќин на свој пример.
- Обележете ги новите обележувачи автоматски врз основа на постоечките ознаки.
- Пребарување на целосниот текст за URL-адреси, наслови, описи, ознаки и архивска содржина благодарение на стекот Supabase, означување псевдоними за административни бази на податоци и мирен пристап до API сега е возможен.
- Со метаскрапер, можете автоматски да собирате наслови и описи за вашите страници. Можете исто така да ги архивирате вашите страници со SinglePage и Headless Chrome.
3. Апликација за разговор во реално време со Supabase + React
- За пораки во реално време, се користи Supabase (на врвот на PostgreSQL).
- Front-end користи React (CRA) + Vite
- Користената библиотека на UI е интерфејс на Чакра.
Клучни карактеристики
Еве некои од карактеристиките на Supabase:
- Контролна табла/кориснички интерфејс за поставување и администрирање на вашата база на податоци за помалку од една минута.
- За да регистрирате корисници и да ги ажурирате ограничувањата за пристап во вашата база на податоци, применете автентикација на корисникот.
- API и JavaScript библиотека.
- Слушатели на бази на податоци во реално време.
- Функциите (некако). Ова се процедури зачувани во базата на податоци кои можат да бидат напишани во SQL, JavaScript, Python или Java.
Добрите
Supabase се разликува од следниве причини:
- За разлика од Firebase, може да извршувате комплицирани прашања или текстуални пребарувања.
- Supabase се грижи за скалирањето за вас (иако користи база на податоци SQL)
- Миграцијата на податоците е едноставна со Supabase бидејќи го користи PostgreSQL и може да увезете податоци користејќи датотека a.sql.
Конс
Има некои недостатоци при усвојувањето на Supabase. Тие се како што следува:
- За да примате промени во реално време, мора да ја активирате функционалноста за репликација за табела.
- Кога се овозможени ажурирањата во реално време, безбедносните политики на Supabase не важат.
- Карактеристиките се ограничени.
- Нејзиниот SDK работи само со JavaScript (Поддршката за други јазици сè уште е во бета верзија)
Цени
1. Бесплатно ниво
- База на податоци со 500 MB простор за складирање и неограничени API повици
- Автентикација - до 10,000 корисници
- Складирање датотеки – До 1 GB простор, со месечни ограничувања за пренос до 2 GB.
2. Плаќајте додека одите
- База на податоци – 0.125 долари по GB простор, без ограничувања за повиците на API
- Auth - неограничено
- Складирање датотеки - Зачувани податоци 0.021 $ по GB со пренос на податоци од 0.07 $ / GB
За повеќе информации за цените, можете да ја проверите нивната веб-страница.
Заклучок
Supabase е најдобриот софтвер со отворен код алтернатива на Firebase на Google. Поради моќта на PostgreSQL, тој нуди различни извонредни карактеристики и нема никакви ограничувања за типот на податоци како другите системи за бази на податоци во реално време.
Можете да креирате различни апликации користејќи Supabase и неговите одлични карактеристики. Пробајте го денес!
Marcelo
Во случај на B2B SaaS, дали е можно да има 1 главен корисник по клиент и други N корисници поврзани со овој господар кои се занимаваат само со податоци од овој клиент?