βελτίωση ταχύτητας php-mysql script

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
alex_begos
Δημοσιεύσεις: 102
Εγγραφή: 07 Σεπ 2007 19:29

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από alex_begos » 25 Ιούλ 2011 13:50

παιδιά πως μπορώ να αυξήσω την ταχύτητα ενός php-mysql script????
έχω για παράδειγμα ενα query που μου φιλτράρει έγγραφες από ένα πίνακα με αρκετά πεδία γύρο στα 20...
και μια φόρμα όπου επιλέγω με πια δεδία θα φιλτράρω το πίνακα....
ο πινάκας είναι αρκετά μεγάλος έχει 10.000 εγγραφές και όσο πάει γίνεται και μεγαλύτερος...
χρησιμοποιώ mysql_fetch_assoc ....
τι πρέπει να κάνω για να μπορέσω να κάνω γρηγορότερο το script μου...
όταν κάνω για παράδειγμα submit στην φόρμα για να μου εμφανίσει τις έγραφες θέλει περίπου 4-5 δευτερόλεπτα....
ξερω πως αυτά που περιγράφω είναι πολύ γενικά και σίγουρα δεν μπορείτε να δώσετε μια ακριβή λύση...
Αυτό που θέλω είναι να μου επισημάνετε τα σημαντικότερα σημεία που πρέπει να δώσω ιδιαίτερη προσοχή για να μπορέσω να βελτιώσω την απόδοση του script...

ευχαριστώ

Άβαταρ μέλους
CyberCr33p
Honorary Member
Δημοσιεύσεις: 3199
Εγγραφή: 06 Νοέμ 1999 01:00
Τοποθεσία: Αθήνα
Επικοινωνία:

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από CyberCr33p » 25 Ιούλ 2011 14:13

Έχεις φτιάξει indexes ;

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από dva_dev » 25 Ιούλ 2011 14:20

Να χρονομετρήσεις τις διάφορες διαδικασίες που τρέχουν για να δεις που βρίσκονται οι μεγαλύτερες καθυστερήσεις.
Να αποφύγεις τα select * (εκτός κι αν χρειάζεσαι όλα τα πεδία).
Να βάλεις indexes.
Να βάλεις relations.
Να αποφύγεις τα like στα sql statements.
Να ξαναγράψεις τα queries με διαφορετικό τρόπο.
Να χρησιμοποιήσεις prepared sql statements.
Να βελτιστοποιήσεις τον php κώδικα.

Άβαταρ μέλους
alex_begos
Δημοσιεύσεις: 102
Εγγραφή: 07 Σεπ 2007 19:29

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από alex_begos » 25 Ιούλ 2011 14:24

ναι βέβαι εχω φτιαξει indexes...
και γενικα το script εχει και πολλά αλλα query....
να εξηγήσω και τι ακριβώς κάνω....
-έχω πελάτες με διάφορα στοιχεία στον πινάκα πελάτες .
-αναζητώ κάποιους πελάτες οι οποίοι με ενδιαφέρουν.
-εμφανίζω σε ενα table τους πελάτες με mysql_fetch_assoc
-ακόμα εμφανίζω πληροφορίες απο κάθε πελάτη που δεν υπάρχουν στο πινάκα πελάτες αλλα σε άλλους πινάκες όπως για παράδειγμα συναλλαγές, αρχεία κ.λ.π.

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από ThyClub » 25 Ιούλ 2011 14:27

Να μην κάνεις ORDER BY. Αν κάνεις join selects δες αν χρησιμοποιείς σωστά τα κλειδιά.

Άβαταρ μέλους
alex_begos
Δημοσιεύσεις: 102
Εγγραφή: 07 Σεπ 2007 19:29

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από alex_begos » 25 Ιούλ 2011 14:43

τι εννοείς να χρησιμοποιήσω relations?

Άβαταρ μέλους
alex_begos
Δημοσιεύσεις: 102
Εγγραφή: 07 Σεπ 2007 19:29

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από alex_begos » 25 Ιούλ 2011 15:13

ok παιδιά το βρήκα μέτρησα τους χρόνους και εντόπισα το to query που καθυστερεί....

Κώδικας: Επιλογή όλων

SELECT COUNT(*) as max FROM pin1 WHERE  id NOT IN (SELECT id FROM pin2)

πρέπει να γράψω αυτό το ερώτημα κάποιο άλλο τρόπο
ευχαριστώ παρα πολυ

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

βελτίωση ταχύτητας php-mysql script

Δημοσίευση από jpk » 25 Ιούλ 2011 19:52

Δοκίμασε αυτό...

Κώδικας: Επιλογή όλων

SELECT COUNT( a.id ) AS max
FROM pin1 AS a
LEFT JOIN pin2 AS b ON a.id = b.id
WHERE b.id IS NULL 

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης