Čo je to technický stack? + Príklad

Čo je to technický stack? + Príklad
Anonim

Krátka odpoveď je, že používame Flask for Python na backende, Backbone pre Javascript na front-ende a ukladáme naše dáta v MongoDB, Redis a ElasticSearch. Sme hosťovaní na AWS.

Čo je to zásobník?

Na dodanie webovej stránky je potrebných veľa technológií a vykonávajú rôzne funkcie, vrátane:

  • Vytváranie stránok v prehliadači alebo aplikácii, ich tvarovanie (farba, fonty) a ich interaktívnosť (napr. Otáčaním červenej farby srdca a zobrazením poľa s poznámkou, keď na ňu kliknete). Toto sa nazýva alebo na strane klienta
  • Zhromažďovanie informácií potrebných pre stránku (napríklad otázka, odpoveď, mená používateľov a obrázky, počet sŕdc) a ich odoslanie do počítača alebo telefónu. Toto sa nazýva alebo na strane servera
  • Ukladanie týchto informácií, takže je k dispozícii kedykoľvek je to potrebné, a umožňuje nám hľadať presne tie informácie, ktoré potrebujeme. Toto sa nazýva databáza alebo datastore
  • Počítače pripojené k internetu a vždy, aby každý mohol pristupovať na webovú stránku kedykoľvek. Počítače sa volajú servery a sú hostil Niekde.
  • Mnohé ďalšie kritické a menšie funkcie

V každej z týchto vrstiev je k dispozícii množstvo dobrých možností a výber každého tímu je založený na skúsenostiach a pohodlí členov tímu, ako aj na praktických otázkach, ako sú náklady a špecifické požiadavky na výkon.

Náš (takmer) plný stack

Niektoré technológie sú inštalované, aktualizované a spravované členmi nášho tímu na vlastných serveroch a laptopoch. Zahŕňajú:

  • Chrbát organizovať náš Javascript
  • Kompas na opätovné použitie a organizáciu CSS
  • Flask, Python framework pre JSON + HTML API a na vykresľovanie plných HTML stránok
  • pre naše fronty úloh (pravdepodobne Celer čoskoro)
  • MongoDB na ukladanie našich údajov (pravdepodobne Postgres čoskoro)
  • Premenujte na vyrovnávacie pamäte, ako sú napríklad informačné kanály v okolí stránky, otázky týkajúce sa trendov a všetky druhy štatistík používania
  • ElasticSearch na vyhľadávanie výkonu
  • Nginx slúžiť miesto
  • Náhle, aby sa našiel Javascript a CSS
  • Capistrano nasadiť našu aplikáciu a vykonať niekoľko ďalších užitočných úloh
  • Bábkové nastaviť softvér, ktorý potrebujeme na nových serveroch

Niektoré technológie sú služby vybudované a spravované inými spoločnosťami. Často je efektívnejšie nechať niekoho iného zamerať sa na špecifické problémy namiesto toho, aby robili všetko sami. Niektoré služby, ktoré používame, sú:

  • AWS aka Amazon Web Services na hosťovanie našich serverov, statických aktív a ako CDN
  • Cloudflare pre DNS, ukladanie do pamäte cache a určitú úroveň zabezpečenia
  • Google Analytics a Mixpanel pre analýzu
  • Papertrail pre centralizované zapisovanie
  • Sentry na sledovanie chýb na strane klienta
  • DataDog pre monitorovanie našich serverov a služieb
  • New Relic pre monitorovanie výkonu aplikácie Flask
  • Customer.io odosielať e-maily na základe toho, čo robíte alebo nerobíte v aplikácii
  • Github pre spoluprácu s kódmi a hosťovanie

A pravdepodobne mnoho ďalších.

To trvá veľa kusov vybudovať a prevádzkovať webové stránky, ale s pomocou dobre postavených nástrojov, nie je to tak ťažké!