Bez ohledu na váš osobní názor na internetové porno mají administrátoři těchto serverů nepochybně velké znalosti a zkušenosti v oblasti skriptování a škálování webových aplikací. Řídí se několika základními principy: udržuj svou databázi čistou, používej open-source-like řešení všude, kde to je možné, a používej nejnovější technologie, pouze pokud z toho tvůj web opravdu těží, ne jen kvůli dobrému osobnímu a inovativnímu pocitu.
Proč zrovna porno? Už asi 12 procent obsahu na webu je kategorizováno nálepkou „pro dospělé“. On-line porno průmysl tak celosvětově vydělá téměř 5 miliard USD ročně. Většina světových stránek takového druhu má poměrně omezený rozpočet a téměř všechny běží na bázi open-source. Jelikož je spousta takového obsahu k dispozici přímo on-line, tak stránky nemohou spoléhat na absenci konkurence. Taková společnost bude úspěšná, pouze pokud má výjimečné nápady z hlediska IT technologií. Asi to všechno zní jako povídání o obyčejné firmě, že? Vyjma onoho nahatého obsahu to tak i funguje.
Co se tedy můžeme od lidí v průmyslu pro dospělé naučit?
1. Používejte open-source technologie, a to v hojné míře
Cokoliv, co snižuje náklady, je jednoduše výhodné, a to právě open-source splňuje na jedničku – najdete ho tak ve většině případů řešení IT infrastruktury. Vezměte si jakýkoliv web pro dospělé a využijte služby Netcraft; sami uvidíte, jaká je jeho vnitřní infrastruktura. Pravděpodobně zjistíte, že je to typický LAMP – téměř jistě bez prostředí Windows Serveru. A když řekneme LAMP, to se rovná spousta Perlu.
Výhody spočívají v nalezení řešení, jak snížit náklady na licence a zajistit znovupoužití komponent – to je open-source. Neznamená to, že proprietární software je "špatný", znamená to pouze, že pokud jde o zpracování infrastruktury pro úspěšné a robustní webové stránky, open-source jednoznačně vede. Jednou z oblíbených komponent je například Catalyst Web Framework, který je snadno ovladatelný a rozšiřitelný a zároveň běží skoro na každém operačním systému a také všech významných webových serverech. Tento framework měl navrch, když třeba majoritní web s obsahem pro dospělé YouPorn hledal vývojáře, seznámené právě s Catalystem a DBIC. Catalyst je také zaveden na family-friendly webu pro BBC, který dosahuje asi 9 milionů zobrazených stránek denně. Z toho vyvodíme jednoduchou věc – pokud to zvládne takový web, vaše stránky to mohou zvládnout taky.
2. Držte se osvědčeného
Je pravda, že stránky pro dospělé se vždy vezly na aktuální vlně technologií a pomohly zbytku webu se v některých ohledech vyvíjet. Například několik takových webů je úspěšných tím, že vyžadovaly tehdy ne zrovna běžné pluginy pro prohlížeče. Spousta firem pak dobře přijala Flash nebo již standardní kodeky, které by měly být k dispozici na většině počítačů, případně se dají lehko stáhnout.
Nicméně tohle samo o sobě není výhodou, protože to nepřináší nic výhodného pro uživatele. Frameworky a webové technologie, které byly aktuální před pěti lety, jsou přijatelné pro stránky, které nabízejí pouze fotky a filmy. Pár webmasterů mění na svých stránkách design a šablony, jen aby mohli využít nejnovějších technologií.
V kombinaci se stránkami pro dospělé je vzhledem k výkonu stále velmi populární Perl, ale docela dobře použitelné je i PHP. Nenajdete moc takových Ruby on Rails nebo Django webů, protože je těžší najít laciné Python a Ruby vývojáře. Perl vývojáři se ale mohou opřít o CPAN, PHP vývojáři o PEAR a mnoho zdrojů do začátku. Ruby a Python mají také vybudovanou silnou komunitu, kde lze ale levné talenty nalézt zřídkakdy.
3. Pravidla kešování
Dalším úspěchem je nalezení způsobu, jak kešovat obsah tak, aby váš server strávil co nejméně času generováním dynamických stránek nebo čtením dat z disku. Použitím Memcached nebo jiné kešovací technologie zajistíte, že stránky budou nabízet uživateli data co možná nejrychleji.
Zkrátka – využívejte osvědčené frameworky v co největší míře. Většina CMS platforem a vývojových frameworků již obsahuje kešovací technologie, se kterými se navíc i dobře pracuje. Není třeba znovu objevovat Ameriku, jde jen o to najít ten správný plugin nebo komponentu, která bude vašemu frameworku, potažmo CMS, vyhovovat. Pravidlo je tedy jasné – strávit co možná nejméně času potřebného na ostatní věci opakovanou implementací prvků, které lze jednoduše najít jinde.
4. Kvalitní návrh databáze
Pokud je váš web silně závislý na back-endu, je velmi důležité, aby byl návrh databáze co možná nejúčinnější. S CMS typu off-the-shelf to obvykle není problém. Nicméně, in-house aplikace musí být optimalizovány tak, aby zasílaly požadavky do databáze co možná nejméně (viz bod 3). Vývojáři by bezpodmínečně měli provést rozsáhlé testování ještě před nasazením a zároveň zajistit, že neexistují nepotřebné (a na zdroje náročné) databázové dotazy. Vzpomeňte si na pravidlo o optimalizaci. Ve světě zábavy pro dospělé nemá nikdo rád věci předčasné, a proto je třeba se předčasným optimalizacím vyhnout. Tak vyplouvá na povrch další důležité pravidlo - trávit čas optimalizací kódu pouze tehdy, pokud je pravděpodobné, že to bude mít vliv na řešení palčivého problému.
Jinak zužitkujte svůj čas jinde. Taková optimalizace designu vaší databáze je jednou z oblastí, která se zaručeně vyplatí. Buďte si jistí každým aspektem, ujistěte se, že jste plně chráněni před útoky typu SQL injection. Zkontrolujte všechny problémy s uživatelskými vstupy, tak abyste se útokům SQL injection vyhli. Také použijte osvědčených postupů k zajištění, že i když útočník dokáže vložit škodlivý SQL kód, jsou všechny změny zrušeny a dojde k návratu na původní stav.
5. Bezpečnost na prvním místě
Ujistěte se, že u vašeho webu platí heslo „bezpečnost nade vše“. Zejména stránky pro dospělé jsou atraktivní cíle pro útočníky. Ale jen to, že vaše webová prezentace může být méně náchylná k útokům, ještě neznamená, že je bezpečná. Hlídejte svůj web, jako byste byli neustále pod útokem a skladovali tisíce čísel kreditních karet – což vlastně může být i reálné. Pravidelně provádějte bezpečnostní audity. Ujistěte se, že máte správně nastavenou detekci a monitoring. Samozřejmě byste měli sledovat bezpečnostní zprávy a včas aktualizovat systém. Jakékoliv části webu, které vyžadují ověření, by měly být dostupné pouze přes zabezpečené připojení. OpenSSL nic nestojí a můžou ho využít prakticky všechny dynamické jazyky.
Narušení bezpečnosti pak není jen o nákladech a o času ztraceném zotavováním z útoku. Také by mohlo stát důvěru vašich zákazníků. To je už samo o sobě smrtící bez ohledu na předmět vašeho podnikání. Je snadné cítit se samolibě, pokud nemáte zkušenosti s úspěšným útokem, ale jak se říká – ten první z nich čeká vždycky za rohem.
Všechny tyto tipy se vztahují na jakýkoliv web. Není to jen ten „dospělý“ průmysl, který má v paměti zafixovány kvalitní a užitečné konstrukce. Tento článek tak přece jen zůstal na family-friendly úrovni, ale už po shlédnutí nadpisu jste ho byli stejně nuceni číst, že? :-)
Článek je překladem práce redaktorů informačního serveru TechNewsWorld.