1. Dyvertex
  2. Usługi
  3. Backend i mikroserwisy

Backend

Backend, który wytrzyma ruch, który planujesz.

API, bazy danych, kolejki, granice między serwisami. Dzielimy serwis, kiedy to kupuje Ci niezależne wdrożenia albo skalowanie, i zostawiamy w całości, kiedy podział kupiłby tylko kolejne wywołania sieciowe.

  1. commit
  2. CI
  3. migracja
  4. deploy
  5. produkcja
  6. prawdziwy ruch

Etap, na którym Twoje decyzje architektoniczne zdają prawdziwy egzamin.

Typowe sytuacje

Jeśli żadna z tych sytuacji nie pasuje, bezpłatna konsultacja to najszybszy sposób na ocenę Twojej aplikacji.

api

Twoja aplikacja mobilna i webowa rozmawiają z dwiema nieco różnymi wersjami API.

dane

Jedno wolne zapytanie kładzie cały produkt i nikt nie wie, które.

serwisy

System podzielono na sześć serwisów, a jedna funkcja dotyka teraz czterech.

ops

Deploy jest ręczny i może go zrobić jedna osoba.

Co budujemy

Zakres spisany, zanim ktokolwiek napisze kod. Jeśli po drodze ważniejsze okaże się coś spoza zakresu, mówimy o tym otwarcie, zamiast po cichu doliczać.

Projekt API
Jeden typowany i wersjonowany kontrakt, wspólny dla wszystkich klientów. Typy generowane ze źródła zamiast dokumentu, który przestaje być aktualny tydzień po napisaniu.
Warstwa danych
Schemat, indeksy, ograniczenia i migracje. Zapytania wykonywane na produkcji sprawdzamy na realistycznym wolumenie danych, a nie na dwunastu wierszach danych testowych.
Granice serwisów
Podział tam, gdzie umożliwia niezależne wdrożenia lub niezależne skalowanie. Brak podziału tam, gdzie przyniósłby wyłącznie dodatkowe wywołania sieciowe, transakcje rozproszone i zmiany w czterech repozytoriach przy jednej funkcji.
Praca asynchroniczna
Kolejki, retry z backoffem, idempotencja, dead letter queue i zadania cykliczne, które natychmiast zgłaszają błąd, zamiast przestać działać bez żadnego sygnału.
Testy
Testy integracyjne na prawdziwej bazie danych zamiast mocków, testy kontraktowe wykrywające rozbieżności między klientem a API oraz testy obciążeniowe endpointów, które faktycznie obsłużą ruch. AI generuje dane, które prędzej czy później wyśle prawdziwy klient: wartości spoza zakresu, równoległe zapisy, ponowienia po timeoucie. Wszystkie testy działają na CI.
Operacje
CI, środowiska, sekrety poza repozytorium, migracje bezpieczne pod obciążeniem, logi strukturalne, metryki i alerty, które sygnalizują rzeczywiste problemy.
Przekazanie
Runbook, notatki architektoniczne i uzasadnienie każdego podziału, dzięki którym kolejne zmiany opierają się na spisanych decyzjach.
NestJSHonoTypeScriptPostgresMySQLDrizzlePrismaRedisDockerAWSSentry

Cena

Wycena po analizie kodu.

Prace backendowe różnią się zbyt mocno, żeby podać tu jedną kwotę. Pierwszym krokiem jest zwykle audyt (do $1,800), a listę poprawek masz w dwa dni robocze. To, co dalej, dostaje stałą cenę przed startem.

Z naszych własnych aplikacji korzystają już użytkownicy: Mira w App Store i ariex.fit w publicznej becie. Case studies z projektów klientów jeszcze nie publikujemy i nie twierdzimy, że istnieją objęte NDA.

Najczęstsze pytania

Jeśli nie ma tu odpowiedzi na Twoje pytanie, zadaj je podczas bezpłatnej konsultacji.

Dlaczego na tej stronie nie ma stałej ceny?

Bo zlecenie backendowe to albo jeden endpoint, albo przebudowa modelu danych, a jedna kwota nie pokryje uczciwie obu. Audyt (do $1,800) w dwa dni robocze daje nam obu coś realnego do wyceny. To, co po nim, ma stałą cenę.

Czy powinniśmy używać mikroserwisów?

Zwykle jeszcze nie. Podział zarabia na siebie, gdy części systemu wymagają osobnych wdrożeń albo osobnego skalowania, albo gdy odpowiadają za nie osobne zespoły. Wcześniej kupujesz dodatkowe wywołania sieciowe, transakcje rozproszone i dłuższą drogę na produkcję. Powiemy, w którym z tych miejsc jesteś.

Czy możecie pracować z naszym istniejącym backendem?

Tak, również z takim, który sami zaprojektowalibyśmy inaczej. Zaczynamy od audytu, aby plan opierał się na faktycznym działaniu systemu, a nie na diagramie architektury.

Czy przeprowadzacie migracje bazy danych na działających systemach?

Tak. Gdzie to możliwe, stosujemy expand-and-contract zamiast okna serwisowego, a każda migracja ma drogę powrotną. Jeśli którejś nie da się cofnąć, wiesz o tym przed jej uruchomieniem.

Jaki język i framework stosujecie?

Zwykle TypeScript z NestJS lub Hono na Postgresie. Jeśli Twój zespół jest już szybki w innej technologii, lepiej zostać przy niej niż przepisywać system i właśnie to powiemy.

Bezpłatna konsultacja · 20 minut

Sprawdź, czego potrzebuje Twoja aplikacja.

Prześlij repozytorium, treść odrzucenia lub opis pomysłu. W 20 minut powiemy, co dalej: konkretne poprawki, przebudowa albo odpuszczenie tematu.

Wolisz mailem? [email protected]

Nie wiesz, co właściwie jest nie tak z Twoją aplikacją? To nasze zadanie, żeby to ustalić. Każdą wiadomość czyta człowiek i odpowiada w ciągu jednego dnia roboczego.