DEUS ENGINEERING — Početna

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.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

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.