fbpx
Damir Špoljarič

Proč je rychlý web důležitý?

Chcete dostat co nejvíc návštěvníků na svůj web a chcete, aby tam aspoň chvíli zůstali? Pak je třeba, aby váš web byl co nejrychlejší. Rychlost načítání je jedním z faktorů, které ovlivňují jak se web umisťuje ve výsledcích vyhledávání. Pomalé načítání webu je navíc hlavním důvodem, proč návštěvníci, kteří už se na web dostali, zase rychle odejdou. A co když pomalý, nebo dokonce nefunkční web poškodí vaše podnikání?

Uživatelé navíc čím dál tím víc přistupují na web z mobilních zařízení, kde je pomalé načítání ještě více citelné než na desktopové verzi.

  • 47 % uživatelů očekává, že se stránka načte do 2 vteřin
  • 40 % uživatelů odchází po 3 vteřinách načítání
  • 46 % online uživatelů se rozhoduje zdali se na web vrátí na základě jeho rychlosti
  • Optimalizovaný web by se měl načíst do 3 vteřin

Tento článek obsahuje shrnutí nejdůležitějších bodů, které zazněly na přednášce Davida Lintimera, Senior Server Specialisty ve vshosting~, během E-shop Summit a Expo 2018.

Jak rychlý je vlastně váš web?

Rychlost webu vám pomůže změřit několik nástrojů:

Pokud vám vyšla rychlost načítání větší než 3 vteřiny, věnujte rychlosti svého webu zvýšenou pozornost. Za problémem může stát mnoho faktorů. Tohle jsou ve stručnosti ty nejčastější:

Přílišná velikost stránky

Čím větší stránka je, tím déle se načítá. Ideální velikost stránky je do 3MB. Velikost stránky ovlivňuje množství obrázků, videí, fontů, stylů a dalších grafických prvků.
V případě, že máte na webu více obrázků, zaměřte se na jejich komprimaci. Tu usnadní široká škála pluginů např. Smush pro WordPress.

Cachování

Správné cachování dokáže efektivně zrychlit web. Cachování je zjednodušeně odkládání informací do specializovaných úložišť odkud je možné s nimi rychle pracovat, a díky tomu se nemusí načítat ze vzdálených serverů.

Jednou z možností je využití CDN (tu by vám měl nabídnout poskytovatel hostingu). CDN je síť pro rychlejší doručování  obsahu. Napomáhá zrychlení webů tím, že statický obsah (obrázky, videa, html kód, …) ukládá na klíčových místech, a snižuje tak vzdálenost mezi návštěvníkem vašeho webu a serverem, na kterém web běží. CDN úložiště navíc pracují na bázi rychlých SSD disků, díky čemu poskytují nejenom bližší distribuci obsahu k vašim uživatelům, ale napomáhají i v rychlosti načítání tohoto obsahu.

Mnoho HTTP požadavků

Aby se váš web návštěvníkovi vůbec načetl, musí jeho počítač navázat spojení se serverem, na kterém váš web běží. Přes toto spojení začne proudit velké množství dat potřebných pro správné zobrazení webu. Čím více prvků (obrázků, ikon, stylů, javascriptů atd.) na webu máte, tím více spojení se musí navázat a tím déle to trvá.

Řešením je přejít na HTTP/2. Narozdíl od starších verzí http, které komunikovaly formou textu, je HTTP/2 binární a umožňuje jedním spojením přenést mnohem více požadavků. Při přechodu na HTTP/2 dochází ke zrychlení v řádu 100ms až 1 vteřiny.

Doporučujeme se zeptat svého poskytovatele hostingu, jestli HTTP/2 podporuje a jestli i váš web na HTTP/2 běží.

Neaktuální verze aplikací

Zastaralé verze aplikací mohou zpomalit a navíc i ohrozit váš web. Velké množství webů je programováno v jazyku PHP. Nicméně jsou velké rozdíly mezi starší verzí jazyka (PHP 5) a novou verzí PHP 7. Výkonnostní rozdíl může být až 50 % a některé funkce v novější verzi PHP 7 jsou až násobně rychlejší.

Velice důležité je aktualizovat také redakční systém a jeho pluginy. Neaktualizovaný redakční systém znamená vysoké bezpečností riziko.

Špatná lokalita hostingu

Čím vzdálenější je server, na kterém web běží, tím více spojení se musí navazovat a tím složitější je režie a množství dotazů. U vzdálených hostingů může být rychlost komunikace až v řádech desítek 100ms. Vybírejte tedy hosting, který je lokalitou blízký návštěvníkům webu nebo využijte CDN, kterou zmiňujeme v jednom z předchozích bodů.

Nepřipravenost na návštěvnostní špičky

Spustili jste kampaň, speciální propagaci nebo vám zrovna běží reklama v televizi. Na váš web právě míří vlna návštěvníků z různých marketingových kanálů. Vše jste optimalizovali pro největší množství konverzí a těsíte se na skvělé výsledky.
Mysleli jste ale na to, jestli to váš web ustojí? Špičky v návštěvnosti jsou skvělé pro vaše podnikání, pokud ovšem hosting funguje tak, jak má.

To, že web neustojí vysokou návštěvnost, je často způsobeno zanedbáním příprav hostingu. Nejčastěji je výkon hostingu poddimenzovaný a během špičky nezvládá mnohonásobný počet požadavků na zobrazení webu. Ujistěte se, jestli je váš poskytovatel hostingu připraven na špičky. Měl by mít výkonnostní rezervu a dostatečnou kapacitu linky.
Kromě hostingu je také třeba se podívat přímo na aplikaci (váš e-shop, katalog, web) a optimalizovat databázi. Zjistěte jestli aplikace nedělá zbytečně moc dotazů do databáze a jestli tam náhodou neukládá obsah, který do databáze nepatří.

Shrnutí

Provozovatelé webů a e-shopů se často zaměřují především na tvorbu a péči o obsah stránek a na optimalizaci marketingového funnelu. Jejich práci ovšem může pokazit hosting, který není optimalizovaný na rychlost, spolehlivost a bezpečnost. 

I když náklady na hosting nepatří mezi hlavní položky při podnikání, je to právě hosting, který dokáže pokazit veškerou snahu a plány. Proto je nutné hostovat svůj web nebo e-shop u kvalitního poskytovatele, který dokáže poradit a má nástroje pro bezproblémový chod vašeho podnikání.


Damir Špoljarič

Služba CloudMail nabízí možnost filtrovat e-maily přímo na serveru díky funkci ManageSieve.

Zatím je filtrování možné pouze přes rozhraní Roundcube.

V nastavení vašeho CloudMailu si můžete nastavit libovolný počet filtrů, které vám umožní:

  • přesouvat e-maily do složek podle předmětu nebo odesílatele
  • automaticky mazat nebo blokovat e-maily podle předmětu nebo odesílatele
  • nastavovat automatické odpovědi v době dovolené nebo nepřítomnosti

Návod na nastavení filtrů

Pro nastavení uživatelského filtru se prosím přihlašte do své e-mailové schránky na adrese: https://webmail.vshosting.cloud/roundcube

Popis jednotlivých kroků najdete v popisu fotek:

U filtrů lze měnit priority

U filtrů lze měnit priority

V případě více filtrů se postupně vyhodnocují filtry odshora dolů. Proto je potřeba vždy dbát na správné pořadí filtrů. V námi zvoleném pořadí by i nechtěné spamové zprávy byly přesouvány mezi objednávky. Pořadí filtrů je možné změnit tažením myší.

V případě více filtrů se postupně vyhodnocují filtry odshora dolů. Proto je potřeba vždy dbát na správné pořadí filtrů. V námi zvoleném pořadí by i nechtěné spamové zprávy byly přesouvány mezi objednávky. Pořadí filtrů je možné změnit tažením myší.

Pokud nechcete, aby se po uplatnění určitého filtru vyhodnocovaly filtry následující, můžete nastavit volbu “Zastavit pravidla”.

Pokud nechcete, aby se po uplatnění určitého filtru vyhodnocovaly filtry následující, můžete nastavit volbu “Zastavit pravidla”.

V menu na levé straně zvolte "Filtry". Ve sloupcích se zobrazí existující filtry s možností je editovat.

V menu na levé straně zvolte „Filtry“. Ve sloupcích se zobrazí existující filtry s možností je editovat.

Nový filtr založíte kliknutím na ikonu pro přidání (plus).

Nový filtr založíte kliknutím na ikonu pro přidání (plus).

Příklad vyplněného filtru, který podle předmětu zprávy přesune e-mail do předem vytvořené složky.

Příklad vyplněného filtru, který podle předmětu zprávy přesune e-mail do předem vytvořené složky.

Po přihlášení využijte ikonu "E-MAIL" v pravém horním rohu a následně “NASTAVENÍ”

Po přihlášení využijte ikonu „E-MAIL“ v pravém horním rohu a následně “NASTAVENÍ”

Filtrů můžete nastavit více.

Filtrů můžete nastavit více.


Damir Špoljarič

Neustále posouváme naši infrastrukturu kupředu a nahrazujeme některé naše mnoho let staré služby či infrastrukturní prvky novými a moderními službami. VSCloud a WebHosting HostingPark byly nahrazeny novou cloudovou službou SnackHost. Nyní modernizujeme naše poštovní služby.

Servery „postaX.vshosting.cz“ (posta, posta2, posta3) jsou postupně nahrazovány službou CloudMail, která je modernější, rychlejší, s efektivnějším antispamem a obsahuje spoustu nových funkcí. CloudMail také disponuje intuitivnějším GUI, API a pro koncové uživatele také možností měnit například heslo přímo ve webmailu. Webmaily jsou na CloudMailu hned dva, konkrétně nový, moderní RainLoop a klasický RoundCube.

Jaký je postup ukončení a přechodu na CloudMail?

  • již před několika měsíci byla na starých poštovních serverech pozastavena možnost přidávat nové domény
  • K 31.5.2018 bude pozastaveno přidávání nových schránek k existujícím doménám
  • K 31.8.2018 budou staré servery vypnuty

Jaký je postup migrace?

Všechny schránky migrujeme bezplatně na CloudMail. Klienty postupně kontaktujeme a koordinujeme migraci do CloudMailu.

Všichni klienti s managed servery, kteří tyto poštovní servery využívaly, dostanou automaticky k dispozici bezplatný tarif CloudMail Lite (50 schránek, 50GB prostoru, 50.000 zpráv). Pokud hodnoty překračují, budou kontaktováni VSHosting obchodníkem a bude nastaven individuální CloudMail tarif.


Damir Špoljarič

Myšlenka Zerops.io vznikla před necelým rokem jako vize unikátní služby. Zerops zajistí vývojářům a provozovatelům internetových aplikací plnohodnotné, plně automatizované, inteligentní Managed DevOps prostředí. Vize Zeropsu je tedy inteligentní platforma, která se v reálném čase plně přizpůsobí potřebám aplikace a klienta dle aktuální situace.

Pro spoustu lidí, kterým jsme Zerops vizi představili, jde o nereálné řešení pro přílišnou různorodost klientských aplikací. Za námi však stojí skvělý tým a 11 let praxe s managováním tisíců serverů ?

Proč si Zerops jeho uživatelé oblíbí?

1. Unikátní inteligentní automatizace

Celé operations spojené se správou infrastruktury jsou komplexní obor. Je potřeba zajistit, aby byla infrastruktura zabezpečena, neustále dokonale optimalizována, aby reagovala na aktuální potřeby aplikace, vývojářů a aktuální provoz a zátěž. Tyto úlohy zajišťují DevOps / System Admini.

Vývojový stack většiny moderních aplikací využívá čím dál větší množství moderních serverových komponent – různé noSQL databáze a další. To klade vyšší nároky na adminy, aby takto složitou infrastrukturu udrželi při životě bez výpadků, měli neustále nastudované všechny aktuální informace k jednotlivým komponentám a měli s jejich provozem praxi (ne vše je často v praxi tak, jak praví dokumentace, zejména co se týče různých limitů a reálných mezních stavů).

Z pohledu DevOps nezajišťují plnou automatizaci a „klidné spaní“ ani velké globální cloudy, které jsou z tohoto pohledu příliš „nízkoúrovňové“ a stejně jsou potřeba admini, aws specialisté apod. Často se o infrastrukturu starají přímo vývojáři, kteří aplikaci provozují v Docker kontejneru. Při různých kritických situacích v reálném provozu je ale potřeba, aby problém vyřešil administrátor, který se zaměřuje výhradně na správu infrastruktury.

Co bude konkrétně Zerops tedy automaticky řešit?

Zde je pár příkladů:

Inteligentní autoscaling – automatické rozpoznání optimálního škálování (vertikální vs. horizontální), performance tuning klientské servisy po zvýšení, v souvislosti s navýšeným výkonem a notifikace klientovi (slack, email, sms) o provedené akci a jeho výsledku. Vše téměř v reálném čase (v jednotkách vteřin). Ke škálování bude Zerops přistupovat na základě metrik, které budou přednastaveny dle best-practices, avšak s možností klientské customizace (např. load servisy, response time aplikace, chybování aplikace a další).

Přizpůsobování klientské servisy aktuálnímu stavu aplikace – ne vždy je škálování výkonu jediná cesta, která vyřeší neoptimální běh aplikace. V takových situacích se Zerops pokusí situaci vyřešit změnou nastavení servisy či dá uživateli doporučení, co konkrétně je špatně a jak postupovat.

Update verze servisy – při vydání nové verze bude mít uživatel možnost servisu povýšit na novou verzi pouhým jedním kliknutím tlačítka. Každá nová verze servisy bude odladěna včetně update scénáře, o kterém bude uživatel informován, tedy dojde k updatu bez výpadku, kdy se postupně části servisy na jednotlivých kontejnerech aktualizují (resp. vytvoří nové kontejnery a staré postupně zruší) bez vlivu na běh aplikace. Pokud update servisy neumožňuje provedení za běhu, bude uživatel informován a vybere si čas, ve kterém si přeje, aby Zerops servisu aktualizoval.

Inteligenci Zeropsu budeme neustále zdokonalovat a implementovat do ní naše unikátní know-how.

2. Pohodlí pro vývojáře & jednoduchost & minimum bariér pro deploy do Zeropsu

Jeden z hlavních cílů Zeropsu je mimo jiné zjednodušit život programátorům. Jsme si vědomi, že programátor chce programovat a ne řešit milion věcí kolem, proto chceme klást minimum překážek pro deploy aplikace do Zeropsu a umožnit vývojářům využití nástrojů pro CI, na které jsou zvyklí. V Zerops bude možné spustit hostované Dev prostředí s nástroji, které uživatelé znají (GitLab a pod.) a odladěným deploy procesem.

Zerops prostředí bude navíc stavěno extrémně jednoduše. Nechceme nutit programátory číst dokumentace. Vše bude intuitivní a cílem je, aby si programátor mohl Zerops v demo režimu vyzkoušet během pár minut bez nutnosti dlouhých registrací, vyplňování kreditních karet a jiných nesmyslů. Zerops bude dostatečně kustomizovatelný, aby uživatele neomezoval, nicméně v implicitním nastavení bude dostatečný a „ihned k použití“ pro vývoj i produkci.

Chystá se také celá řada praktických features, které programátoři ocení. Naklonování servisy či celé instance „on the fly“, tedy v reálném čase, pro potřeby otestovat změnu v aplikaci, vrácení stavu databáze do libovolného času – hodiny, minuty, vteřiny zpětně apod.

Programátor bude mít k dispozici realtime statistiky stavu jednotlivých services s vyznačením okamžiku deploye pro možnost sledovat vliv změny aplikace na zátěž. Zerops bude programátora notifikovat do Slacku, emailem či SMS zprávou v případě nějaké mimořádné události nebo doporučení (například doporučení k preventivnímu navýšení RAM při příliš velké databázi).

3. Vysoká dostupnost, univerzálnost a komplexnost

Zerops bude podporovat výhradně open-source aplikace, jejichž výčet se bude postupně rozšiřovat. Zerops by měl tak od začátku uspokojit plnou potřebu pro většinu aplikací, což s sebou nese řadu výhod (jednotné prostředí, 1 provider = 1 SLA).

Od začátku předpokládáme plně automatizovanou podporu pro:

  • Relační DB – MariaDB / Galera cluster + MaxScale
  • Search: ElasticSearch cluster
  • Další noSQL: Redis cluster, mongoDB cluster
  • Messaging : RabbitMQ cluster
  • Prostředí pro aplikace psané v PHP, nodeJS, Python, Java, GoLang a další, volitelně Docker

Zerops.io bude mít řadu „systémových“ komponent:

  • Volitelný L7 balancer s možností customizace pravidel (základním balancerem je L3 balancer)
  • Logovací service
  • Dev service – například zmíněný GitLab
  • ObjectStorage service

Všechny produkční klientské services jsou postaveny jako high-availability vyhrazené mikro-clustery vhodné pro produkční provoz malé aplikace i rozsáhlého řešení s maximálním důrazem na stabilní a bezvýpadkový provoz.

4. Gold support pro vývojáře

Rozumíme tomu, že ne pro každého je komfortní vydat se na pospas umělé inteligenci :-). Zerops bude mít k dispozici i podporu našich DevOps specialistů ve formě placené služby, kteří vývojářům poradí, jakým způsobem vyvíjet aplikace, aby byly připraveny na clusterový provoz v cloudovém prostředí či budou řešit neobvyklé situace. Jsou to ti samí kolegové, kteří budou budovat Zerops a využívat mnohaleté zkušenosti se správou serverů pro ladění scénářů Zerops automatizace.

5. Špičková infrastruktura

Ve vshosting~ již 11 let chceme pro naše klienty maximálně špičkovou infrastrukturu. Proto jsme si museli postavit i vlastní datacentrum (a druhé plánujeme), jelikož neexistovalo žádné, které by uspokojilo potřebu po kvalitě. Ano, jednodušší by bylo postavit Zerops například nad Amazonem. Určitě by nám to i zjednodušilo expanzi Zeropsu na zahraniční trhy. Garantovatelného výkonu, stability a kvality ale nejlépe dosáhneme na vlastní infrastruktuře.

Na začátku Zerops spustíme ve dvou datacentrech v Praze, v druhé fázi v Anglii a následně ve dvou lokalitách v USA. U každé instance si tak uživatel bude moct zvolit lokalitu. Jeden z důvodů vlastní infrastruktury jsou i některé hi-tech výhody, které pro Zerops chystáme – například extrémně rychlé NVMe SSD pro databázové servisy.

Studováním možností orchestrace a řešením vnitřního uspořádání infrastruktury strávili naši admini téměř rok. Nakonec jsme vybrali ty nejlepší komponenty, které nám dávaly smysl, z hotových nekompaktních přebujelých řešení a orchestraci jako celek píšeme vlastní v GoLang.

6. Cenová politika

Zerops bude postaven tak, aby komunitě vývojářů pomohl soustředit se na vývoj a neřešit infrastrukturu. Zerops bude dostupný ve dvou variantách. Free varianta, která bude dostatečná i pro provoz řady produkčních aplikací, bude dostupná trvale s možností přechodu na Premium variantu. Premium varianta bude obsahovat řadu zajímavých funkcí navíc, včetně možnosti škálování výkonu. Premium varianta bude dostupná ihned po registraci i v demo režimu.

Cena bude složená z částky za výkon jednotlivých klientských services a za podporu premium features.

7. Dev2Dev

První verzi Zeropsu chceme spustit pro uzavřenou skupinu vývojářů, kteří by se rádi podíleli na otestování Zeropsu. Kromě možnosti vyzkoušet platformu jako první, získají řady výhod (bezplatné premium features apod), a to i do budoucna, mj. přístup do Dev2Dev sekce. Budou mít tak přímý vliv na další vývoj Zeropsu (hlasování o prioritách v roadmapě, podněty, přímá komunikace s vývojovým týmem Zeropsu a další). Zájemci, dejte mi o sobě vědět na damir@zerops.io.

Spuštění Zeropsu plánujeme na léto/podzim 2019.

Zerops = zero operations

Damir Špoljarič

Před 10 lety jsme jako jednu z našich služeb spustili sdílený hosting pod samostatným brandem HostingPark.cz. Za 10 let služba získala tisíce českých a slovenských zákazníků. Nyní službu HostingPark nahrazujeme o generaci novější službou s modernějšími technologiemi v cloudovém prostředí.

Co je to HostingPark

HostingPark.cz je služba sdíleného webhostingu a multihostingu od 29Kč měsíčně pro webové prezentace malého rozsahu.

Proč budeme HostingPark  ukončovat

1. Zastaralost použitých technologií – HostingPark používá zastaralé technologie, zejména PHP verze 5.2/5.3 a s tím související další software, který již není mnoho let podporovaný autory.

2. Směr firmy – VSHosting se již mnoho let vydává cestou individuálních managed a cloudových služeb pro tisíce serverů a je v těchto službách největším providerem ve Střední Evropě. Díky špičkové infrastruktuře, například datacentru ServerPark, celoevropské datové a CDN infrastruktuře, využívají naše služby velké internetové projekty nejen v ČR.

Co služby HostingPark nahradí?

HostingPark nahrazuje modernější služba, která nemá na českém trhu obdoby. Je jí služba SnackHost Cloud Hosting.

Mezi její hlavní výhody patří:

1. Cloudové účtování per site, per day bez nutnosti předplácení a závazků
2. Dostupnost hostovaných webů až 99,999% díky cloudové technologii a high-availability
3. Podpora u běžného webhostingu neobvyklých technologií – SSH, GIT, Composer, drupal tools (drush, drupal console)
4. Garantovaný výkon
5. Neomezený diskový prostor
6. Let’s encrypt certifikáty
7. Volba PHP včetně verze 7.1 a možnost změny verze kdykoliv
8. Podpora MySQL (MariaDB) i PostgreSQL

Jde tedy o ideální multihostingové řešení nové generace, které v dnešní době využívá již přes 500 zákazníků. Služba byla spuštěna před více než rokem, je provozována naší dceřinnou společností a využívá stejně špičkovou infrastrukturu jako VSHosting.

SnackHost Cloud Hosting lze bezplatně na 30 dní vyzkoušet. Stačí se zaregistrovat na adrese https://admin.snackhost.com/sign/register.

Všem klientům, kteří ze služby HostingPark přejdou do služby SnackHost darujeme kredit ve výši 1000CZK a trvale nastavené ceny (netýká se domén) o 10% levněji. Po registraci nás stačí kontaktovat přes ticket SnackHostu nebo na konzultace@vshosting.cz?

Jsme Vám plně k dispozici pro poskytnutí součinnosti a rad, jak lze služby zmigrovat ze služby HostingPark do SnackHostu. Je pouze potřeba počítat s tím, že SnackHost podporuje PHP až od verze 5.4 (konkrétně 5.4, 5.6, 7, 7.1), PHP verze 5.2 a 5.3 tak již  podporovány nebudou.

Jaký bude postup ukončení?

Registrace pro nové klienty na HostingPark.cz byla pozastavena již před rokem. Ukončení služby bude probíhat pozvolna a nejde o žádnou zbrklou hurá akci.

Postup ukončení:
1. Zasílání výzev k platbě (zálohových faktur) na roční prodloužení služeb bude probíhat až do 31.1.2018 (výzva na služby končící do 31.3.2018). Služby, které budou končit v období do 31.3.2018 tak budou mít možnost být ještě o rok prodlouženy, tzn do 31.3.2019
2. Služby, které budou končit po 31.3.2018, již nebudou prodlužovány a budou ukončeny na konci svého předplaceného období.


Damir Špoljarič

Řada velkých projektů, které využívají MySQL/MariaDB se již setkala s tím, že jim jednoduše nestačí provozovat jeden server či “hloupou” asynchronní master-slave repliku a že pro nutnost pohodlného horizontálního škálování musí připravit svoji aplikaci pro provoz databáze v MariaDB galera clusteru. To bohužel přináší poměrně zásadní předělání architektury aplikace, aby se vše přizpůsobilo vlastnostem clusteru, eliminovalo se riziko vzniku dead-locků a jiných komplikací.

vshosting~, jakožto největší Managed Services provider ve Střední Evropě, má s provozem náročných databázových clusterů mnoho zkušeností. Provozujeme v managed režimu na Galera clusteru například Shoptet, což je platformě pro více než 10.000 eshopů.

Pro zjednodušení části komplikací s přechodem do clusteru existuje nástroj zvaný MaxScale, na který se dnes podíváme.

Využití MaxScale při přechodu ze single node MySQL na MariaDB (Galera) cluster

Při přechodu z jednoinstanční mysql na cluster je obvykle nutné provádět aplikační změny, protože bězné balancování provozu přes tcp toho mnoho neumožňuje. Při takovém typu nasazení se pak obvykle stává, že se provádí transakční zápisové operace na více nodech nebo se čtou data z nodů, kam se ještě nestačila synchronizovat.

Potom je nutné vytvářet různé připojovací konektory do clusteru podle typu prováděné operace, případně upravit vlastnosti clusteru tak, aby na sebe nody vzájemně čekaly. To pak výkon clusteru snižuje. Při nasazení MaxScale se sloučí výhody tcp balancingu s přidanou logikou. Nejsou tedy nutné úpravy aplikace a provoz se směruje na jeden db konektor.

Pokud je cílem maximálně využít cluster, co se týká výpočetní kapacity a nenechat ho jen ve stavu vysoké dostupnosti, je možné vytvořit několik db konektorů podle typu použití např. Readonly pro rychlé čtení informací, readwritesplit pro automatické směrování zápisových operací a query caching pro dotazy, které se často opakují. To všechno pro dosažení maximálního výkonu clusteru.

Základní popis MariaDB MaxScale

MariaDB MaxScale je databázový proxy server, který rozšiřuje vysokou dostupnost, škálovatelnost a bezpečnost serveru MariaDB a současně zjednodušuje vývoj aplikací tím, že jej oddělí od základní databázové infrastruktury.

Zjednodušeně řečeno je to databázová proxy, která předává query do databáze na jeden nebo více databázových serverů.

MaxScale je navržen s rozšiřitelnou architekturou, která podporuje pluginy a rozšiřuje svou funkci nad transparentní vyvažování zátěže, aby se stala například databázovým firewallem. S vestavěnými pluginy pro více směrovačů, filtrů a protokolů může být služba MaxScale konfigurována tak, aby předala žádosti o databázi a upravovala odezvy databáze na základě předem definovaných požadavků – například k maskování citlivých dat apod.

Přesměrování se provádí pomocí pravidel, založených na sémantickém pochopení databázových query a rolích serverů v rámci clusteru databází.

MaxScale využívá rozsáhlé možnosti asynchronního I/O operačního systému Linux v kombinaci s pevným počtem pracovních podprocesů. Epoll se používá k zajištění události řízeného rámce pro vstup a výstup přes sockety.

Služby poskytované MaxScale jsou implementovány jako externí, sdílené, objektové moduly načítané za běhu. Běžně používané typy modulů jsou protokol, směrovač a filtr. Modul protokolu zajištuje komunikaci mezi klienty a MaxScale a zároven mezi MaxScale a backendy. Směrovač kontroluje dotazy od klientů a rozhoduje o cílovém backendu. Rozhodnutí jsou obvykle založena na pravidlech směrování a na stavu backendů. Filtry poté pracují s daty, které přes MaxScale procházejí.

Základní funkce

Firewall

MaxScale obsahuje filtr brány firewall pro blokování dotazů na základě pravidel nakonfigurovaných například na základě typu příkazu, použitých funkcí, vybraných sloupců nebo frekvence dotazů. MariaDB MaxScale 2.1 rozšiřuje filtrování na připravené příkazy.

Denial of service protection

MaxScale používá plugin omezující sadu výsledků query, aby se zabránilo dotazům, předpřipraveným příkazům a uloženým procedurám způsobit výpadek služby, vrácením příliš velkého množství dat. Maximální velikost sady výsledků query lze nakonfigurovat v řádcích nebo bajtech.

Read-Write Split

MaxScale obsahuje směrovač, který rozděluje čtení a zápis, když je sql server nakonfigurován jako multi-master (galera cluster) nebo master/slave (replika). Zápisy jsou poté prováděny jediným hlavním uzlem a čtení jsou prováděna na všech slavech – a to lze provést bez úpravy aplikace.

Change-data-capture

MariaDB MaxScale obsahuje protokol pro změnu dat, který v kombinaci s routerem Avro čte události binárního logu a přenáší je do klientů, kde mohou být data interpretována jako objekty Avro nebo JSON dokumenty.

Data masking

MaxScale používá filtr na maskování dat, který chrání citlivá data kontrolou výsledků dotazu a zmatením dat v určitých sloupcích na základě nakonfigurovaných pravidel. Při kombinaci s filtrem brány firewall databáze lze omezit přístup k citlivým datům.

Bulk insert streaming

MaxScale používá filtr pro hromadné vkládání insertů a přeměňuje všechny inserty v rámci explicitní transakce na jeden datový tok CSV pro přímé načítání s větší účinností, zlepšení výkonu a snížení síťového provozu.

Schema-based sharding

MaxScale obsahuje směrovač schémat pro podporu vícenásobného prostředí, kde každé spojení má vlastní schéma a schémata mohou být v různých databázích nebo vytvořit jednotnou logickou databázi z více fyzických databází – vše transparentní pro aplikaci.

Query caching

MaxScale používá filtr pro ukládání dotazů do mezipaměti, který zlepšuje výkon opakovaných dotazů a zároveň snižuje pracovní zatížení na podkladové databázi v závislosti na nastavených pravidlech – doba trvání, maximální počet řádků / velikost souborů, maximální počet záznamů apod.

Známá omezení / limity

Syntaktický analyzátor MaxScale správně analyzuje příkazy WITH, ale nedokáže shromáždit sloupce, funkce a tabulky používané v SELECTu definující klauzuli WITH.
V důsledku toho databázový firewall neblokuje příkazy WITH, kde SELECT klauzule WITH odkazuje na zakázané sloupce.

Transakce XA nejsou zjištěny jako transakce MaxScale. To znamená, že všechny příkazy XA budou považovány za neznámé příkazy a budou považovány za operace, které potenciálně změní databázi (v případě readwritesplit jsou příkazy směrovány do masteru).

MaxScale nebude sledovat stav transakce XA, což znamená, že všechny dotazy SELECT prováděné uvnitř transakce XA mohou být směrovány na servery, které nejsou součástí transakce XA.
Tomuto omezení lze na straně klienta zabránit vypnutím automatického vypnutí před provedením všech transakcí XA.

U filtrů není zaručeno, že obdrží kompletní pakety MySQL, pokud jsou použity s readconnroute směrovačem. To lze opravit pouze pomocí směrovače readwritesplit.

ReadWriteSplit

Čtení dotazů je směrováno na hlavní server I v následujících situacích:

* dotaz je spuštěn uvnitř otevřené transakce
* dotaz je připravené prohlášení
* příkaz obsahuje uloženou proceduru nebo volání UDF
* pokud je uvnitř jednoho dotazu několik příkazů.

Věříme, že se vám náš dnešní článek líbil a chystáme pro vás řadu dalších odborných zajímavostí ;-).


Damir Špoljarič

Stojí za námi více než 11 let zkušeností se správou tisíců serverů a provozem velkých internetových projektů. Známe slabá místa opensource platforem, známe důsedky nevhodného programování na produkční provoz a za všech okolností se snažíme vše uzpůsobit a nastavit tak, abychom zajistili maximální dostupnost internetových projektů našich klientů. Získali jsme unikátní know-how, máme skvělý tým, který se stará o provoz, rozvoj a výzkům nových platforem. Snažíme se být v tomto vždy několik kroků před našimi klienty a pomoct jejich vývojářům neopakovat chyby, které dělali lidé před nimi a přitom současně respektovat moderní trendy v developmentu. Dříve klienti využívali našich služeb z důvodu snížení nákladů za vlastní operations, dnes našich služeb využívají primárně právě kvůli know how, ale také i třeba pro špičkovou infrastrukturu, kterou disponujeme. Podívejte se, co chystáme za novou službu.

VSHosting je již řadu let největším MSP (managed services providerem) ve Střední Evropě. Hostujeme například každý třetí český a slovenský ecommerce projekt včetně největších eshopů. Před dvěma lety jsme otevřeli vlastní datové centrum ServerPark, které jsme postavili bez jakýchkoliv kompromisů dle vize maximální spolehlivosti na zelené louce, porvali se s úřady a vše dotáhli do zdárného cíle. Navíc jsme jej postavili bez dotací, tedy bez peněz evropských občanů odvedených na daních. Rozšiřujeme naši síťovou infrastrukturu postavenou na výkonných a také drahých ? technologiích jako je Cisco Nexus řady 7000 či Juniper MX960 a další. Naše síť se rozšiřuje a je zapojena do stále většího množství evropských peeringových center (letos to bude 5-6 peering center v Evropě, mezi kterými jsou i největší jako je DE-CIX ve Frankfurtu). Z důvodu stále rostoucího množsví globálních klientů jsme začali před půl rokem stavět i vlastní CDN síť – momentálně fungující v Evropě a USA a aktuálně připravujeme rozšiřování CDN sítě dále po Evropě (Londýn, Madrid, Moskva) a chystáme Asii. Naše CDN se ukázala díky svým funkcím jako zajímavá alternativa i k řadě velkých CDN posktovatelům. VSHosting CDN budeme spouštět brzy pod vlastním brandem F1CDN.

Letos začínáme pracovat na projektu, který jsme pojmenovali Zerops. Celá podstata projektu vyplývá z vlastního jména. Chceme zajistit zákazníkům, kteří vyvíjejí moderní aplikace tzv. Zero Operations. Chceme, aby se klient nemusel o nic starat a současně infrastruktura myslela na vše, co je k produkčnímu provozu nutné a zároveň programátorům zajistila maximální pohodlí pro vývoj. Zerops je platform as a service cloud a jedna z mnoha inspirací vychází například z populární služby Heroku. Zerops chce myšlenku plně managovaných mikroslužeb dostat dál a využít k tomu získané know-how. VSHosting je zastáncem opensource myšlenky a od dob svého vzniku používá prakticky výhradně opensource software a od příštího roku bude část interních užitečných aplikací psaných v GoLang zveřejňovat komunitě také jako opensource pod MIT licencí.

Zerops tedy nepřichází s žádnou proprietální platformou nutící programátory měnit styl vývoje aplikací, na který jsou zvyklí. Nedává nám to smysl obchodně ani prakticky. Služba Zerops proto počítá se zajištěním platforem jako služeb u nejpoužívanějších SQL i NoSQL databazí (MariaDB galera cluster, MongoDB cluster, Redis Cluster a další), search engine (Elasticsearch cluster), messaging (RabbitMQ, ZeropMQ) a bude podporovat aplikace napsané v nejpoužívanějších programovacích jazycích jako je například PHP, Java, JavaScript, GoLang, Python, Ruby a další.

Oproti jiným cloudovým platformám bude Zerops připraven pro produkční provoz náročný na vysokou dostupnost. Nejen, že značnou míru spolehlivosti zajišťuje sama o sobě cloudová platforma, ale unikátem je fakt, že všechny aplikace budou provozovány v clusterovém režimu. Databáze tak nebude pouhá jedna instance MySQL puštěná v jednom kontejneru, ale Galera Cluster běžící v minimálně 3 kontejnerech v různých částí Zerops cloudu, díky čemuž je downtime i při poruše některého HW nodu v cloudu prakticky eliminován a dostupnost maximalizovaná.

Autoscaling je dnes už prakticky běžnou součástí všech vyspělých cloudových služeb a podobným řešením bude disponovat i Zerops, který bude na základě zvolených metrik (počet spojení / zátěž / počet dotazů apod.) automaticky škálovat výkon. Zerops nebude klienta či jeho vývojáře zatěžovat a umožní pohodlné sledování relevantních metrik, také bude možné nastavit automatické škálování či službu vyškálovat ručně dle doporučení zeropsu či svého uvážení. Zerops bude podporovat kombinaci horizontálního i vertikálního škálování pro nastavení maximálního výkonu pro konkrétní službu a v případě horizontálního škálování budou možnosti Zeropsu prakticky nevyčerpatelné a platforma si zakládá na tom, že uspokojí potřebu i větších projektů.

Aby byla myšlenka zero operations kompletní, bude Zerops vybaven i uživatelsky jednoduchým a volitelně automatickým procesem aktualizace platformy pro zajištění stálé bezpečnosti a aktuálnosti serverových aplikací – jinými slovy dojde k nastartování nových kontejnerů s updatovanou verzí některé serverové aplikace se zachováním uživatelské aplikace i dat bez nutnosti jakéhokoliv zásahu ze strany uživatele a následně se původní kontejnery zruší. Zerops předpokládá i automatické optimalizace nastavení serverových aplikací (například u relačních databází jde o důležitou část operations) dle zvoleného výkonu kontejnerů.

Věříme, že si programátoři Zerops zamilují. Zerops bude podporovat i tooly jako je například GitLab. Nejen, že bude podporovat automatické deploye do infrastruktury Zerops, ale v Zeropsu bude možné provozovat i vývojové prostředí! Není nutné provozovat podobné nástroje u sebe, ale vývojové prostředí budou mít vývojáři k dispozici v Zerops cloudu. V Zeropsu pracujeme i na myšlence pokročilého zálohování – například v případě databáze je naším cílem poskytnout programátorům nástroj, který umožní vrátit stav databázového clusteru do naprosto libovolného času v minulosti až například měsíc zpětně. Potřebujete databázi dostat do stavu například z pondělí ve 4:22PM? Cílem Zeropsu je podobné funkcionality vývojářům umožnit na pár kliknutí. Chcete pouze některá data a nechcete nahrazovat produkční běžící instanci s například MariaDB (MySQL) Galera clusterem? Nevadí, při obnově vyberte spustit v nové instanci, kterou poté kdykoliv můžete na pár kliknutí opět zrušit :-). Vývojáři budou mít nad provozem infrastruktury neustálý přehled díky grafům z různých metrik a informace o stavu služeb, kdy nežádoucí provozní situace bude Zerops řešit automatizovaně a informovat uživatele. Krom dostupnosti přes API počítáme i s notifikacemi přes SMS či do slacku.

Zerops myslí i na bezpečnost. Veškeré klientské instance v Zeropsu budou striktně oddělené již na síťové vrstvě a počítáme i s možností spustit si službu Zerops Remote Access, který automatizovaně prostřednictvím OpenVPN zajistí možnost připojení programátora z počítače do privátní uzavřené sítě Zeropsu pro přímý přístup ke službám (například databáze apod) bezpečnou cestou.

Podobných vychytávek bude Zerops obsahovat celou řadu. Nebudou všechny dostupné ihned při spuštění, ale v dalších měsících postupně ano.

Zerops chce podpořit komunitu vývojářů, a proto core služby bude s výkonnostním omezením přístupný vývojářům či startup projektům trvale zdarma.

Pojďme nám pomoct vybudovat Zerops. Akuálně do týmu hledáme:

JavaScript vývojáře (Praha) – https://www.startupjobs.cz/nabidka/10349/javascript-vyvojar-pro-cloud-sluzby

Product Ownera (Praha / UK) – odkaz bude doplněn

Marketing Guru (Praha / UK) – odkaz bude doplněn


Damir Špoljarič

Podívejte se na hlavní důvody, proč stovky klientů volí dedikované servery od vshosting~.

Customizace konfigurace

Více než 40 % našich klientů využívá individuální konfiguraci dedikovaných serverů. Klientům zajišťujeme dedikované servery od řešení s výkonnými procesory až po řešení s například 1 TB RAM.

Okamžitý servis a upgrade

Jako jediná firma v ČR garantujeme opravu či výměnu serveru při poruše do 60 minut. Průměrně server opravíme do 25 minut :-). Skladem držíme stovky náhradních serverů přímo v datacentru a jsme tak schopni reagovat okamžitě. Stejně rychle můžeme provést i upgrade serveru či jeho výměnu za naprosto odlišnou konfiguraci s pouhým přehozením pevných disků.

Monitoring a vzdálený management v ceně

Každý dedikovaný server monitorujeme a v případě nedostupnosti serveru například z důvodu přetížení do 5 minut voláme klientovi a pomáháme mu v případě, že je nedostupnost zapříčiněná právě z důvodu problému na straně hardware serveru.

Všechny dedikované servery jsou zapojeny do centrální management sítě a klienti tak mohou přes naši webovou aplikaci KVM Proxy přistupovat na management dedikovaných serverů, sledovat log hardware serveru, dostat se na konzoli serveru (KVM), provést vzdálený boot či fyzicky restartovat server a to vše přes centrální rozhraní s maximálním pohodlím, což ocení zejména klienti, kteří mají více serverů.

Opravdu pořádná konektivita

Každý server je připojen do sítě 2x 1 Gbps (redundance pomocí LACP) do dvou oddělených switchů v režimu active-active, takže lze využívat plnou rychlost 2 Gbps. Volitelně nabízíme rychlost 2x 10 Gbps.

vshosting~ neslibuje nereálné a jeho páteřní síť je připravena na velké datové toky. Používáme ze všech hostingových firem nejlepší síťový hardware.

Jsme členem 4 peeringových center ve 3 zemích a naši evropskou infrastrukturu dále rozšiřujeme. Výhledově plánujeme i upgrade na 2x 100 Gbps do NIX.CZ. Technologie je na to již připravena.

Redundance

Používáme výhradně dvouzdrojové servery či servery s propojením s STS switchi, abychom plně využili vlastnosti špičkového datacentra a jeho infrastruktury energetiky. Díky tomu jsme schopni smluvně garantovat vysokou garanci dostupnosti.

Podívejte se do zákulisí záložních systémů našeho datacentra: https://www.youtube.com/watch?v=5lHvzvU6BWY

Kompletní správa fyzické infrastruktury – vše co potřebujete

Pro ty největší internetové projekty zajišťujeme komplexní infrastrukturu jako službu. K dedikovaným serverům tak nabízíme například tyto doplňkové služby:

– privátní sítě mezi servery (klientské VLAN)
– pronájem NetApp storage či prostoru na našem CloudStorage SSD/SAS pro centrální uložiště (NFS/iSCSI)
– špičkový premium AntiDDoS (Radware řešení)
– VPN as a Service
vshosting~ CDN

A další.

Více na https://vshosting.cz/dedicated-servers/


Damir Špoljarič

vshosting~ oficiálně uvedl nabídku CDN, která slouží pro akceleraci rychlosti webů a snížení zátěže na serverech klientů. vshosting~ CDN běží již od listopadu loňského roku a od té doby byla v pilotním provozu nasazena u prvních několika set klientů. Nyní je služba nabídnuta veřejně: https://vshosting.cz/services/cdn

Evropa a USA jsou prioritou

vshosting~ CDN pokrývá USA a Evropu a je postavena na vlastní infrastruktuře vshosting~. Dle klientů, kteří přešli od konkurence, drží vshosting~ CDN vysokou laťku z hlediska zrychlení webu a latencí. Dále má vshosting~ v plánu rozšiřovat CDN síť od Ruska, Asie a Jižní Ameriky.

Nové funkce

vshosting~ staví CDN na ultravýkonné infrastruktuře s fullSSD poli a ohromnému množství operační paměti, aby bylo možné všechny používané cachované soubory distribuovat uživatelům z nejrychlejší možné paměti. Samozřejmostí jsou prvky jako podpora http/2, Let’s Encrypt nebo možnost volby, zda se má CDN řídit http hlavičkou na serveru klienta, či zda se má nastavení cache vynutit přímo na straně CDN. V klientském rozhraní je možnost i volby lokality, pro které je CDN účinná.

Mezi unikátní vlastnosti vshosting~ CDN patří také pracně vyjednané individuální vlastnosti propojení s klíčovými globálními TIER1 operátory, takže se vshosting~ CDN daří směrovat například americké uživatele na americkou část CDN a evropské uživatele do Evropy a to i v případě operátorů, kteří jsou s CDN propojeni na více kontinentech a často tak u konkurenčních CDN. Například veškerý traffic k dané CDN směrují pouze na jedno místo propojení, čímž se pro část uživatelů daného operátora vytrácí všechny výhody v podobě zrychlení webu.

CDN za výhodné ceny

vshosting~ CDN neomezuje ani nezpoplatňuje množství requestů a cena je založena pouze na množství přenesených dat. Cena je nastavena oproti konkurenčním službám výhodněji a klient má navíc možnost zvolit některý ze zvýhodněných balíčků nebo využívat Pay As You Go metodu.

Implementace služby vshosting~ CDN je velice jednoduchá a vshosting~ nabízí 14 denní bezplatné zkušební období.

Více informací na https://vshosting.cz/services/cdn


Damir Špoljarič

Zdvojnásobení našich vývojářských kapacit v krátké době má svůj důvod. Pracujeme na mnoha zajímavých projektech paralelně a na jeden z těch hodně zajímavých se teď podíváme trochu blíž: Managed Admin.

Co je to projekt Managed Admin

Za téměř 11letou historii jsme si vyzkoušeli či používali mnoho různých control panelů. Žádný nám ale nevyhovoval do náročného prostředí plnohodnotných managed služeb. Vždy bylo nějaké „ale“, kdy se musel přizpůsobit buď klient se svojí aplikací či admin s možnostmi optimalizací a instalací dalšího software.

Běžný control panel se snaží vyrábět z individuální služby, kterou by managed služba měla být, krabicové řešení, které službu zbytečně částečně degraduje. Proto jsme se rozhodli začít vyvíjet vlastní unikátní ovládací prostředí managed serverů pro klienty s názvem Managed Admin.

Decentralizace a zachování individuálních požadavků

Základní myšlenka celého konceptu Managed Admin je decentralizace. Pro ovládání každé služby bude na serveru nainstalován konkrétní balíček (pochopitelně v debianím balíčku viz https://vshosting.cz/blog/nase-seznamovani-s-automatizaci-procesu-nasazeni) s danou konkrétní servisou, které budou komunikovat s centrálním systémem, které klientovi poskytnou ucelený pohodlný pohled na všechny servery a všechny ovládatelné služby a možnosti ovládání přes GUI či restAPI.

Konkrétní servisy vyvíjíme v GoLang. Servisy jsou nezávislé jak na klientských aplikací, tak i mezi sebou. Na databázovém serveru tak bude například pouze balíček pro ovládání klientských účtů a balíček pro ovládání výjimek ve firewallu. Systém bude umožňovat provádět většinu rutinních činností, které klient či vývojář potřebuje ke své každodenní činnosti, pomocí Managed Admin bez nutnosti kontaktovat technickou podporu.

Velký důraz je kladen na uživatelské pohodlí, rozhraní tak bude intuitivní a hlavně díky elasticu extrémně rychlé, jak to mnozí uživatelé znají například z CloudMailu. Pracujeme rovněž na přípravě nového klientského rozhraní, které bude všechny ovládací systémy centralizovat v jednom klientském účtu – jak Managed Admin, tak správu DNS, tak CloudMail a další služby, které chystáme.

Co bude Managed Admin umět

Managed Admin je modulární systém a seznam modulů, které chceme vyvinout je dlouhý. Aplikaci budeme spouštět po dokončení prvních několika modulů a další moduly budeme postupně přidávat. Součástí však bude postupně ovládání cronů (včetně výstupu z logu o provedení), virtualhostů (nginx, apache) včetně automatizace nasazení SSL a dalších častých požadavků (zaheslování, přesměrování, aliasy, popř. možnost nahrazení konfiguračního souboru nginx s možností rollbacku dle konkrétních podmínek SLA dané služby apod), ovládání výjimek ve firewallu pro vybrané služby, ovládání databází/uživatelů na databázovém serveru, stav poštovní fronty serveru, správa logů a rotace logů, správa přístupu k serveru (FTP/SFTP atd).

Jak bude probíhat implementace

Je před námi velký kus práce s vývojem (minimálně půl roku). Implementace bude po dokončení první části projektu prováděna postupně a s každým klientem individuálně.


Během 17 let jsme provedli úspěšnou migrací stovky klientů. Pomůžeme i vám.

  1. Domluvte se na konzultaci

    Stačí nám zanechat kontakt. Obratem se vám ozveme.

  2. Bezplatný návrh řešení

    Nezávazně probereme, jak vám můžeme pomoct. Navrhneme řešení na míru.

  3. Profesionální realizace

    Připravíme vám prostředí pro bezproblémovou migraci dle společného návrhu.

Zanechte nám svůj e-mail nebo telefon




    Nebo nás kontaktujte napřímo

    +420 246 035 835 V provozu 24/7
    konzultace@vshosting.cz
    Zkopírovat
    Obratem se vám ozveme