Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] PDO vs standardowe mysql_query, jak wygląda różnica szybkości?
Forum PHP.pl > Forum > Przedszkole
skleps
Zaczynam zastanawiać się na temat ew. zaczęcia używania PDO zamiast zapytań standardowych typu mysql_query czy też własnej klasy na nich bazującej.
Kwestia polega na zmianie filozofii, bo mam wyjścia:
1. Dalej jechać na zapytaniach standardowych tudzież własnych klasach
2. Zacząć używać PDO w nowych projektach a w starych jechać na zapytaniach standardowych / własnej klasie
3. Przejść całkowicie na PDO i w związku z tym przy okazji uaktualnień sukcesywnie przerabaić działające aplikacje na PDO tam gdzie się da...

No i mam wątpliwość, dlaczego miałbym przechodzić na PDO ? Czy jest sens zmieniać przyzwyczajenia?

Tak czy inaczej konkretne pytanie:

Czy PDO jest wyraźnie szybsze od zapytań standardowych i/lub własnej klasie na nich bazującej?
nospor
Czy jest sens zmieniac przyzwyczajenia?

Zajrzyj do manuala a doczytasz, ze mysql_ jest juz DEPRECATED i pewnego pieknego podczas jakiejs aktualizacji niezle sie zdziwisz, ze cala twoja aplikacja stoi.
Zamiast tego masz uzywac albo PDO albo mysqli_

O calej masie innych kwestii juz nie bede wspominal
toffiak
mysql_query ma status deprecated, co oznacza że w przyszłości zostanie usunięte całkowicie, więc jakiekolwiek zastanawianie się czy używać go w nowych projektach nie ma sensu. W starych projektach przepisanie to kwestia kosztów więc sam skalkuluj czy jest to dla Ciebie opłacalne.

Odnośnie prędkości nie wypowiem się, nigdy tego nie testowałem.
skleps
O DEPRECATED wiem, ale interesuje mnie kwestia prędkości...
Żeby nie zdziwić się, że coś co powinno chodzić 5x szybciej na oko idzie "jak krew z nosa"

Poza tym zastanawiam się, czy "podmiana" własnej klasy (czytaj: wymiana bebechó klasy z zapytań standardowych na PDO) wpłynie jakoś na działanie chodzących aplikacji?
mar1aczi
Cytat(skleps @ 2.12.2013, 14:03:12 ) *
...czy "podmiana" własnej klasy (czytaj: wymiana bebechó klasy z zapytań standardowych na PDO) wpłynie jakoś na działanie chodzących aplikacji?

Zwiększy prawdopodobieństwo ich prawidłowego działania po aktualizacji PHP do nowszej wersji.
nospor
Jesli chodzi o szybkosc to nie powinno sie nic w znaczacy sposob zmienic. Co najwyzej jakbys zaczal uzywac specjalnych rzeczy w PDO to bys przyspieszyl. Samo przejscie z mysql_ na PDO nie powinno miec znaczenia dla szybkosci

Cytat
Poza tym zastanawiam się, czy "podmiana" własnej klasy (czytaj: wymiana bebechó klasy z zapytań standardowych na PDO) wpłynie jakoś na działanie chodzących aplikacji?
A to juz wszystko zalezy jak zrobiles te klase i jak twoja aplikacja z niej korzysta. Jak prawidlowo napisales, to obedzie sie bez problemow. Jak nie, to problemy będą
skleps
Cytat(nospor @ 2.12.2013, 14:10:56 ) *
Jesli chodzi o szybkosc to nie powinno sie nic w znaczacy sposob zmienic. Co najwyzej jakbys zaczal uzywac specjalnych rzeczy w PDO to bys przyspieszyl. Samo przejscie z mysql_ na PDO nie powinno miec znaczenia dla szybkosci


Mam nadzieję ze masz rację, jakoś nie mogę znaleźć jakichś konkretniejszych testów porównawczych prędkości, a nie mam czasu zrobić własnych.

Jeszcze jedno - coś mi się kojarzy, ze czytałem o czymś takim w PDO, że zapomnienie obsłużenia/przechwycenia wyjątku stwarza realne niebezpieczeństwo wyświetlenia danych dostępowych do bazy danych. Zapamiętałem bo nie chciało mi się w to wierzyć, ale pamiętam 5 przez 10 smile.gif

Jakie jest ryzyko wyświetlenia internaucie danych dostępowych do bazy i co trzeba sp*lić w aplikacji, żeby wyciekły takie dane?

EDIT:
Jednak PDO dostaje po pupie pod kątem prędkości, czasem całkiem nieźle względem mysqli:
http://we-love-php.blogspot.com/2012/07/my...qli-or-pdo.html
mar1aczi
Proszę, wyniki testów
http://we-love-php.blogspot.com/2012/07/my...qli-or-pdo.html
http://wooptoo.com/blog/pdo-vs-mysqli-perf...nce-comparison/ (tu wersja MySQLa jest troszkę starawa)
!*!
Cytat(skleps @ 2.12.2013, 15:14:25 ) *
Jednak PDO dostaje po pupie pod kątem prędkości, czasem całkiem nieźle względem mysqli:
http://we-love-php.blogspot.com/2012/07/my...qli-or-pdo.html


Jak się ma złą linijkę to i pomiar będzie błędny.
NetBeans
Wiadomo, że w pewnym stopniu otoczka dla bazy danych, jaką jest PDO spowolni projekt. Są to jednak tak małe wartości, że wątpię, abyś je odczuł. Do tego to, co napisał kolega wyżej: to ma największe znaczenie. smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.