Percona Toolkit a analýza MySQL slow logu na Windows

Analýza MySQL slow logu je jedním ze základních a zároveň nejmocnějších způsobů, jak zrychlit web a předejít přetěžování databázového serveru. Jde o to, podívat se na SQL dotazy, které trvaly příliš dlouho a zároveň se často spouštěly a ty pak optimalizovat (indexy nebo jejich přepsáním, sdružením, rozdělením atd).

Používám k tomu nástroj Percona Toolkit, který je ale dostupný pouze pro Linux. Jak se s tím poprat ve Windows 10? Připravil jsem podrobný návod.

Ve zkratce:

  1. Nainstalujeme si Ubuntu subsystém.
  2. Do něj MySQL server.
  3. Ten nakonfigurujeme – změníte mu port, abychom jej mohli používat vedle současného serveru i z WAMPu z Windows!
  4. Nainstalujeme Percona Toolkit.
  5. Do něj nahrajeme slow query log z produkčního serveru.
  6. Stáhneme si nástroj Anemometer.
  7. A budeme analyzovat!

Pokračovat ve čtení “Percona Toolkit a analýza MySQL slow logu na Windows”

5 užitečných vývojářských rozšíření pro Chrome

Ha, nabízím přehled rozšíření, které používám při vývoji webu. Jsou to prakticky jediná rozšíření co používám, kromě AdBlocku. Snažím se jich mít co nejméně.

1. Facebook Pixel Helper

Rozšíření sloužící ke kontrole Facebook pixelů na webu. Můžete pomocí něj okamžitě zkontrolovat, zda vám fungují sledovací pixely a odesílání událostí a v případě že ne, poradí vám, co opravit.

2. Google Tag Assistant

O něco méně povedená obdoba Facebookového rozšíření, tentokrát pro skripty od Googlu (Analytics, Tag Manager, …). Ovládaní by mohlo být trochu lepší, občas je dost velký problém přepnout se mezi. Před použitím je nutno jej povolit na konkrétní stránce a pak provést reload.

3. Page Ruler

Pravítko. Používám ho občas k měření vzdálenosti, ale hlavně ke kontrole, že jsou elementy zarovnané na pixel přesně tak, jak chci.

4. Page load time

Skvělé rozšíření, které jednoduše zobrazí na svém tlačítko dobu načítání stránky. I když mám při vývoji zapnutou Tracy, ta měří pouze dobu exekuce skriptu, toto rozšíření měří celkovou dobu načítání stránky.

5. ColorZilla

Kapátko pro rychlé zjištění použité barvy na webu. Rychlejší než zkoumat element přes development tools a hledat jeho barvu / barvu pozadí.

 

cmder: upgradovaná konzole pro Windows

cmd.exe je bohužel již několik (desítek) let stejný a oproti unixovým terminálům mu chybí mnoho příjemných funkcí. A pokud nechybí, je s unixem nekompatibilní, což může být při vývoji překážka – mnoho návodů je psáno pro unix a stejně tak se s ním setkáte na serverech. Špatně se z něj a do něj kopíruje, špatně se scrolluje, nefungují standardní unixové příkazy atd.

Pokud si na Windows nainstalujete Git, dostanete i Git bash, který přejímá některé unixové příkazy a může být řešením. Osobně sem jej s radostí používal přes dva roky.

Ještě lepší (a hezčí) alternativou je ale Cmder, který si můžete stáhnout zdarma a to buď v “mini” verzi a nebo “full” verzi, která v sobě obsahuje navíc i Git. Cmder nemusíte ani instalovat, existuje i portable verze. Podporuje krásné barevné zvýrazňování (git, python, …), přepínání více terminálů taby. Můžete si skrz něj napojit i Putty, připojit přímo přes SSH nebo si nastavit, které terminály se mají defaultně při zapnutí otevřít a další vychytávky.

Cmder

 

Obfuskátory Javascriptu zdarma

“je to zbytečné, stejně to jde rozlousknout, kód by měl být otevřený, použij svou energii jinde”

Jasně, ale když chcete něco důležitého udělat na klientovi, proč to těm zlým lidem trochu nestížit? Pak přijdou na řadu “obfuscators”, kterým dáte svůj JS kód a ni vám vyplivnou jeho nečitelnou podobu, která navíc často bývá velikostně menší.

Nejvíc se mi zatím líbí tento online nástroj: http://www.javascriptobfuscator.com/default.aspx, jeho nevýhodou je ale samotný fakt, že jde o online službu a nepodporuje dávkové přidání souborů. Kód ale generuje pěkně hnusný, což je podstatou.

Dalším známým nástrojem je Closure – http://closure-compiler.appspot.com/home, nástroj od Google, který je navíc dostupný v konzolové verzi ke stažení. Kód je ale dost čitelný zdá se mi.

A pak tu je cool věcička, UglifyJs – https://github.com/mishoo/UglifyJS, konzolová věc pro NodeJS, která ale také produkuju celkem čitelný kód.

Moc se v této oblasti neorientuji, máte nějaký lepší nápad? Ideálně konzolový/GUI nástroj pro dávkové zprasení více souborů, kde bych si mohl nastavit, jaké proměnné nechat na pokoji a další parametry.

SteamKitty – vývoj započal

Po neúspěšných pokusech thekulis.com v obou jeho verzích (textová hra, MMORPG) jsem se rozhodl udělat něco jednoduššího, něco, co skutečně dokončím.

Takže jsem se rozhodl pro plošinovku – SteamKitty, kde budete hrát za kočku a skákat s ní a zachraňovat svět a dělat jiné cool věci. Až to bude trošku vypadat, nahodím sem screenshot. Bude to steampunkové. A opět HTML5, JavaScript a taky PHP. A dělám to zase o úroveň hezčeji, tentokrát i v OOP.

Je to součástí mé bakalářky, tak doufám, že to dokončím hell yeah.