![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 35 Dołączył: 25.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Na szybko opiszę problem. Po przeniesieniu się na nowy serwer, na którym mamy limit interpretatorów PHP, okazało się że nasza strona pochłania zbyt dużą ich ilość. Wg administratora problem może sprawiać pewien określony plik, który wyjątkowo długo się wykonuje. Po przeanalizowaniu czasu wykonania się poszczególnych partii kodu tego pliku (który swoją drogą jest skrajnie prosty, bo wykonuje tylko jedno proste zapytanie do bazy), okazało że najwięcej czasu zajmuje linijka tworzenia obiektu PDO:
z reguły jest to czas rzędu 0.01s, ale w przypadku uruchomienia tego pliku jednocześnie w kilku zakładkach, czas potrafi się wydłużyć do kilkunastu sekund... Nie wklejam reszty kodu bo problemem jest tylko ta jedna linijka. Macie pomysł co może powodować tak długie łączenie się z bazą, ewentualnie jak to zoptymalizować? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 35 Dołączył: 25.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
No właśnie też o tym pierwszym pomyślałem, ale czemu zawsze zawiesza się na tym pliku ?
Jeśli wyciągnę kod z klas i zorganizuję go w jednym pliku, to wygląda to tak:
A więc żadnych wygibasów tu nie ma. Odnośnie jednak zamulania przez jakieś inne zapytanie - jest jakiś sposób żeby rejestrować wykonywane przez bazę zapytania, ich czas wykonania - żeby ewentualnie zlokalizować zapytanie które muli (ale nie na zasadzie pomiaru czasu w metodach które wykonują sql-a, bo to mi zajmie 100 lat ;-) )? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 14:24 |