05 Podaci, AI i platforma
API-ji, backend arhitektura i PostgreSQL
Modeli podataka, API-ji i serverska logika koji poslovna pravila drže na jednom mestu — uz PostgreSQL koji radi ono u čemu je najbolji.
Ishod: Poslovna pravila sprovedena jednom, tamo gde su podaci.
Backend je deo sistema koji niko ne vidi: relacioni model podataka, API koji pozivaju druge aplikacije i serverska logika koja odlučuje šta je dozvoljeno. Cilj je da svako poslovno pravilo postoji na jednom mestu i da se sprovodi što bliže podacima, onoliko koliko PostgreSQL omogućava.
Najčešći znaci su isto pravilo napisano u tri ekrana i jednoj skripti, brojevi iz baze kojima niko ne veruje ili druga aplikacija kojoj trebaju podaci koje vodi prva. Dobar trenutak je i pre prvog izdanja, dok je izmena modela još jeftina.
Tipične potrebe
- Poslovna pravila raštrkana po ekranima, skriptama i tabelama
- Baza koja je rasla bez modela i kojoj je sada teško verovati
- Više aplikacija kojima treba jedan pouzdan API
Šta dobijate
- Relacioni model podataka sa ograničenjima i verzionisanim migracijama
- Dokumentovani API-ji sa validacijom na svakoj granici
- Pravila pristupa sprovedena u bazi, a ne samo u interfejsu
Pristup
Kako teče rad.
- 01
Entiteti, ključevi i ograničenja
Zapisi i njihove veze modeluju se uz ključeve, ograničenja jedinstvenosti i CHECK ograničenja, tako da se neispravno stanje uopšte ne može sačuvati — a ne samo sakriti u interfejsu.
- 02
Pravila u samoj bazi
Pravila koja uvek moraju da važe — ko sme da čita red, da li uplata sme da premaši fakturu — postaju politike, ograničenja ili funkcije u PostgreSQL-u, pa važe za svaku aplikaciju i skriptu.
- 03
API ugovori sa validacijom
Svaka krajnja tačka proverava ulaz na granici i vraća predvidive greške, a ugovor je dokumentovan tamo gde će ga tražiti programeri koji pozivaju API.
- 04
Verzionisane migracije
Svaka izmena šeme je pregledana migracija, primenjena na isti način lokalno, u testnom okruženju i u produkciji, pa se istorija baze može ponoviti od početka.
Tehnologije
- PostgreSQL
- Supabase
- Node.js
- TypeScript
- Python
Inženjer koji radi ovaj posao je osnivač, Filip Volf — sarađujete direktno sa njim.
Pitanja
O ovoj usluzi.
Zašto poslovna pravila sprovoditi u bazi?
Zato što je baza jedino mesto kroz koje prolazi sve: interfejs, uvoz podataka, skripte i buduće aplikacije. U Pametnom Advokatu Row Level Security odvaja podatke svake kancelarije i kada se bazi pristupa mimo aplikacije, a sama baza odbija preplatu.
Koristite li Supabase ili čist PostgreSQL?
I jedno i drugo. Supabase donosi PostgreSQL zajedno sa prijavom korisnika i skladištem fajlova, što odgovara mnogim proizvodima — Pametni Advokat radi na njemu. Kada bazu hostujete sami, isti model podataka i ograničenja rade na čistom PostgreSQL-u, uz Node.js ili Python servis ispred njega.
Po čemu se ovo razlikuje od bezbednosne arhitekture?
Backend gradi model, API i poslovna pravila. Bezbednosna arhitektura određuje pristup i izolaciju koje ta pravila moraju da poštuju — uloge, granice između organizacija, tajne i bezbedna podrazumevana podešavanja. U praksi se to dvoje projektuje zajedno.
Povezane usluge
- 01
Softver po meri i SaaS
Ishod: Jedan izvor istine umesto rasutih alata.
- 08
Cloud infrastruktura i integracije
Ishod: Rutinska izdanja i pregledne integracije.
- 09
Bezbednosna arhitektura
Ishod: Bezbednosne odluke donete promišljeno — i zapisane.
Sledeći korak
Razgovarajmo o tome šta gradite.
Opišite šta treba izgraditi ili popraviti, kako se posao danas odvija i koja su ograničenja. Dobićete pitanja koja razjašnjavaju zahtev ili prvi predlog pristupa — imejlom, na srpskom ili engleskom.