Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Γειά σας, σκέφτομαι να μεταφέρω μερικά κομμάτια κώδικα PHP σε C++ CGI ώστε να κερδίσω ταχύτητα.

 

Το θέμα είναι ότι δεν γνωρίζω πως συμπεριφέρεται το CGI. Κάπου είχα διαβάσει ότι πρέπει να ενεργοποιεί ένα instance του προγράμματος σε κάθε request (επειδή δεν χειρίζεται Multithreading) και αυτό ίσως να οδηγούσε σε τρομερή κατανάλωση μνήμης.

 

Εσείς κατά την γνώμη σας τι λέτε, αξίζει το CGI ή είναι παμπάλαιο;

Δημοσ.

Αν δεν έχεις στα χέρια σου λεπτομερή στατιστικά του web server της εφαρμογής σου, στα οποία μπορείς να καταδείξεις με σαφή τρόπο πού υπάρχει πρόβλημα και πώς θα βελτιωνόταν αυτό (χωρίς να θεωρούμε δεδομένο ότι η συγκεκριμένη βελτίωση θα γίνει κάνοντας port κώδικα σε c++) τότε έχεις ξεκινήσει από λάθος μεριά.

Δημοσ.

Πέρα από τα σχόλια του defacer για την βελτιστοποίηση κώδικα σε περίπτωση που τα κομμάτια που θες να περάσεις σε C++ ασχολούνται με μαθηματικές πράξεις (οπότε και κάτα πάσα πυθανότητα θα κερδίσεις ταχύτητα αν περαστούν από κάποια low level γλώσσα) να προτείνω να σκεφτείς την περίπτωση να γράψεις τα κομμάτια αυτά ως βιβλιοθήκη επέκτασης της php η οποία θα κληθεί από την υπάρχουσα εφαρμογή ελαχιστοποιόντας τις απαιτούμενες αλλαγές.

 

Τώρα το CGI δεν είναι τίποτα παραπάνω από ένα console application το οποίο κάνει redirect το output στο connection από όσο θυμάμαι από το ημίωρο που ασχολήθηκα πριν από μερικά χρόνια. Αν αξίζει τον κόπο θα έλεγα πως όχι αν σκεφτείς ότι μια php εφαρμογή μπορεί να εκτελεστεί σε όποιο server επιλέξεις με υποστήριξει php ενώ το cgi πρέπει να μεταγλωτηστεί για τον κάθε επεξεργαστή και λειτουργικό ξεχωριστά.

 

Φυσικά εάν επιλέξεις τον δρόμο του php extension θα πρέπει να είσαι έτοιμος για την μεταγλώτηση του για τον server που έχεις αυτή την στιγμή καθώς και για κάθε server που μπορεί να εμφανιστεί στο μέλλον όπως ακριβώς και το CGI.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...