PYTHON

ELEGÁNS. RUGALMAS. ERŐS.

MI LESZ A BACKEND
TOTEM ÁLLATA
A TE PROJEKTEDNEK?

Robusztus backend rendszereket építünk – biztonságos, skálázható és teljesítményre tervezett megoldásokat.

RUST

BIZTONSÁGOS. GYORS. PÁRHUZAMOS.

01 Két nyelv. Nem öt.

Egy stack, szándékosan kiválasztva.

A többnyelvű ügynökségek jól hangzanak egy prezentációban. A gyakorlatban azonban három build rendszert, négyféle null-változatot és egy félkarbantartott szolgáltatásokból álló temetőt jelentenek. Kiválasztottunk két nyelvet, amelyek a valós munkaterhelés 95%-át lefedik — és mindkettőben nagyon, nagyon jók lettünk.

Hot path · rendszerek · biztonság

Rust

9,6 belső illeszkedési pontszám

Memória-biztonságos, szemétgyűjtő nélkül. Adatverseny-mentes fordítási időben. A legszigorúbb kód-ellenőr, akivel valaha találkozni fogsz — és ha egyszer átengedi, a szolgáltatásod nem ébreszt fel vasárnap reggel.

Amikor elérjük

  • Fizetési csatornák és minden, ami pénzzel vagy személyes adatokkal kapcsolatos
  • Forró API-kapuk 99,999%-os SLA-val
  • Alacsony késleltetésű párosító motorok, kereskedés, valós idő
  • A böngészőbe szállított WebAssembly modulok
  • Milliszekundumok alatt elinduló CLI-eszközök és démonok

Kompromisszumok, amelyeket nem tagadunk

  • Új munkatársak beillesztése: ~2–4 hét a produktív munkavégzésig
  • Fordítási idők hatalmas munkaterületeken (sccache-szel oldjuk meg)
  • A Java-nál fiatalabb ökoszisztéma – érett ott, ahol számít
Ragasztó · adatok · ML · sebesség

Python

9,3 belső illeszkedési pontszám

A leggyorsabb út a tábláról a működő rendszerig. A Föld leggazdagabb ökoszisztémája az adatok, a gépi tanulás és az automatizálás terén. A modern Python — 3.12, uv, ruff, pydantic, FastAPI — egy pontos, típusos és elég gyors nyelv a legtöbb igényed kielégítésére.

Amikor elérjük

  • Belső eszközök, irányítópultok, adminisztrációs felületek
  • ETL, adatcsatornák, Airflow / Dagster / Prefect
  • ML — képzés, kiszolgálás, értékelés
  • Automatizálások és integrációk gyártói API-kkal
  • MVP-k, amelyek még ebben a negyedévben, nem pedig jövőre kerülnek forgalomba

Kompromisszumok, amiket nem tagadunk

  • Az egy magos átviteli sebesség 20–50-szer lassabb, mint a Rusté
  • Magasabb memóriaigény kérésenként — egyes terhelések esetében végzetes
  • A dinamikus típusmeghatározás szigorú mypy / pydantic nélkül problémákat okoz
Rust, ahol a hibák drágák. Python, ahol a lassú kiadás drága. Egy csapat. Nulla dogma.
02 Forrás → Cél

Mi változik a migrációkor.

Válasszon kiindulási nyelvet. Figyelje meg a Rust vagy Python felé való átállás hatását. A számok az elmúlt 40 migrációs projektünk mediánjai — nem marketingszöveg.

Rust vs Python vs C / C++

Valós mérnöki eredmények a kiválasztott forrásstackhez képest.

Rust Python C / C++ baseline

Stack szintű jelzők

A futásidő-számokon túl fontos kvalitatív mérnöki tényezők.

A szürke szaggatott vonal a kiválasztott forrásstack-et jelöli. A Rust és a Python ehhez az alapvonalhoz képest van mérve, nem egymáshoz.

Hogyan mérjük ezeket a számokat

Mediánok 40, 2023 és 2026 között elvégzett migrációból. Az áteresztőképességet az alkalmazásrétegen mérjük (end-to-end p50 reális terhelés mellett, nem mikrobenchmarkok). A memória RSS stacionárius állapotban. A költség az AWS/GCP-n igény szerinti havi számítás, minden egyéb feltétel azonos. Az egyedi eredmények eltérők — kérésre közzétesszük azokat is, amelyek nem a terv szerint alakultak.

03 Számok csillag nélkül

Kérések másodpercenként valós terhelés alatt.

Azonos munkaterhelés — JSON érvényesítés → Postgres lekérdezés → megjelenítés — egyetlen AMD Ryzen 7 gépen mérve. Ezek nem mikrobenchmarkok. Forrás & módszertan ↓

  1. 1 Rust · Axum
    21,030 req/s
  2. 2 C# .NET · ASP.NET Core
    14,707 req/s
  3. 3 Node.js · Fastify
    9,340 req/s
  4. 4 C++ · Drogon
    7,200 req/s
  5. 5 Go · Gin
    3,546 req/s
  6. 6 Python · FastAPI (Uvicorn)
    1,185 req/s
  7. 7 PHP · Laravel
    299 req/s

Olvassa el helyesen: A Python a grafikon alján van, és ez rendben van. A FastAPI-t nem a forró útvonalon futtatjuk. Ott futtatjuk, ahol 1 185 kérés/s már ~10× több, mint amennyit a terhelés igényel, és a mérnöki munkaórák értékesebbek, mint a CPU-ciklusok. Módszertan: AMD Ryzen 7, Linux, Docker, egyetlen példány, nyelvenként egy népszerű keretrendszer. A számok több futás átlagai.

05 A hibás kód valódi költsége

Mennyibe kerül valójában egy leállás?

A „99,999%” nem marketing. Az alábbiakban bemutatjuk, mennyibe kerül egy óra nem tervezett leállás iparágak szerint — forrásokkal alátámasztva. Mi a Rustot építjük ott, ahol ezek a számok érvényesek.

Azóta felhalmozódott költség, hogy megnyitotta ezt a részt
Pénzügy / egészségügy 0 ~83 ezer dollár/perc · 5 millió dollár/óra
Autóipar 0 ~38 ezer dollár/perc · 2,3 millió dollár/óra
Nagyvállalat 0 23 750 USD/perc · 1,4 millió USD/óra
Közepes méretű vállalkozás 0 ~5 000 USD/perc · 300 000 USD/óra
Pénzügy és egészségügy 5 millió dollár felett/óra

A legnagyobb kockázatú vertikumok. A kereskedési platformok, az elszámolási rendszerek és a klinikai rendszerek komoly leállás esetén óránként meghaladhatják az 5 millió dollárt — még mielőtt bármilyen szabályozási vagy peres költséget számolnánk hozzá.

Forrás: Gartner 2024 Fortune 500 tanulmány; ITIC 2024 Leállás óránkénti költsége.
Autógyártás 2,3 millió dollár / óra

Egy leállított gyártósor másodpercenként körülbelül 640 dollár veszteséget okoz. A CrowdStrike 2024. júliusi leállása öt nap alatt csak a Delta Air Lines számára 380 millió dollárba került.

Forrás: Erwood Group 2025-ös iparági bontás; Antithesis CrowdStrike utólagos elemzés.
Nagyvállalat (átlag) 1,4 millió dollár/óra

A BigPanda 2024-es adatai a nagyvállalatokról: 23 750 dollár percenként. Az ITIC jelentése szerint a nagyvállalatok 41%-a óránként 1–5 millió dollár veszteséget szenved el az üzemszünet miatt.

Forrás: BigPanda 2024-es kutatás; ITIC 11. éves jelentés a leállások óránkénti költségeiről.
Global 2000 (Oxford Economics) 400 milliárd dollár /év

A világ 2000 legnagyobb vállalatánál a nem tervezett leállások teljes rejtett költsége, az Oxford Economics 2024-es tanulmánya szerint – átlagosan 200 millió dolláros hatással vállalatonként, ha a bevételt, a termelékenységet és a helyreállítást összeadjuk.

Forrás: Oxford Economics 2024, „The Hidden Costs of Downtime”.
Közepes és nagyvállalatok (tipikus óra) 300 000 USD+ / óra

Az ITIC 2024-es felmérése: a közepes és nagyvállalatok több mint 90%-a egy óra nem tervezett leállás költségét e fölé becsüli — a jogi, polgári vagy szabályozási szankciókat nem számítva.

Forrás: ITIC 2024-es jelentés a leállás óránkénti költségeiről.
Kis- és középvállalkozások (KKV) 25 000–150 000 USD/óra

Az ITIC és a Calyptix 2025-ös közös tanulmánya szerint sok kis- és középvállalkozás ennyit veszít óránként; a Siemens jelentése szerint az üzemszünet által érintett kis- és középvállalkozásoknál ez az összeg akár 150 000 dollár/óra is lehet. Az átlagos üzemszünet 87 percig tart.

Forrás: ITIC + Calyptix 2025; Siemens: A leállás valódi költségei 2024.
06 Kiválasztott munkák

Három projekt. Három különböző kihívás.

Anonimizálva, ahol az NDA előírja, konkrétan, ahol az eredmények indokolják. Ezek azok a megbízások, amelyeket egy technikai vásárlónak elsőként mutatnánk meg.

  1. 1. eset Python Adatbázis Kriptográfia GDPR

    Fintech adatbázis: 4-szer kisebb, 5,5-szer gyorsabb, globálisan kompatibilis.

    Az ügyfél egy 1,8 TB-os Postgres-klasztert üzemeltetett, amely tele volt régi oszlopokkal, elavult indexekkel és inline titkosítású BLOB-okkal, amelyek hét év alatt nőttek össze. A titkosítás egy elavult könyvtáron futott, amelyet három különálló audit is jelzett. A szabályozási kockázat valódi volt; az auditorok köröztek.

    Mit tettünk

    • Teljes sémavizsgálat és használati audit, a fel nem használt oszlopok és indexek eltávolítása, megfelelő particionálás bevezetése.
    • A titkosítási folyamat áttelepítése egy régi könyvtárból egy modern, auditált AEAD-stackbe, rotációs kulcsokkal.
    • A BLOB-inline titkosítás átalakítása hivatkozott borítékos titkosításra + dedikált KMS.
    • Az adatmegőrzés és az érintettek hozzáférési folyamatainak összehangolása a GDPR, a CCPA és az APPI előírásaival.
    Eredmény

    Ugyanazok az adatok, a tárolási költségek negyede, 5,5-szeres átviteli sebesség, és tiszta lelkiismeret a következő szabályozó hatóság számára, aki kopogtatni fog az ajtón.

  2. 02. eset Rust C++ → Rust Biztonság Tárolás

    C++ szolgáltatás átírása Rust-ba: több mint 100 CVE-osztályú hiba kijavítása 9 hét alatt.

    Felhasználóknak szóló fájlfeldolgozó szolgáltatás C++-ban, 4–5 naponta összeomlott, és minden alkalommal helyben javították. Auditunk több mint 100 valódi hibát tárt fel: szolgáltatásmegtagadási útvonalak, puffer túlcsordulások, korlátlan kérelemkezelés. A csúcsidőszakban a 503-as hibák heti rituálévá váltak. A tárolás oldalán a felhasználói feltöltések egy olyan duplikált fájlokból álló mocsárrá halmozódtak fel, amelyek felemésztették a tárolót.

    Mit tettünk

    • Teljes átírás Rustban (axum + tokio) szigorú bemeneti érvényesítéssel és korlátozott erőforrás-korlátokkal.
    • Tulajdonságalapú tesztek + cargo-fuzz minden parser és wire-format határon.
    • Tartalomcímzésű tárolási réteg írási időpontban történő deduplikációval.
    • Kék-zöld bevezetés 4 órás integrációs ablak mögött, leállás nélkül.
    Eredmény

    A szolgáltatás a „törékeny és hetente javított” állapotból átment a „már nem is nézzük a csipogót” állapotba. A deduplikációval csökkentek a tárolási költségek, megszűntek a hibákkal és 503-as hibákkal kapcsolatos támogatási jegyek, és az átírás egy negyedév alatt megtérült.

  3. 03. eset Rust Python eBPF / XDP CRM · 4000 felhasználó

    Vállalati CRM, újjáépítve: 18 szerver → 5, a költségek több mint 60%-os csökkenése.

    Belső CRM, amely több mint 4000 felhasználót szolgál ki IAM, SOC, központosított naplózás, csevegés, fájlmegosztás, VoIP és végpontok közötti titkosított adatok terén. Tizennyolc szerver, Cloudflare a tetején, és egy felhőszámla, amely a létszámtól függetlenül folyamatosan nőtt. Újraépítettük a hot path-et Rust-ban, a Python-t az integrációs és jelentési rétegben tartottuk meg, és egy eBPF/XDP szűrőt helyeztünk közvetlenül az ingress elé.

    Mit csináltunk

    • Rust szolgáltatások az azonosításhoz (IAM), valós idejű üzenetküldéshez, VoIP jelzéshez, fájlátvitelhez.
    • Python az adminisztrációs felületekhez, jelentésekhez, SOC eseménykorrelációhoz, integrációhoz a gyártói API-kkal.
    • eBPF/XDP bot- és visszaélésszűrés a kernelen – ezzel a feladattal felváltotta a Cloudflare-t.
    • A strukturált naplózási folyamat átírása zero-copy sémára.
    Eredmény

    Tizenhárommal kevesebb szerver, nincs több Cloudflare tétel, a SOC-csapat tisztább jelet lát a naplózási csatornán keresztül, és a pénzügyi igazgató már nem tesz fel kényelmetlen kérdéseket az infrastruktúra-költségvetésről.

07 Hogyan dolgozunk valójában

Forgassa el a gombokat. Nézze, hogyan változik a terv.

Minden projekt egyensúlyt teremt a sebesség, a költség és a megbízhatóság között. Az alábbi ötfokozatú becslés az iparági mediánokhoz igazodik (felfedezés 2–6 hét, architektúra 1–4 hét, megvalósítás 4–20 hét, megerősítés 2–8 hét, átadás 1–2 hét — a a NIX United, Agilie, SOLTECH, OTG Lab 2024–2026-os jelentései alapján). Mozgassa a csúszkákat; a terv súlyozása valós időben változik.

01

Felfedezés

3 hét

Olvassa el a kódját, kérdezze ki az operátorokat, sorolja fel az ismeretleneket, válassza ki a nyelvet komponensenként.

  • Domain interjúk és kódellenőrzés
  • Kockázati nyilvántartás és SLA-célok
  • Szolgáltatásonkénti nyelvválasztás
02

Architektúra

2 hét

Szerződések a kód előtt. OpenAPI / protobuf, adatmodellek, telepítési topológia, runbook vázlatok.

  • RFC-k minden közbeszerzési szerződéshez
  • Adatmodell + migrációs terv
  • Infra-as-code alapvonal
03

Végrehajtás

8 hét

Kis PR-ek, CI zöld jelzés az első naptól kezdve, telepítés minden egyes összevonáskor, felülvizsgálat egy második senior által.

  • Rust: axum · tonic · sqlx
  • Python: FastAPI · Pydantic · SQLAlchemy
  • Heti bemutatók + változásnapló
04

Biztonsági megerősítés

3 hét

Fuzzing, tulajdonságalapú tesztek, terhelési tesztek valós forgalom mellett, fenyegetési modell.

  • cargo-fuzz · proptest · hypothesis
  • k6 terheléses tesztek SLO-khoz kötve
  • Biztonsági felülvizsgálat és függőségi audit
05

Átadás

1 hét

Runbookok, ügyeleti rotáció, ADR-ek és egy csapat, amely már egyszer végrehajtotta ezt.

  • Runbookok + ügyeleti mátrix
  • ADR napló és architektúra diagramok
  • 30 napos bevezetés utáni támogatás
08 Ugyanaz a probléma, két nyelv

Hogyan néz ki ugyanaz az endpoint mindkettőben?

Felhasználó lekérése, bemenet érvényesítése, Postgresbe mentés, JSON visszaadása. Váltson a nyelvek között — mindkettő valódi kód, amit ténylegesen is kiadnánk.

SQL_CREATE_USER = "insert into users(email,name) values(lower($1),$2) returning id,email,name"
Name = Annotated[str, StringConstraints(strip_whitespace=True, min_length=1, max_length=120)]

class UserIn(BaseModel):
    email: EmailStr
    name: Name

class UserOut(UserIn):
    id: int

@router.post("/users", response_model=UserOut, status_code=201)
async def create_user(u: UserIn) -> UserOut:
    try:
        row = await pool.fetchrow(SQL_CREATE_USER, str(u.email), u.name)
   except UniqueViolationError as exc:
        raise HTTPException(status_code=409, detail="email already exists") from exc
    if row is None:
        raise HTTPException(status_code=500, detail="insert failed")
    return UserOut.model_validate(dict(row))
#[derive(Deserialize, Validate)]
#[serde(deny_unknown_fields)]
pub struct UserIn {
    #[validate(email)]
    pub email: String,
    #[validate(custom(function = "valid_name"))]
    pub name: String,
}

pub async fn create_user(
    State(pool): State<PgPool>,
    ValidatedJson(u): ValidatedJson<UserIn>,
) -> Result<(StatusCode, Json<UserOut>), ApiError> {
   let user = sqlx::query_as!(UserOut,
        "insert into users(email,name) values(lower($1),$2) returning id,email,name",
        u.email.as_str(),
        u.name.trim(),
    )
    .fetch_one(&pool)
    .await
    .map_err(ApiError::from_db)?;

    Ok((StatusCode::CREATED, Json(user)))
}
Kódsorok
16 22
Áteresztőképesség
1 185 kérés/másodperc 21 030 kérelem/másodperc
p50 késleltetés
21,0 ms 1,6 ms
RAM üresjáratban
41,2 MB 8,5 MB
1 munkanapon belül válaszolunk. Nem viccelünk.

Elolvasta az egész oldalt.
Akkor építsük meg!

Mondd el, mi a baj a stackeddel, vagy mit szeretnél a semmiből felépíteni. Valódi mérnöki véleményt kapsz — nem pedig egy értékesítési prezentációt.

  • Nincsenek junior mérnökök. Nincs offshore-kihelyezés.
  • Rögzített árú opciók a meghatározott munkákra.
  • Titoktartási megállapodás aláírása, mielőtt bármit is kérdezünk.