• e-commerce

Co vám programátoři neřeknou – hrozba pro e-commerce projekty

Autor Damir Špoljarič

Kde se dějí nejčastěji chyby, které provozovatele internetového projektu stojí mnoho zbytečně vynaložených prostředků?

Většina programátorů má jasný cíl – dodat produkt v co nejvyšší kvalitě, v co nejdřívějším termínu, nebo za co nejméně peněz (dle priority zadavatele). Mezi další požadavky patří čím dál častěji continuous delivery a práce s větším rozsahem moderních platforem. Kde se však děje nejčastěji chyba, která provozovatele internetového projektu stojí mnoho zbytečně vynaložených finančních prostředků?

Návrh architektury aplikace

Mnoho vývojářů a softwarových architektů navrhne aplikaci za použití mnoha platforem. Často ale neberou v potaz reálné vlastnosti daných platforem v reálném provozu. Však vývoj se má trápit především vývojem a uváděním aplikací v život v produkci, s provozem si mají lámat hlavu administrátoři. Pro vysokou dostupnost a dlouhodobou udržitelnost projektu je však vhodné, aby se osoby odpovědné za provoz (administrátoři) podíleli i na návrhu architektury.

Ve se staráme o tisíce serverů, čímž jsme si za 10 let vybudovali a dále budujeme unikátní know-how, které se budeme i nadále snažit stále více šířit mezi naše klienty prostřednictvím rad typu co je vhodné použít a pro jaký účel.

Je opravdu vhodné použít PostgreSQL v prostředí, které je náročné na požadavky škálování a vysokou dostupnost? Je vhodné použít Redis ke cachování, když se jedná o single-thread platformu, kdy při větší zátěži může dojít k saturaci výkonu Redisu a zpomalení/výpadku internetové aplikace bez ohledu na výkon serveru? Je opravdu vhodné udržovat v jednom adresáři tisíce souborů a často s takovým adresářem v aplikaci pracovat? Je aplikace připravena pro nasazení v cloudu/clusteru? Co je třeba vyřešit u náročného projektu fulltext jiným způsobem, než vyhledávat nad relační databází?

A stovky dalších dotazů, které položí administrátor programátorovi a sdělí programátorovi/project managerovi odpovědnému za aplikaci zkušenosti z praxe, výhody a nevýhody, a případné alternativy či poznatky, jak aplikaci zlepšit. Ne vše se dá najít v dokumentaci daného produktu na oficiálním webu a na googlení zkušeností programátoři většinou nemají čas.

Spolupráce Development & Operations (DevOps)

U velkých managed řešení ladíme s klienty individuálně procesy trvalé spolupráce mezi vývojáři aplikace a produkčním provozem (tedy námi). Jde například o způsob deploymentu, který bude pro programátory dostatečně operativní, ale současně nenaruší jasně definovanou odpovědnost za produkční infrastrukturu.

Jde také o procesy ve vztahu k testovací infrastruktuře a mnoho dalšího. Cílem je stabilní a udržitelná produkční infrastruktura a operativní, rychlá možnost deploymentu nových aplikací pro klienta.

Šíření a sdílení know-how

Ve vshosting~ v roce 2017 budeme zavádět následující novinky, od kterých si slibujeme lepší přípravu nově připravovaných klientských aplikací na reálný provoz.

  • Informační videa – jak fungují které aplikace, krátké rozhovory s programátory klientů, novinky na globálním trhu a reagování na aktuální témata a další
  • Komunitní sekce – sdílení zkušeností našich klientů
  • Služby serverového architekta pro rozsáhlá managed řešení

Tímto přístupem se vshosting~ odlišuje od svých středoevropských konkurentů, protože svým klientům poskytuje unikátní know-how a nadále se v tom plánuje zlepšovat. Managed služby nemají být pouhou náhradou vlastního admina ve firmě a stejně tak nemají být jen o tom, že programátor napíše nainstalujte a administrátor dle návodu nainstaluje. Celé operations související s provozem velkého internetového projektu je komplexní záležitost. I proto je vshosting~ partnerem těch největších e-shopů a dalších internetových projektů.

Damir Špoljarič

CEO