Škálovatelná rasová evidence prakticky
Posted 23. 07. 2017 / By Petr Soukup / Cloud

Narazil jsem teď na zajímavý web vyfot-imigranta.cz - když na ulici potkáte někoho, kdo je tmavší než vy, tak ho vyfotíte a spolu s adresou nahrajete na web. Jenže to funguje jen dokud jich je málo a co budete dělat, až přijde ta slibovaná invaze? Ukážeme si, jak takové nahrávání fotek vyřešit škálovatelně.

Read More

Loadbalancing v AWS cloudu
Posted 03. 04. 2016 / By Petr Soukup / Cloud

Většina aplikací obvykle nejdřív běží z jednoho serveru a až když nestačí, tak se řeší škálování. Daleko praktičtější je ale pracovat obráceně a už od začátku pracovat s více instancemi a balancingem. Nejen že tím získáte stabilnější aplikaci, ale hlavně tím budete nuceni k lepší architektuře.

U loadbalancingu je ale zrádné, že je ve svém principu úplně jednoduchý, ale skrývá v sobě několik komplikací, které nejsou na první pohled vidět. Tentokrát bych zkusil rozebrat balancing v jednom regionu a ten mezinárodní si nechám na příště.

Read More

Na kolik vyjde hosting v cloudu?
Posted 20. 03. 2016 / By Petr Soukup / Cloud

Jedna z nejčastějších otázek, kterou ohledně cloudu dostávám je "na kolik mě vyjde provoz v cloudu?". Amazon na to sice má kalkulačku, ale bez přehledu o jeho službách vám z ní nejspíš vyjde hodně zavádějící suma. Zkusil bych proto na jednoduchém příkladu nastínit, jak "cloudovější" přístup při migraci může dramaticky změnit cenu.

Read More

Jak (ne)používáme v PHP exec
Posted 13. 09. 2015 / By Petr Soukup / Cloud

elephpantNa funkci exec v PHP se dívám podobně jako na eval. Určitě má svoje využití, ale pokud je to možné, raději se jí vyhnu. Obvykle totiž celý problém lze vzít z jiného konce s mnohem lepším výsledkem.

Co je exec()?

Pokud jste byli vždycky jen na sdíleném hostingu, tak exec možná ani neznáte, protože tam je prakticky vždy zablokovaný. Exec (a jemu podobné shellexec, system, passthru atd.) slouží k zavolání systémové příkazu a získání výstupu. Může to vypadat například takhle:

<?php
exec('convert /tmp/image.jpg -resize 500x500');
exec('rm -rf /'); // suicide!

První příkaz převede obrázek pomocí ImageMagick a druhý smaže všechny (co práva dovolí) soubory na disku. Už možná tušíte, co se mi na něm nelíbí.

Read More

Jak se migruje obrovská databáze bez výpadku
Posted 02. 08. 2015 / By Petr Soukup / Vývoj

Některé úkony jsou primitivní, dokud je nepotřebujete provést na trochu větším projektu. Hezkým příkladem je třeba migrace databáze - jednoduchý úkon při velikosti 20 MB, ale daleko komplexnější pro 400 GB.

Read More

Snadná správa více serverů
Posted 07. 06. 2015 / By Petr Soukup / Vývoj

Pokud máte více serverů, tak asi víte, kolik práce zabere je udržovat. Kopírovat konfiguráky, aktualizovat balíčky a tak dále. Jenže ono to jde dělat mnohem jednodušeji.

Tuhle vychytávku používáme už několik let a žil jsem v dojmu, že to tak dělá každý. Evidentně to ale nijak zvlášť rozšířené není a i firmy s desítkami serverů řeší jejich konfiguraci zbytečně komplikovaně. Jak to dělat lépe?

Read More

Jak se programuje v cloudu
Posted 25. 10. 2014 / By Petr Soukup / Internet

awslogoŘešil jsem teď problém, na kterém jde krásně vidět, jak se v cloudu některé věci řeší za opačný konec než obvykle. Protože je to poměrně typický příklad, předvedu vám na něm specifika vývoje v cloudu.

Hostujeme eshopy v Amazonu v Irsku a ve čtvrtek byl představen nový region v Německu. Je o pár milisekund blíže, takže se tam přestěhujeme. Díky cross-region replikacím je to otázka pár kliknutí a vše lze přestěhovat zcela plynule bez výpadku. Jedinou zradou je úložiště (AWS S3). Je sice nezávislé na regionu, ale má o něco lepší odezvu, když jsou všechna data primárně ve stejném regionu. A tady přichází problém.

Read More

Vychytávky v Amazon cloudu
Posted 02. 03. 2014 / By Petr Soukup / Internet

awslogoKonečně vám prozradím, v čem se mi AWS cloud hlavně líbí. Už jsem tu popisoval základy práce s AWS, ale popisované funkce zvládne i lecjaká konkurence. Tentokrát místo dlouhého popisování jen vyzobu nejzajímavější killer features.

Read More

AWS cloud za hubičku! - první server, úspory a load balancer
Posted 02. 02. 2014 / By Petr Soukup / Internet

awslogoV minulém článku jsem nastínil formality spojené s používáním AWS cloudu a slíbil jsem vám tipy, jak ušetřit. Nejdřív se ale podíváme, jak spustit první server. Nečekejte návod krok za krokem - o tom je spousta článků a hlavně podrobná dokumentace od AWS. Chci spíš vytvořit rychlý přehled pro lepší prvotní zorientování v možnostech, protože jich je opravdu hodně.

Na začátek ale ještě trocha terminologie. "Servery" jsou v AWS schovány pod zkratkou EC2 (Elastic Compute) a říká se jim instance. Celý cloud totiž předpokládá, že všechny prostředky existují jen dočasně a "instance" je proto výstižnější pojmenování.

Read More

Jak na AWS cloud - první kroky
Posted 31. 01. 2014 / By Petr Soukup / Internet

awslogoUž jsem tu psal, proč jsme migrovali do AWS cloudu a mělo to hezkou odezvu, takže jsem se rozhodl sepsat miniseriál o tom, jak se v AWS neztratit. Sám jsem si prošlapal několik slepých uliček, tak vám třeba ušetřím práci. V AWS je totiž největší problém nevymýšlet kolo a využívat jejich služby tak, jak byly myšleny.

Pokusím se je proto ve stručnosti představit. Určitě ale nečekejte návod krok za krokem - chtěl bych spíš vypíchnout, co je dobré nepřehlédnout nebo co naopak určitě nedělat. Budu také popisovat hlavně služby, které využíváme a mám s nimi praktické zkušenosti. AWS má rozsáhlou nabídku služeb a přestože jsme k nim migrovali kompletně všechno, tak jsem v praxi vyzkoušel zatím jen asi třetinu toho, co nabízí.

Read More

O blogu
Blog o provozování eshopů a technologickém zázemí.
Aktuálně řeším hlavně cloud, bezpečnost a optimalizaci rychlosti.

Rozjíždím službu pro propojení eshopů s dodavateli.