abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:22 | IT novinky

    Organizace IuRe (Iuridicum Remedium) varuje před návrhem, který představilo belgické předsednictví Rady EU. Populární služby jako Messenger, WhatsApp nebo Signal by dle něj bylo možné plně používat až po odsouhlasení kontroly komunikace. Ta by měla zamezit šíření dětské pornografie. Podle IuRe by však taková kontrola přinesla hlavně závažný dopad na soukromí uživatelů.

    Ladislav Hagara | Komentářů: 2
    dnes 11:11 | Nová verze

    NumPy (Wikipedie), tj. knihovna pro Python pro vědecké výpočty, byla po 18 letech vydána v nové major verzi 2.0.0. Přehled novinek v poznámkách k vydání. Důležité informace v průvodci migrací.

    Ladislav Hagara | Komentářů: 0
    včera 23:11 | Nová verze

    Vývojáři postmarketOS vydali verzi 24.06 tohoto před sedmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell, Phosh, KDE Plasma a Sxmo. Aktuálně podporovaných zařízení je 50.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.

    Ladislav Hagara | Komentářů: 0
    14.6. 12:11 | IT novinky

    Google Blog ČR informuje, že mobilní aplikaci Gemini a NotebookLM lze používat už také v Česku.

    Ladislav Hagara | Komentářů: 18
    14.6. 11:33 | Nová verze

    Byla vydána nová major verze 8 duálně licencovaného open source frameworku JUCE (Wikipedie, GitHub) pro vývoj multiplatformních audio aplikací.

    Ladislav Hagara | Komentářů: 0
    14.6. 11:11 | IT novinky

    Od 18. června bude možné předobjednat notebook DC-ROMA RISC-V LAPTOP II od společnosti DeepComputing s osmijádrovým 64-bit RISC-V AI CPU a s předinstalovaným Ubuntu.

    Ladislav Hagara | Komentářů: 2
    13.6. 23:55 | Nová verze

    Byla vydána verze 1.79.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    13.6. 14:33 | Zajímavý článek

    Byly zveřejněny výsledky průzkumu (infografika) mezi uživateli FreeBSD.

    Ladislav Hagara | Komentářů: 0
    13.6. 13:22 | IT novinky

    Na konferenci DevConf.CZ 2024 je na stánku Furi Labs prezentován linuxový telefon FuriPhone FLX1. Jeho cena 499 dolarů.

    Ladislav Hagara | Komentářů: 18
    Rozcestník

    Dotaz: Problém - MySQL ve vysoké záteži

    10.5.2014 00:24 LuRy | skóre: 12
    Problém - MySQL ve vysoké záteži
    Přečteno: 747×

    Zdravím, řeším problém s MySQL (Percona) kdy ve vysoké zátěži se začnou kupit mysql procesy a nejčastěji se stavem Waiting for query cache lock, zkoušel jsem s tím experimentovat a snížit na 512MB ale problém přetrvává jak se navýší traffic jde to do kopru.
    Problém obvykle nastane kdy se na serveru objeví traffic 30 přístupů na web za vteřinu cca 1000-1500 za minutu. Do té doby je zpracování 8 sql dotazů obvykle do 10ms maximálně, poté se zvednou na 200-800 někdy i více což je už dost nepříjemné.
    Kdyz query cache vypnu zacne se neprijemne zvedat odezva na disky a dle atop lita "busy" chvilkama 70-99%.
    Efektivita zaple query cache dle udaju co udava mysql je 40-50%

    - Disky na 1. serveru jsou v konfiguraci 8x SAS 10k RPM v 10 RAIDu 4stripping+4mirror.
    - Koncept je 2 servery
    - 1. HAProxy (pro apache+fpm na jednom i druhem serveru, MySQL), MySQL, nginx pro staticky obsah, redis-server
    - 2. apache+fpm, mysql vzdalene na haproxy ktera preda pozadavek mysql serveru (pripraveno pro load balancing pokud bude 3ti server, spojeni pres haproxy nebo naprimo na tcp nema vliv na tento problem), server temer nesaha na disk, data pres nfs4, cache aplikace resena pomoci shm uloziste a redis-server v pameti bez aof

    Výše zmíněný problém doprovází zvýšený počet spojení ve stavu TIME_WAIT okolo 50tis celkove, přes 20tis pouze 3306 port

    System debian 7.5, Kernel 3.2.0-4-amd64 #1 SMP Debian 3.2.57-3 x86_64
    Mysqlmonlite vypis - https://static.chatujme.cz/mysqlmon1.txt
    sysctl vypis - https://static.chatujme.cz/sysctl.txt (sysctl.conf + komplet sysctl -a vypis nize)

    MySQL server jsem v noci upgradoval na 5.6 a query cache snížil na 512MB ale problém přetrvává dále (mysqlmonlite je ze včerejška ještě pro 5.5 s 2GB query cache.

    Předem díky za každou nápomocnou radu, mám pocit,že jsem něco nastavil špatně protože před 14 dny to bylo v pohodě a návštěvnost se nějak výrazně nenavýšila

    LuRy

    Odpovědi

    10.5.2014 15:02 Matlák
    Rozbalit Rozbalit vše Re: Problém - MySQL ve vysoké záteži
    1] možná by bylo vhodné dotaz zařadit spíše do databázové poradny? Tam se asi spíš dočkáš odpovědi.

    2] Velikost query_cache není jediná věc. Důležitý je i počet queries. Já třeba na mašině s 128G RAM používám nastavení 256M+50k a prakticky se se stavem "Waiting for query cache lock" nesetkávám.

    3] Je dost důležité, o jaké dotazy jde. Pokud úplné odstavení query_cache vede k zatížení disků, asi by stálo za to zkontrolovat které dotazy to způsobují. Pak je možné u nich query_cache povolit místně (viz mysql_query_cache_type=2, select sql_cache) a nebo náležitě upravit ten PHP script co data čte aby si je laskavě zacachoval u sebe...
    10.5.2014 22:06 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: Problém - MySQL ve vysoké záteži
    No dobře tak asi změna. Ted je mysql server spící včetně disku (qcache vypnuta) a nakupují se spojení stejným způsobem akorat ne uz se stavem waiting for query cache lock ale ve stavu sleep ale to je vcelku normalni. dle meho je pricina toto (server 2.)

    netstat -tapn|grep TIME_WAIT|wc -l 54610

    netstat -tapn|grep ":3306" |grep TIME_WAIT|wc -l 11119

    netstat -tapn|grep ":6379" |grep TIME_WAIT|wc -l 34011

    Ted momentalne haproxy frontuje 400 pozadavku na web server kterej ma limit 200 a uz to je v tomhle stavu par minut obvykly. Takze to nakonec vypada na redis ze si po sobe neuklizi nebo ho neco nadmerne vytezuje .. nicmene krom apllikace samotny ho nic nevyuziva mimo navic jede jeste momentalne po lokalu (1. web server i redis je off) info tvrdi 130-150 klientu coz je neobvykly.

    Problem nejspis bude nekde jinde nez v mysql.. mysql zere disk pouze pri nabehu co jsem vypozoroval nez si nataha data do pameti pak uz je to v klidu. Nez jsem dopsal tuhle zpravu zkusil jsem vymenit redis pro session za memcached po socketu tak uvidim jsem s tim uz bezradnej docela nevim vubec ceho se chytnout protoze se nejak neda ani podle ceho chyntout .. Tyhle problemy to dela ve chvilich kdy na to navstevnost ani nevypada nebo to dela pri mensi navstevnosti v prubehu dne nez byla pri minulem totoznem problemu

    cat /etc/sysctl.conf
    net.ipv4.tcp_tw_recycle = 0
    net.ipv4.tcp_window_scaling = 1
    net.core.rmem_max = 16777216
    net.ipv4.tcp_rmem = 4096 87380 16777216
    net.ipv4.tcp_wmem = 4096        16384   16777216
    
    net.core.somaxconn = 65535
    net.ipv4.conf.all.send_redirects = 1
    net.ipv4.ip_nonlocal_bind = 1
    net.ipv4.tcp_abort_on_overflow = 0
    net.ipv4.tcp_fin_timeout = 20
    net.ipv4.tcp_keepalive_time = 300
    net.ipv4.tcp_max_orphans = 262144
    net.ipv4.tcp_max_syn_backlog = 65536
    net.ipv4.tcp_max_tw_buckets = 262144
    net.ipv4.tcp_mem = 200000    280000    300000
    net.ipv4.tcp_reordering = 3
    #
    #net.ipv4.tcp_rmem = 4096    87380    4120928
    net.ipv4.tcp_synack_retries = 3
    net.ipv4.tcp_syncookies = 1
    net.ipv4.tcp_syn_retries = 5
    net.ipv4.tcp_timestamps = 0
    #net.ipv4.tcp_tw_recycle = 0
    net.ipv4.tcp_tw_reuse = 1
    #
    #net.ipv4.tcp_wmem = 4096    16384    4120928
    
    net.ipv4.netfilter.ip_conntrack_max = 10485760
    net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 20
    net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 10
    net.netfilter.nf_conntrack_max = 10485760
    net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 30
    net.netfilter.nf_conntrack_tcp_timeout_time_wait = 15
    net.ipv4.ip_local_port_range=1025 65000
    #kernel.shmall = 2097152
    #kernel.shmmax = 2147483648
    #kernel.shmmni = 4096
    #kernel.sem = 250 32000 100 128
    fs.file-max = 209708
    net.core.netdev_max_backlog=4096
    #net.core.wmem_max = 229376
    net.ipv4.tcp_slow_start_after_idle = 0
    #net.netfilter.nf_conntrack_count = 131072
    #net.
    
    
    
    10.5.2014 22:28 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: Problém - MySQL ve vysoké záteži
    Moje hypoteza je takova ze phpko pri zpracovani skriptu se na necem zasekne (nejspis na zamcich u redisu) a pak se odsekne a mysqlce naserviruje napriklad 50-100 spojeni najednou proto se zvedali tak ty casy a query cache se invalidovala vicekrat nez by bylo zdravo ale ted je to vlastne podruznej problem uz .. Zatim jsem vymenil pro php sessions redis za memcache tak uvidim.. jediny co me trapi je to ze kdyz resetnu memcache tak vse zahodi a memcachedb je dle myho nazoru sebevrazda o nekolik kradu pomalejsi. Uvidim nejspis v prubehu zitrka kdy byva obvykle spicka k veceru

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.