Vice jader nebo vice frekvence per jadro? PHP/MySQL rubrika: Administrace: Hardware

2 tomassedlacek90
položil/-a 15.2.2019

Zdravim,

u jednoho projektu planujeme zmenit infrastrukturu a klicove je pro nas si rychlostne nepohorsit, co se tyce odezvy aplikaci. Dnes mame aplikaci na aplikacnim serveru, na kterou jde 40 req/s a prumerna odezva PHp je 120 ms. Aplikacni server ma 4 jadrovy procesor (8 vlaken) o frekvenci 4,5 GHz. Pak mame databazovy server, kde bezi databaze a tam je procesor 3,5 GHz na 4 jadrech (8 vlaknech).

A ted k veci. Muzeme prejit na 16ti vlaknovy procesor s frekvenci 2,8 GHz pro databazi a se stejnym serverem pro aplikaci. Pro MySQL by to mohlo vest k rychlejsi odezve, protoze MySQL dokaze vyuzit vice jader. Takze tam si rikam, ze i kdyz dojde ke snizeni frekvence per jadro, tak odezva databazoveho serveru by mela byt ve vysledku rychlejsi i co se tyce propustnosti. Co se tyce aplikace, kde je PHP, kde PHP neumi vytezit vice jader, tam si rikam, ze by snizeni frekvence mohlo vest ke zpomaleni aplikace. Na druhou stranu, zase by server mohl paralelne resit vice requestu najednou, takze otazkou je, zda realne ke zpomaleni dojde?

Trochu si nad tim lamu hlavu, zda benefit z vice jader u PHP dorovna snizeni frekvence per jadro a o jaky pokles muze ve vysledku jit.

Diky za nazory,
Tomas

Komentáře

  • harrison314 : Nechcem byt zly, ale pri MySQL najviac pomoze ju vymenit (za cokolvek ine), no viem, ze pri rozbehnutych projektoch to nie je take lahke. Ale namiesto nahania procesora na databazvom stroji by som skor investoval do SSD diskov. Tie vo vseobecnosti pomozu najviac. 17.2.2019
odkaz
2 unabombe
odpověděl/-a 17.2.2019

Divím se, že nikdo nezmínil vliv db zámků v téhle situaci.
Pokud to zjednodušíme pouze na db engine, tak pokud hodně čteš a málo zapisuješ, vyplatí se více jader. Pokud hodně zapisuješ, vyplatí se frekvence, zvlášť při použití myisam.

Komentáře

  • Kit : Rozumný vývojář se DB zámkům vyhýbá a MyISAM také. 17.2.2019
  • unabombe : To by mě opravdu zajímalo jak bych se měl vyhnout zámku tabulky (myisam...) nebo řádku (innodb...) například u updatu :-). 17.2.2019
  • Kit : Update si ten řádek přece zamkne sám. Explicitní zámky obvykle nejsou potřebné. 17.2.2019
  • unabombe : O explicitních zámcích tu ale nikdo nemluvil. 17.2.2019
  • kodl : Kite, myISAM umi byt velice dobry sluha pri urcitych typech pouziti (ale jeste horsi pan kdyz se pouzije blbe). 18.2.2019
  • Kit : Já to vím, ale vysvětlovat některým lidem, kteří vidí černobíle, je někdy složité. Takovým je lepší to černobíle i podat. I ty zámky fungují trochu jinak, než jak je to tu popisováno. Ve skutečnosti jimi ostatní operace nejsou blokovány. 19.2.2019
  • unabombe : Co třeba místo arogance nám podlidem vysvětlit, co bylo na té odpovědi špatně? Rád procitnu ze svého černobílého vidění, protože sem do teď vůbec nevěděl, že zapisovací zámky vůbec neblokují další operace. To je tvrzení, které si myslím zaslouží podložit. 19.2.2019
  • Kit : Nevím, co jsou podlidé. Pokud něco zapisuji do databáze, tak do doby, než potvrdím celou transakci, vidí čtenáři původní obsah, se kterým mohou normálně pracovat. Dokonce i zapisovači, kteří s mou transakcí nekolidují, mohou data modifikovat. Čekají pouze ti, kteří mají kolidující modifikace. Dá se to snadno nasimulovat ve dvou konzolích připojených k jedné databázi. 19.2.2019
  • unabombe : 0:03: "Ve skutečnosti jimi ostatní operace nejsou blokovány." 11:38: "Čekají pouze ti, kteří mají kolidující modifikace." Začínám mít pocit, že tenhle thread je dost pod úroveň, kterou by si zasloužil. Příklad s transakcí je opět mírně mimo, protože ten zámek blokující čtení tam stejně bude a musí se s ním počítat. Long story short, write lock blokuje čtení i zápis a je to naprostej základ všech databází. Raději spolkni pýchu a nech to plavat. 19.2.2019
  • Kit : I podřadná databáze SQLite umí během zápisu poskytovat neblokované čtení ostatním klientům. 19.2.2019
  • vit.herman : @unabombe: Nenech se vytočit :-D Já Kita pozoruju už snad řadu let a dospěl jsem intuitivně k dojmu, že to nemyslí ani špatně, ani arogantně. Rozpory ve vlastních tvrzeních (oxymorony) jsou u Kita dost časté. Přesto však systémy, které popisuje se mi jeví, že mají hlavu, patu i logiku. 19.2.2019

Pro zobrazení všech 6 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.