Προβλήµατα CGI, SSI CGI: Απόδοση Έναρξη νέας διαδικασίας για εκτέλεση (2 διαδικασιών σε περίπτωση διερµηνευόµενης γλώσσας, π.χ. perl). Κοινές διαδικασ

Σχετικά έγγραφα
Αρχιτεκτονική πελάτη-εξυπηρέτη Οι διεργασίες που εκτελούνται στο δίκτυο είναι είτε πελάτες (clients) είτε εξυπηρέτες (servers). Εξυπηρέτης: παθητικός,

Τεχνικός Εφαρμογών Πληροφορικής

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Βασικές Έννοιες Web Εφαρμογών

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

8ο Πανελλήνιο Συμποσιο Ωκεανογραφίας & Αλιείας 637

Περίληψη ιπλωµατικής Εργασίας

Περιεχόμενα ΕΥΧΑΡΙΣΤΙΕΣ ΕΙΣΑΓΩΓΗ Σχετικά με τους συγγραφείς...24

Πληροφορική στιςεπιχειρήσεις

Στρατηγική ανάπτυξη δικτυακού κόμβου

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Τεχνολογίες και Εφαρμογές Διαδικτύου

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Τι είναι η Spring. Η Spring είναι ένα ελεύθερο (open source) περιβάλλον εργασίας για εφαρμογές Java. Μπορεί να περιγραφεί ως:

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 8 η Διάλεξη: Προγραμματισμός στην πλευρά του εξυπηρετητή: Τεχνολογία Java Server Pages (JSP)

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης

Οι διαδικασίες ενος CMS είναι σχεδιασμένες για να:

Ρυθμίσεις εγκατάστασης ονόματος χώρου σε πίνακα ελέγχου plesk

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

ΑΠΟΘΕΤΗΡΙΟ ΕΦΑΡΜΟΓΩΝ ΥΠΠΕΘ ΚΑΙ ΕΠΟΠΤΕΥΟΜΕΝΩΝ ΦΟΡΕΩΝ (git.minedu.gov.gr)

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

...στις µέρες µας, όσο ποτέ άλλοτε, οι χώρες καταναλώνουν χρόνο και χρήµα στη µέτρηση της απόδοσης του δηµόσιου τοµέα...(oecd)

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. «Συγκριτική μελέτη σύγχρονων τεχνολογιών ανάπτυξης διαδικτυακών εφαρμογών» Όνομα Σπουδαστή Λυμπούδη Φωτεινή

Τεχνολογίες Ανάπτυξης Εφαρμογών στο WEB

Java & Java EE 1o Μέρος: Servlets και Java Server Pages. Κακαρόντζας Γεώργιος

Καλώς ήλθατε στην παρουσίαση του έργου SmartGov.

Ενιαίο Σύστημα Ψηφιακής Βιβλιοθήκης του Πανεπιστημίου Αθηνών

Σύστημα διαχείρισης περιεχομένου (Content Management System)

Σύστημα Διαχείρισης Περιεχομένου

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Πληροφορίες για το μάθημα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP

Βασικές Έννοιες Διαδικτύου, Wordpress και BuddyPress

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

ΔΙΑΔΙΚΤΥΑΚΟ ΣΥΣΤΗΜΑ ΒΕΛΤΙΣΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΝΕΡΓΕΙΑΚΩΝ ΠΟΡΩΝ E.M.I.R. - Energy Management & Intelligent Reporting

Εικονικό Εργαστήριο Διαχείρισης και Μετάδοσης Ψηφιακών Μέσων (Virtual Lab)

Φορολογική Βιβλιοθήκη. Θανάσης Φώτης Προγραμματιστής Εφαρμογών

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης

Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο

Περιεχόμενα. Πρόλογος... xiii

Μετασχηματισμός Υπηρεσιών Ηλεκτρονικής Διακυβέρνησης (T-Gov): Υιοθέτηση ενός web 2.0 πολιτοκεντρικού μοντέλου επικοινωνίας

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Πτυχιακή εργασία. Ανάπτυξη παιχνιδιού πολλών παικτών

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Συνέδριο ΕΛΛΑΚ Open Source λογισμικό σε εφαρμογές του δημόσιου και ιδιωτικού τομέα

ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Εισαγωγή στη J2EE. Μέρος 2

Αστέριος Κατσιφοδήμος Γιώργος Νικολάου Κώστας Βρυώνη. ΕΠΛ 428 Προγραμματισμός Συστημάτων 16/04/07

Κεφάλαιο 1. Βασικά Στοιχεία της Java... 13

Παραδοτέο Π5.3: Έντυπο και ψηφιακό υλικό (Web site) προβολής των δράσεων έργου

MICROSOFT INTERNET LOCATOR SERVER

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών

Αντικειμενοστρεφής Προγραμματισμός

Νέες τεχνολογίες εισάγονται ή χρησιµοποιούνται

Information Technology for Business

ΤΕΣΤ ΠΙΣΤΟΠΟΙΗΣΗΣ ΓΝΩΣΕΩΝ ΚΑΙ ΔΕΞΙΟΤΗΤΩΝ

ΣΥΝΔΕΣΗ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ WWW ΑΥΤΟΜΑΤΟΠΟΙΗΜΕΝΗ ΔΗΜΙΟΥΡΓΙΑ WEB-SITE

ΜΑΘΗΣΙΑΚΗ ΕΝΟΤΗΤΑ 4: ΜΕΤΑΒΑΣΗ ΣΤΟ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ: Ο ΙΚΟΣ ΧΑΡΤΗΣ

Σχεδιασµός βασισµένος σε συνιστώσες

Ανάπτυξη διαδικτυακών εφαρμογών με την Python Το εργαλείο Flask

Συστήματα διαχείρισης περιεχομένου

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

Παρουσίαση Θερινού Σχολείου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

ΚΕΦΑΛΑΙΟ 17: Web Services Εισαγωγή

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Η Βίβλος σχετικά με το JDBC. Περιέχει τρία βασικά tutorials στα οποία θα βασιστεί το μάθημα και περιγράφει όλες τις τάξεις και τις μεθόδους που

ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΩΝ ΓΙΑ ΤΗΝ ΑΝΑΠΤΥΞΗ WEB ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΕΡΙΒΑΛΛΟΝ JAVA» ΜΠΑΣΛΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ A.M 1737

Ανοικτά Ακαδηµα κά Μαθήµατα. ιαδικτυακές εφαρµογές ιαχείριση µαθηµάτων µε ηλεκτρονικό τρόπο Πρόγραµµα σπουδών διδακτική ενότητα

Διαδικτυακές Εφαρμογές Ενότητα 7: Προσπέλαση ΒΔ με το JDBC

Εφαρµογές διαδικτύου µε PHP

Διαδικτυακές Εφαρμογές Ενότητα 5: Servlets και JSPs

Δομή και Στόχοι του Μαθήματος - Εισαγωγή

Εφαρµογές WebGIS Open Source

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

PHP 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Πύλη Φαρμακευτικών Υπηρεσιών Υπουργείου Υγείας Κύπρου. System Architecture Overview

Τεχνολογίες Διαδικτύου. Server Side Scripting I PHP

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

ΤΕΙ ΚΑΒΑΛΑΣ Σχολή Τεχνολογικών Εφαρμογών Τμήμα Βιομηχανικής Πληροφορικής

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet.

Υλοποίηση διαδικτυακού τόπου για τη δημοσίευση επιστημονικών εγγράφων

Τεχνολογίες Παγκόσμιου Ιστού. 1η διάλεξη

Σχεδιασμός του Ολοκληρωμένου Συστήματος Ψηφιακής Βιβλιοθήκης του Πανεπιστημίου Αθηνών

A J A X AJAX Γιάννης Αρβανιτάκης

ΕΛΑΧΙΣΤΕΣ ΑΠΑΙΤΗΣΕΙΣ ΕΞΟΠΛΙΣΜΟΥ ΕΠΙΚΟΙΝΩΝΙΑ... 23

Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης

Don t hire us if you want average. We only do exceptional.

Java & Java EE 3o Μέρος: Διασφάλιση ασφάλειας σε εφαρμογές Java Enterprise Edition. Κακαρόντζας Γεώργιος

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Απαντήστε στις παρακάτω ερωτήσεις πολλαπλής επιλογής (μόνο μία ερώτηση είναι σωστή):

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

Υπηρεσία φωνητικής υποστήριξης των ιστοτόπων της ΕΡΤ Α.Ε.

Aρχές Σπονδυλωτού Προγραµµατισµού σε Kατανεµηµένα Συστήµατα. Kεφάλαιο εκαέξη - Συναρµολόγηση Συστατικών

Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP)

Transcript:

Αρχιτεκτονική προηγµένων web εφαρµογών Σαράντης Πασκαλής <paskalis@di.uoa.gr> Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 1

Προβλήµατα CGI, SSI CGI: Απόδοση Έναρξη νέας διαδικασίας για εκτέλεση (2 διαδικασιών σε περίπτωση διερµηνευόµενης γλώσσας, π.χ. perl). Κοινές διαδικασίες αρχικοποίησης πρέπει να εκτελούνται κάθε φορά. SSI: Παρόµοια προβλήµατα όταν χρησιµοποιεί CGI. Επιπλέον επεξεργασία για την ανάλυση SSI σελίδων. Κίνδυνος ασφάλειας χωρίς λεπτοµερείς ρυθµίσεις. Μη κλιµακώσιµο και µη επαναχρησιµοποιήσιµο. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 2

Εγγενή APIs NSAPI, ISAPI (Netscape, Microsoft) Μηχανισµοί που επιτρέπουν την απευθείας πρόσβαση στο API του server. Χρήση βελτιστοποιηµένου κώδικα για τις συγκεκριµένες εργασίες. εν υπάρχουν προτυποποίηση, είναι διαφορετικές προσεγγίσεις, άρα δεν είναι δυνατό να δηµιουργηθούν φορητές εφαρµογές. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 3

FastCGI Προσπάθεια συνδυασµού φορητότητας CGI µε αποδοτικότητα εγγενών APIs. Επιτρέπει στις διεργασίες CGI να παραµένουν «ζωντανές» και µετά την εξυπηρέτηση µιας αίτησης. Απαιτείται η δηµιουργία τµήµατος (module) στο server για την λειτουργικότητα FastCGI και την επικοινωνία µε το server. H προτυποποίηση FastCGI δεν πρόλαβε να εξελιχθεί και να δηµιουργηθούν τα κατάλληλα modules για τους δηµοφιλείς servers. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 4

Επεξεργασία µορφότυπων (Template Processing) Προσέγγιση που στοχεύει στην απλούστευση της δηµιουργίας δυναµικού περιεχοµένου. Templates: HTML σελίδες µε επιπρόσθετες ετικέτες (tags), που προδιαγράφουν µεθόδους για δυναµική εισαγωγή παραγόµενου περιεχοµένου από εξωτερικές πηγές. ηµοφιλή προϊόντα: PHP, Allaire/Macromedia Cold Fusion, Microsoft ASP. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 5

Παραδείγµατα PHP <?php echo 'Hello, World!';?> <?php //statements here?> regular html here <? //more php statements?> Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 6

Παράδειγµα ASP <html> <body> <% %> response.write("hello World!") </body> </html> Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 7

Παράδειγµα Cold Fusion <CFQUERY NAME= query1 DATASOURCE= oracle...> SELECT id, columnx, columny, columnz FROM TABLE1 WHERE id = #substitution-parameter# </CFQUERY> <CFIF query1.recordcound GT 0> <TABLE> <CFOUTPUT QUERY= query1 > <TR> <TD>#columnX#</TD> <TD>#columnΥ#</TD> <TD>#columnΖ#</TD> </TR> </CFOUTPUT> </TABLE> </CFIF> Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 8

Επεξεργασία µορφότυπων (Template Processing) Βελτιωµένη τεχνική SSI. SSI απλές εργασίες. template processing σύνθετες εργασίες υποβολή ερωτήσεων σε βάσεις δεδοµένων επαναληπτική επεξεργασία (while, for loops) υποθετική επεξεργασία (δηλώσεις if) Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 9

Επεξεργασία µορφότυπων (Template Processing) Πλεονέκτηµα: Είναι διαχειρίσιµες οι σελίδες από σχεδιαστές µε υπόβαθρο σε HTML και γραφικά, αλλά όχι προγραµµατισµό. Η χρήση επιπλέον ετικετών είναι απλούστερη από γνώση προγραµµατισµού. Πρόβληµα: Όσο πιο προηγµένες είναι αυτές οι τεχνικές, τόσο περισσότερο προσοµοιάζουν σε γλώσσες προγραµµατισµού η επιθυµητή απλότητα δεν επιτυγχάνεται. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 10

ιαχωρισµός Περιεχοµένου και Παρουσίασης Περιεχόµενο: επεξεργασία αναγκαία για την ανάκτηση περιεχοµένου Παρουσίαση: παράµετροι σχεδιασµού για την παρουσίαση Η µίξη τους σε ένα τµήµα κώδικα κάνει δυσκολότερη τη συντήρηση του (προγραµµατιστής; σχεδιαστής;) Ιδανικά: προγραµµατιστές να διαχειρίζονται την επεξεργασία για περιεχόµενο, και οι σχεδιαστές την παρουσίαση. Model-View-Controller σχεδιασµός. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 11

Servlets API βασισµένο στην τεχνολογία Java. Φορητές εφαρµογές µεταξύ διαφορετικών λειτουργικών συστηµάτων και πλατφόρµας. Χρησιµοποιεί επαναχρησιµοποιήσιµα και µόνιµα server modules (όπως το FastCGI). Το API είναι φορητό µεταξύ servers, λειτουργικων συστηµάτων, πλατφόρµας υλικού (αντίθετα µε το FastCGI). Τα servlets εκτελούνται πανοµοιότυπα σε οποιοδήποτε περιβάλλον παρέχει συµβατό servlet runner. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 12

Servlets εν απαιτείται γνώση APIs υποκείµενων servers. Η διεπαφή µε τους servers είναι ευθύνη των servlet runners. servlet runner: περιλαµβάνει JVM, επικοινωνεί µε HTTP servers απευθείας µέσω JNI τρέχοντας αυτόνοµα και «ακούγοντας» για προωθηµένες αιτήσεις από servers. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 13

Java Server Pages (JSP) Αρχικά: template processing µε servlets. Σήµερα: οι επεξεργαστές JSP παίρνουν JSP σελίδες, τις µεταφράζουν σε servlets και στη συνέχεια σε Java bytecode. Ουσιαστικά το JSP είναι προεπεξεργαστής για servlets. Αποτέλεσµα: µεταγλωττισµένα modules που εκτελούνται γρηγορότερα από διερµηνευόµενα. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 14

Java Server Pages (JSP) Οι εντολές JSP είναι ετικέτες XML, συνδυασµένες µε τµήµατα κώδικα Java. Ο συνδυασµός κώδικα και ετικετών εκφράζει την υπηρεσία που παρέχει το τελικό αποτέλεσµα. εν απαιτείται όλη η λειτουργικότητα να βρίσκεται σε JSP. Παρόµοια λογική µε SSI: διαφοροποιείται η παρουσίαση από την υπηρεσία, υποστηρίζεται επαναχρησιµοποιήσιµος σχεδιασµός. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 15

Java Server Pages (JSP) Γενικότερης χρήσης από servlets. Αποδοτικότερη και µη επικίνδυνη λύση σε σχέση µε SSI. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 16

Μελλοντικές Κατευθύνσεις Επιπλέον αποδέσµευση παρουσίασης και υπηρεσίας. Model-View-Controller σχεδιασµός model το λογικό µοντέλο της εφαρµογής view η παρουσίαση controller η οντότητα που ελέγχει τις αλληλεπιδράσεις µεταξύ των διαφορετικών τµηµάτων. Ευελιξία: π.χ Αλλάζει η παρουσίαση, χωρίς αλλαγή των άλλων τµηµάτων. Struts Application Framework Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 17

Μελέτες σύγκρισης (1) Titchkosky, L., Arlitt, M., and Williamson, C. A performance comparison of dynamic Web technologies. SIGMETRICS Perform. Eval.Rev. 31, 3 (Dec. 2003), 2-11. Η δυναµική παροχή υπηρεσιών υποβιβάζει κατά 8 φορές την απόδοση από πρόσβαση σε βάσεις δεδοµένων επεξεργασία δυναµικού περιεχοµένου Κάθε τεχνολογία έχει τα αδύνατα σηµεία της PHP: καλή για µικρές δυναµικές αιτήσεις, προβληµατική για µεγαλύτερες Java based (jetty, resin, tomcat): ακατάλληλη για στατικό περιεχόµενο, καλή για δυναµικό Γενικά: οι τεχνολογίες Java αποδίδουν καλύτερα από Perl/PHP. Η απόδοση για µερικές τεχνολογίες είναι απρόβλεπτη σε µεγάλο φόρτο. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 18

Μελέτες σύγκρισης (2) V. Apte,T. Hansen, and P. Reeser. Performance Comparison of Dynamic Web Platforms. Computer Communications 26(8), May 2003. Σε πολύπλοκες επεξεργαστικά εφαρµογές εµφανίζονται προβλήµατα της τεχνολογίας Java. Σε απλούστερες επεξεργαστικά εφαρµογές, οι τεχνολογίες Java κλιµακώνονται πολύ αποτελεσµατικότερα. Η αποδοτικότερη τεχνολογία ήταν ο συνδυασµός FastCGI/C++. Η χρήση servlets αντί για JSP υποβάθµιζε την απόδοση. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 19

Μελέτες σύγκρισης (3) G. Gousios, and D. Spinellis. A comparison of portable dynamic web content technologies for the apache web server. In Proceedings of the 3rd International System Administration and Networking Conference SANE 2002, pages 103 119, May 2002. FastCGI: η αποδοτικότερη τεχνολογία PHP: εν κλιµακώνεται σωστά (οι χρόνοι απόκρισης έχουν µεγάλη διασπορά) servlets: Πιο αργή γενικά, αλλά µε αναµενόµενους χρόνους απόκρισης. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών 20