
In der täglichen Produktentwicklung, die an die technologischen Einschränkungen des Unternehmens gebunden ist, gibt es selten eine Chance, über Gut und Böse hinaus in die Hitze der Hipster-Technologie einzusteigen. Aber wenn Sie selbst alle Risiken tragen und jeder Tag der Entwicklung Geld aus Ihrer eigenen Tasche zieht, möchten Sie wirklich eine Abkürzung nehmen. In einem dieser Momente beschloss ich, in einen so dunklen Serverwald zu treten, über den ich mich irgendwie schämte, vorher nachzudenken. Beeindruckt von dem, was passiert ist, wollte ich sogar einen Artikel "Das Ende der Hegemonie der Programmierer" schreiben, aber nach sechs Monaten Betrieb und Entwicklung des Projekts wurde mir klar, dass dies nicht ganz das Ende war, und es gab immer noch Stellen in diesem sehr serverlosen Backend, an denen Wissen und Wissen vorhanden waren Erfahrung.
Die Architektur
Das erste, was ich tat, war, die Angst vor der Anbietersperre aus der Liste der Einschränkungen zu streichen. Wir müssen noch maßstabsgetreu leben, damit dies zu einem Problem wird.
— , devops , managed- .
, « », MongoDB, Stitch, Realm ( Realm, Stitch Realm, MongoDB, Inc 2019 )
Backend
:

Node Redis Server Side Rendering ( , Atlas ), SEO- .
. , , computed-runtime .
Frontend
: React + Redux + Redux-Saga + TypeScript

, , - - . , , .
, Mongo.Realm. (Google, Apple, Facebook, Email/Password ) :

(, , , , ..).
sync , push-, , ( , , ), , . , , , .
, , GraphQL.

, 100 RPS ( Node.js PM2), 200 , Mongo 500 .
Mongo.Realm , , (M1, M2, M5): , , , - aggregation-pipeline 5-10 . , ( aggregation-pipeline), , .
, 10 , , , .

Server Side Rendering , .
, (1 ½ ). 5 , , , SEO c first class citizen.
, 16- , 4 .
, 1,5 .