> Salut

Salut!

> am un mysql (percona 5.5 pe un ubuntu 14 lts) ce deserveste mai multe
> webservere cu o anumita aplicatie web si cateva teste de
> performanta/fiabiliate/etc care fac GET/POST/etc pe pe anumite URL-uri
>
> La URL-urile ce acceseaza mysql-ul, in momentul in care numarul de clienti
> simultani (pe secunda) atinge ~6000, webserverul intoarce 50x. La cele ce
> nu acceseaza mysql, ajunge la 10,000 fara probleme (nu am testat peste
> 10,000 simultani).
>
> Cum pot identifica cine are aceasta limita?

Fa un test de conexiuni simultane si pe MySQL. Vezi daca duce mai mult de
6000. Nu stiu un tester dar sigur exista. Daca nu, iti faci unul.

Range-ul de port-uri default este 32768 - 60999, deci, mai mult de 28k si
afecteaza doar webserver-ele, nu si server-ul de MySQL. E posibil sa fie
asta, trebuie sa investighezi pe server-ele de web.

Mai poate fi si numarul de file descriptor-i pe server-ul de mysql, asa
cum a zis cineva mai inainte.
Vezi cat /proc/<pid_mysqld>/limits | grep "open files".
Dar, 6000 nu se incazdreaza nicium pe linga 10240 (de exemplu), deci nu
pare sa fie asta.

Fa un
watch -n1 ss -lti '( sport = :mysql )'
(atentie la spatii)
Si vezi coloana Recv-Q. Daca nu e aproape de 0, inseamna ca MySQL-ul nu
poate procesa conectarile la MySQL suficient de rapid.

Folosesti cache-ul de la MySQL? E posibil sa vrei sa-l duci pina pe la
100MiB - 200MiB. Asta ti-ar mai reduce din timpul de query, si implicit ai
putea procesa mai multe request-uri.

Mai vezi (tot pe server-ul MySQL) si /proc/sys/kernel/threads-max. Este
numarul maxim de thread-uri in system. Ma indoiesc ca e mai jos de 10000,
deci nici asta nu pare sa fie o problema, dar verifica. la mine e undeva
pe la 40k.

Mareste si numarul de conexiuni simultane in 'connection tracking':
sysctl net.nf_conntrack_max=512000

> mysql max_connections este 90000, alte variabile mysql cu max in nume si
> valori in jurul lui 6000 nu am gasit
>
> Multumesc in avans
> Mircea

Succes!

>
> _______________________________________________
> RLUG mailing list
> [email protected]
> http://lists.lug.ro/mailman/listinfo/rlug
>


-- 
Catalin(ux) M. BOIE
http://kernel.embedromix.ro/
https://rocketgit.com/
_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui