Eudoxus technical architecture (Greek)

811 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
811
On SlideShare
0
From Embeds
0
Number of Embeds
15
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Eudoxus technical architecture (Greek)

  1. 1. Τεχνική Αρχιτεκτονική Εύδοξου Βασικές Κατευθύνσεις Βασικοί σχεδιαστικοί στόχοι:  Υψηλή δυνατότητα κλιμάκωσης  Ελαστικότητα  Υψηλή διαθεσιμότητα  Δυνατότητα live application update  Κάποιοι συμβιβασμοί στα παραπάνω λόγω εξαιρετικά περιορισμένου χρόνου για σχεδιασμό και υλοποίηση:  Επιλέχθηκε RDBMS και όχι NoSQL storage  Δεν υπάρχει το redundancy που θα θέλαμε  Υπάρχει άνω όριο κλιμάκωσης το οποίο όμως είναι πολύ υψηλότερο από τον υφιστάμενο αριθμό φοιτητών
  2. 2. Τεχνική Αρχιτεκτονική Εύδοξου Βασικά Ποιοτικά Χαρακτηριστικά Όσο το δυνατόν περισσότερη λειτουργικότητα στον browser – Ajax-based rich gui εφαρμογές Caching σε πολλαπλά επίπεδα:  Στον browser (web resources & στην εφαρμογή)  Web accellerator (μπροστά από app servers)  ORM layer (JPA / Hibernate) – app server  Second level caching – app server  Cache DB files in RAM – db server Stateless λογική (δεν υπάρχει http session) Cloud computing λογική στην υποδομή
  3. 3. Τεχνική Αρχιτεκτονική Εύδοξου Λογική Αρχιτεκτονική & Τεχνολογίες Υλοποίησης Βασικές δομικές μονάδες (100% FLOSS):  Web server (Apache): front-end, χειρίζεται SSL και σύνδεση Shibboleth. Επίσης, δεύτερος server (nginx) για εξυπηρέτηση μεγάλων στατικών αρχείων  Font end caching / web accellerator (Varnish): Caching των εφαρμογών (js, css, html) και των REST responses (όπου είναι εφικτό)  Application Servers (JBoss): Business logic της εφαρμογής – N workers (”ελαστικό” Ν)  Search / Indexing server (Solr)  Database server (PostgreSQL): διαχείριση και αποθήκευση δεδομένων.
  4. 4. Τεχνική Αρχιτεκτονική Εύδοξου Αρχιτεκτονικό Διάγραμμα AJAX client apps AJAX client apps Ευδοξου AJAX client appsΕυδοξου User Web Browser Ευδοξου https Apache & Varnish nginx Υποδομή Dynamic Varnish Cache Cloud Computing Συνοδευτικά worker pool Αρχεία βιβλίων Worker 1 Worker 2 Worker n (JBoss) (JBoss) (JBoss) High availability &Indexing / Search Performance storage Server DB Server (Solr) (PostgreSQL) index Eudoxus DB

×