Ga naar hoofdinhoud
Stacklane

Real-time matching, spatial queries + WebSockets + queues, op het tempo waarin supply en demand bewegen.

Marketplaces matchen als beide kanten tegelijk verschijnen. We bouwen de matching engine op een relationele database met spatial-query-ondersteuning waar geografie ertoe doet, streamen matches over WebSockets, en queuen de trage paden zodat de request-loop nooit blokkeert op een leverancier-API. Het patroon overleeft groei van 50 actieve sessies naar 50.000 zonder re-platforming.

Wat we bouwen

  • Spatial queries op de hoofd-database

    Waar de marketplace een locatie-dimensie heeft (ritten, bezorging, lessen, services) handelen spatial-query-extensies dit af op dezelfde database die de rest van de marketplace gebruikt. Geen aparte geo-service, geen search-engine-tier, geen managed location-leverancier.

  • WebSocket-subscriptions per sessie

    Elke actieve koper abonneert op een topic in de vorm van 'matches in mijn buurt, binnen deze filters'. De server pusht match-updates zodra ze gebeuren; de client rendert zonder pollen. De subscription is begrensd, de pagina verlaten tearet hem af.

  • Queue-backed allocation, niet request-time

    Als supply schaars is, draait match allocation in background workers, niet in de request handler. Het request van de koper komt direct terug met een pending match; de worker lost de contention op tegen inventory + business rules; het resultaat landt over de WebSocket.

  • Tie-breaking die de operator kan configureren

    Twee gelijkwaardige matches: wie wint? Configureerbaar per marketplace, recency, rating, distance, price, surge multiplier. De regels staan in het operator-dashboard, niet in de source code. Ze veranderen vraagt geen live-gang.

  • Match-expiry + reallocation

    Een match aangeboden aan een verkoper heeft een timeout. Geen accept binnen het venster → de engine realloceert naar de volgende geranked verkoper. De state machine is observeerbaar; operationele bedrijven kunnen tijdens incidents beslissingen replay.

  • Operator-oppervlakken voor het rommelige midden

    Het operator-dashboard toont live match-queues, huidige matchmaker-beslissingen, supply-concentratie, en de momenten waarop kopers moesten wachten. Het product-team ziet wat te verbeteren; het ops-team ziet waarop te ingrijpen.

Waar dit past

  1. Je marketplace werkt voor de seed-cohort en breekt de eerste keer dat supply en demand ongelijk spiken.

  2. Je matcht vandaag via polling + cron jobs en de latency begint zich te tonen in retention.

  3. Je voegt een geografische dimensie toe aan een marketplace die voorheen alleen op filters matchte, en je huidige stack heeft geen spatial-query-ondersteuning.

Tech stack

  • TypeScript
  • Postgres
  • PostGIS
  • Elysia WebSockets
  • BullMQ

Wil je dit voor je team?

30 minuten om vast te stellen wat je nodig hebt. Geen pitchdeck, geen verplichtingen. We zeggen je eerlijk of Stacklane past.

Plan een gesprek