wysyłanie kilku zapytań równocześnie

0

Witam.
Posiadam serwer dedykowany. Mam na nim około 2 tysięcy stron,
napisanych w języku php. Mimo, że load serwera jest na bardzo niskim
poziomie, strony długo się wczytują.
Każdy skrypt "czeka na swoją kolej", po czym zostaje przetworzony.

W panelu directAdmin mam informacje o wykonywanych zadaniach: Tasks: 340 total, 1 running, 337 sleeping, 0 stopped, 0 zombie,
Wydaje
mi się, że przyczyną długiego wczytywania stron jest wykonywanie tylko
jednego połączenia z bazą równocześnie. Serwer "czeka", aż dany skrypt
się wykona, następnie zaczyna wykonywać kolejny...

Czy istnieje możliwość skonfigurowania serwera/skryptów tak, aby skrypty pobierały rekordy z bazy danych niezależnie od siebie?
Dodam, że skrypty nie zapisują danych w bazie, tylko je pobierają, dlatego ryzyko konfliktów jest wykluczone.
Bardzo proszę o pomoc.

0

konfiguracja apacha [o ile to jest Twoim serwerem www], szukaj tam czegoś

0

Może domyślnie zmniejszono wartość dla max_connections (http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_max_connections)?

Jeśli to właściwy trop, to chyba ten wątek będzie pomocny:
http://forum.directadmin.com/showthread.php?t=19701

0

Load serwera php jest na niskim poziomie, a load serwera baz danych? Obciążenie serwera aplikacji nie może być duże, skoro przeważnie czeka na odpowiedź innego serwera...
Masz w bazie danych odpowiednie indeksy, sprawdzałeś plany zapytań i wiesz, że problemem nie jest przeciążona baza danych?

0

Ja bym sprawdził ilość aktualnie nawiązanych połączeń z bazą danych i porównał to z konfiguracją (ilością maksymalnych możliwych połączeń). Ilość na poziome 100 (max w konfiguracji) może być zbyt niska dla serwera z 2k aktywnych, łączących się z bazą stron.

Jeśli tu będzie OK, tzn. ilość nawiązanych połączeń będzie niższa od limitu, to trzeba by sprawdzić ilość założonych locków na tabelach.
Być może korzystasz ze stałych/trwałych połączeń (pconnect). Istnieje przy tym jakiś skrypt, który z jakiegoś powodu nie może zdjąć blokady z tabeli i blokuje inne skrypty korzystające z tego połączenia.

EDIT: Nie od czapy byłoby również zerknąć konfigurację serwera WWW. Być może tu jest wąskie gardło.

Próbuj, sprawdzaj, po nitce do kłębka... ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1