koslibpro Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Καλησπερα, η ερωτηση μου και οι αποριες μου περι αυτου ειναι για ακαδημαικους λογους κυριως. Εστω οτι εχουμε εναν server,θεωρητικα απεριοριστων δυνατοτητων. Εστω επισης οτι τρεχουμε εκει πανω ενα service οπως το webs.com ή το shopify.com οπου ο καθε χρηστης μπορει να αξιοποιησει το service που προσφερει η καθε σελιδα και να το προβαλει χρησιμοποιωντας το δικο του domain,χωρις φυσικα ο ιδιος να μπλεκεται με servers,storage κλπ. Απλα βαζει το domain του και διαμορφωνει το front end της σελιδας του. Οποτε,στην εφαρμογη μας κι εμεις εχουμε ας πουμε την δυνατοτητα αυτη,δηλαδη οταν ο χρηστης μας χρησιμοποιει το service μας,εχει την δυνατοτητα να το προβαλει στο δικο του domain. Για να μιλαμε πιο συγκεκριμενα,εστω οτι εχουμε το shopify,οποτε ο καθε χρηστης μας εχει το eshop του με το domain το δικο του. Αυτο,τεχνικα πως υλοποιειται? Δηλαδη,δημιουργειται στον apache για καθε χρηστη ενας VirtualHost? Αυτο μου φαινεται αδυνατον,επειδη οκ στους 20 χρηστες θα ειναι ενταξει,ομως στους 10.000 πχ χρηστες δεν θα ζοριζεται πολυ ο apache? Με αλλα λογια,οταν εγω παω στο shopify και φτιαχνω το δικο μου e-shop και το βαζω να εμφανιζεται στο domain μου,τι γινεται απο πισω,τεχνικα πως υλοποιειται αυτο? Ο,τι links κλπ εχετε που θα μπορουσαν να μου φανουν χρησιμα,ευπροσδεκτα. Ευχαριστω εκ των προτερων για τις απαντησεις
parsifal Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Κάνεις μία υπόθεση εργασίας, αλλά παίρνεις ως δεδομένο ότι πρέπει μία τέτοια υπηρεσία σώνει και καλά να παρέχεται από ένα και μόνο φυσικό μηχάνημα σε έκταση εξωπραγματικά μεγάλη (10.000 accounts σε ένα μηχάνημα). imho, δεν ισχύει κάτι τέτοιο απαραίτητα στον πραγματικό κόσμο και δε μπορείς να καταλήξεις σε χρήσιμα συμπεράσματα ξεκινώντας με την υπόθεση που έκανες...
koslibpro Δημοσ. 13 Ιουνίου 2013 Μέλος Δημοσ. 13 Ιουνίου 2013 ωραια,αν αυτο ειναι το προβλημα ας υποθεσουμε λοιπον οτι τρεχουμε πχ το service μας στο rackspace cloud και δεν εχουμε οικονομικους περιορισμους. το "δεν ισχυει κατι τετοιο απαραιτητα στον πραγματικο κοσμο" που ακριβως αναφερεται? στο ενα μηχανημα με 10.000 χρηστες? αν ναι,οκ υποθετουμε οτι τρεχουμε στην rackspace,οπως ειπα παραπανω. Αλλιως,τι εννοεις ακριβως??
parsifal Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Αυτό ακριβώς εννοούσα, με έπιασες. Εν ολίγοις, απάντησα (εμμέσως) στο ένα από τα δύο ερωτήματά σου. 1ο ερώτημα: Δηλαδη,δημιουργειται στον apache για καθε χρηστη ενας VirtualHost? Αυτο μου φαινεται αδυνατον,επειδη οκ στους 20 χρηστες θα ειναι ενταξει,ομως στους 10.000 πχ χρηστες δεν θα ζοριζεται πολυ ο apache? 2ο ερώτημα: Με αλλα λογια,οταν εγω παω στο shopify και φτιαχνω το δικο μου e-shop και το βαζω να εμφανιζεται στο domain μου,τι γινεται απο πισω,τεχνικα πως υλοποιειται αυτο? το οποίο μου φαίνεται ανεξάρτητο του 1ου και βρίσκω τη συνεπαγωγή που υποννοείται από το «με άλλα λόγια» να μη στέκει και πολύ!
koslibpro Δημοσ. 13 Ιουνίου 2013 Μέλος Δημοσ. 13 Ιουνίου 2013 Θελεις δηλαδη να πεις οτι ετσι γινεται? Δηλαδη στο shopify οπως λεμε,οταν φτιαχνω ενα eshop και βαζω το domain μου,δημιουργειται ενα ακομη VirtualHost record στο apache config τους,το οποιο τρεχει σε καποιο cloud platform οποτε δεν υπαρχει θεμα αποδοσης του apache?Για το δευτερο ερωτημα μου,οκ ας πουμε οτι ειναι ξεχωριστο και δεν συνεπαγεται οπως λες. Πως υλοποιειται λοιπον αυτο απο πισω?τι γινεται οταν εγω προσθετω το domain μου και στηνω το eshop μου??
parsifal Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Ακόμη κι αν δεν χρησιμοποιείται ο Apache συγκεκριμένα, σίγουρα θα χρησιμοποιείται κάποιος web server(s) που να διαθέτει feature αντίστοιχο των Name-based Virtual Hosts: http://httpd.apache.org/docs/2.2/vhosts/name-based.html Για το τί συμβαίνει από κάτω απ' το καπώ όταν εσύ δηλώνεις ότι θες να χρηαιμοποιήσεις το δικό σου domain name: δε νομίζω πως είναι κάτι ιδιαίτερα challenging. Πώς σου φαίνεται π.χ. το σενάριο ενός CLI executable/script που πυροδοτείται όταν κάνεις τη σχετικη αλλαγή στο account σου και το οποίο πειράζει τα config files του Apache για να προσθεσει το σχετικό entry; Δεν υποστηρίζω ότι έτσι γίνεται απαραίτητα...
koslibpro Δημοσ. 13 Ιουνίου 2013 Μέλος Δημοσ. 13 Ιουνίου 2013 Για το τί συμβαίνει από κάτω απ' το καπώ όταν εσύ δηλώνεις ότι θες να χρηαιμοποιήσεις το δικό σου domain name: δε νομίζω πως είναι κάτι ιδιαίτερα challenging. Πώς σου φαίνεται π.χ. το σενάριο ενός CLI executable/script που πυροδοτείται όταν κάνεις τη σχετικη αλλαγή στο account σου και το οποίο πειράζει τα config files του Apache για να προσθεσει το σχετικό entry; Δεν υποστηρίζω ότι έτσι γίνεται απαραίτητα... Αρχισα ηδη να σκαλιζω λιγο το link που εδωσες. για το αλλο που ειπες:δηλαδη απλα προστιθεται το domain entry (πχ με virtualhost στον apache) στο config του web server? Ομως δεν υπαρχει καποιο οριο? Πχ ο apache θα ανταποκρινεται το ιδιο καλα σε 100 domains και το ιδιο σε 10.000-50.000 domains? ή ειναι αποκλειστικα θεμα πορων αυτο? thanks για τις μεχρι τωρα πληροφοριες!! υγ:βαλε ενα "l" στο link σου,να το κανεις .html και οχι .htm γιατι ετσι δεν ανοιγει αμεσως.
parsifal Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 για το αλλο που ειπες:δηλαδη απλα προστιθεται το domain entry (πχ με virtualhost στον apache) στο config του web server? Ομως δεν υπαρχει καποιο οριο? Πχ ο apache θα ανταποκρινεται το ιδιο καλα σε 100 domains και το ιδιο σε 10.000-50.000 domains? ή ειναι αποκλειστικα θεμα πορων αυτο? Στο computing, θέμα πόρων είναι όλα στο φινάλε! Αλλά δεν είμαι σίγουρος ότι έχω καταλάβει ακριβώς την ερώτησή σου: επικεντρώνεις στο αν ο Apache (ή ο οποιοσδήποτε άλλος webserver) μπορεί να διαχειριστεί πολλές χιλιάδες εγγραφές Virtual Hosts στα configuration files του και όχι στο αν μπορεί να εξυπηρετήσει (σερβίρει τα αρχεία από) τα ισάριθμα websites; Υποπτεύομαι ότι ένας webserver θα «κολώσει» πρώτα στο δεύτερο σημείο πολύ πριν να εξαντλήσει το πρώτο. Επιμένω πως το όλο θέμα είναι λίγο moot: σε τέτοιας έκτασης projects όπως αυτά που ενδεικτικά ανέφερες στο πρώτο σου post, χωρίς εμπλοκή distributed computing, τεχνικών load balancing και (ίσως, αλλά όχι απαραίτητα) cloud infrastructure, δεν πας πουθενά! Κοινώς, δε νομίζω πως υπάρχει ένα μοναδικό Apache process που να εξυπηρετεί δεκάδες ή εκατοντάδες χιλιάδες websites / virtual hosts. ΥΓ: Να κι ένα ενδιαφέρον άρθρο από Rackspace που ανέφερες πιο πάνω: http://www.rackspace.com/knowledge_center/article/simple-load-balancing-with-apache
koslibpro Δημοσ. 13 Ιουνίου 2013 Μέλος Δημοσ. 13 Ιουνίου 2013 Μαλιστα. Αρα με το σωστο και καταλληλο Load balancing και την απαραιτητη υποδομη απο πισω,ο apache (ή οποιοσδηποτε αλλος server) ανταποκρινεται μια χαρα και στο πρωτο μερος (με τα domains) και στο δευτερο (με το να σερβιρει τα αρχεια απο τοσα websites). Ευχαριστω για τις πληροφοριες
Hik Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Σε ένα φυσιολογικό περιβάλλον η υπόθεση των 10.000 websites με αντίστοιχα virtual host entries, όπως σωστά σου ανέφερε και ο parsifal, είναι αρκετά υποθετικό σενάριο. Για τα webs.com ή shopify.com που αναφέρεις καταρχήν πρέπει να σκεφτείς ότι δεν μιλάμε για 10.000 διαφορετικές εφαρμογές, αλλά μία εφαρμογή που εξυπηρετεί 10.000 διαφορετικά domain. Άρα πρακτικά 1 είναι το website και δεν χρειάζεται καν virtual hosts. Ότι request έρχεται στην αντίστοιχη IP του server εξυπηρετείται από 1 εφαρμογή, που αυτή αποφασίζει το ποιο layout/σελίδα/κατάστημα θα εμφανίσει ανάλογα με το domain. Από εκεί και πέρα ακόμα και τη ακραία περίπτωση που όντως θες να έχεις 10.000 virtual hosts σε ένα server το πρόβλημα δεν νομίζω ότι θα είναι στον apache, αλλά σε εσένα και στο χρόνο που θα χρειάζεσαι για τη διαχείρισή τους**. Για αυτό το λόγο δεν είναι απαραίτητο ότι τα virtual hosts ορίζονται σε αρχεία. Μπορεί να είναι σε κάποια DB π.χ. βλέπε https://code.google.com/p/dbd-modules/wiki/mod_vhost_dbd ** Στη πραγματικότητα τεχνικό ζήτημα μπορεί να δημιουργηθεί αν κρατάς διαφορετικό log για κάθε virtual host λόγω limit των file descriptors του λειτουργικού. Κάθε log που διαχειρίζεται ο apache το κρατάει "ανοιχτό" για να γράφει συνεχώς και όλα τα unixοειδή έχουν ένα limit ανά process. Περισσότερα μπορείς να διαβάσεις στο http://httpd.apache.org/docs/current/vhosts/fd-limits.html 1
Maarks Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Σε ένα φυσιολογικό περιβάλλον η υπόθεση των 10.000 websites με αντίστοιχα virtual host entries, όπως σωστά σου ανέφερε και ο parsifal, είναι αρκετά υποθετικό σενάριο. Για τα webs.com ή shopify.com που αναφέρεις καταρχήν πρέπει να σκεφτείς ότι δεν μιλάμε για 10.000 διαφορετικές εφαρμογές, αλλά μία εφαρμογή που εξυπηρετεί 10.000 διαφορετικά domain. Άρα πρακτικά 1 είναι το website και δεν χρειάζεται καν virtual hosts. Ότι request έρχεται στην αντίστοιχη IP του server εξυπηρετείται από 1 εφαρμογή, που αυτή αποφασίζει το ποιο layout/σελίδα/κατάστημα θα εμφανίσει ανάλογα με το domain. Από εκεί και πέρα ακόμα και τη ακραία περίπτωση που όντως θες να έχεις 10.000 virtual hosts σε ένα server το πρόβλημα δεν νομίζω ότι θα είναι στον apache, αλλά σε εσένα και στο χρόνο που θα χρειάζεσαι για τη διαχείρισή τους**. Για αυτό το λόγο δεν είναι απαραίτητο ότι τα virtual hosts ορίζονται σε αρχεία. Μπορεί να είναι σε κάποια DB π.χ. βλέπε https://code.google.com/p/dbd-modules/wiki/mod_vhost_dbd ** Στη πραγματικότητα τεχνικό ζήτημα μπορεί να δημιουργηθεί αν κρατάς διαφορετικό log για κάθε virtual host λόγω limit των file descriptors του λειτουργικού. Κάθε log που διαχειρίζεται ο apache το κρατάει "ανοιχτό" για να γράφει συνεχώς και όλα τα unixοειδή έχουν ένα limit ανά process. Περισσότερα μπορείς να διαβάσεις στο http://httpd.apache.org/docs/current/vhosts/fd-limits.html Στο προβλημα του koslibpro,αν δεν προσθετει με virtual hosts τα domains,πως αλλιως να το κανει? προστιθοντας ενα server alias? ή αναγκαστικα με κατι σαν αυτο που παρεθεσες,δηλαδη πχ με DB?
Hik Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Στο προβλημα του koslibpro,αν δεν προσθετει με virtual hosts τα domains,πως αλλιως να το κανει? προστιθοντας ενα server alias? ή αναγκαστικα με κατι σαν αυτο που παρεθεσες,δηλαδη πχ με DB? Μιλάμε για τη περίπτωση που έχουμε μια εφαρμογή που εξυπηρετεί 10.000 domains ή για τη ακραία περίπτωση των 10.000 διαφορετικών sites σε ένα server; Στη πρώτη περίπτωση όπως ανέφερα και παραπάνω απλώς αφαιρείς τα virtual hosts και τέλειωσες. Παίζεις σε επίπεδο εφαρμογής. Στη δεύτερη περίπτωση έχουμε θέμα. Με DB κάνεις πιο εύκολη διαχείριση αλλά προσθέτεις overhead 1 query για κάθε site και για κάθε request, που ίσως να μην είναι και τόσο καλό. To documentation του apache προτείνει επίσης σαν λύση mod_rewrite. Σου δείχνει πως μπορείς να έχεις αυτόματα δυναμικά virtual hosts ανάλογα με το domain που κάνει resolve στο server (βλέπε https://httpd.apache.org/docs/2.2/rewrite/vhosts.html)
Maarks Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 Μιλάμε για τη περίπτωση που έχουμε μια εφαρμογή που εξυπηρετεί 10.000 domains ή για τη ακραία περίπτωση των 10.000 διαφορετικών sites σε ένα server; Στη πρώτη περίπτωση όπως ανέφερα και παραπάνω απλώς αφαιρείς τα virtual hosts και τέλειωσες. Παίζεις σε επίπεδο εφαρμογής. Στη δεύτερη περίπτωση έχουμε θέμα. Με DB κάνεις πιο εύκολη διαχείριση αλλά προσθέτεις overhead 1 query για κάθε site και για κάθε request, που ίσως να μην είναι και τόσο καλό. To documentation του apache προτείνει επίσης σαν λύση mod_rewrite. Σου δείχνει πως μπορείς να έχεις αυτόματα δυναμικά virtual hosts ανάλογα με το domain που κάνει resolve στο server (βλέπε https://httpd.apache.org/docs/2.2/rewrite/vhosts.html) εγω προσωπικα αναφερομαι στην περιπτωση του οτι εχεις 1 website,σαν το shopify που λεει ο φιλος πιο πανω,και προσθετεις πανω του server names/aliases αποσο καταλαβα,αρα για την πρωτη περιπτωση που περιγραφεις μαλλον
koslibpro Δημοσ. 13 Ιουνίου 2013 Μέλος Δημοσ. 13 Ιουνίου 2013 to sum up:εγω εχω στο μυαλο μου μια εφαρμογη (1 website δηλαδη,σαν το webs.com ή το shopify.com) πανω στο οποιο μπορεις να προσθετεις domains.Αρα αυτο απλα γινεται προσθετοντας στο web server config ενα ServerName,χωρις καν VirtualHost. Αν καταλαβα κατι λαθος,διορθωστε με. Να'στε καλα για τις πληροφοριες σας παιδια!!
Maarks Δημοσ. 13 Ιουνίου 2013 Δημοσ. 13 Ιουνίου 2013 to sum up:εγω εχω στο μυαλο μου μια εφαρμογη (1 website δηλαδη,σαν το webs.com ή το shopify.com) πανω στο οποιο μπορεις να προσθετεις domains. Αρα αυτο απλα γινεται προσθετοντας στο web server config ενα ServerName,χωρις καν VirtualHost. Αν καταλαβα κατι λαθος,διορθωστε με. Να'στε καλα για τις πληροφοριες σας παιδια!! ναι αλλα πως γινεται αυτο? αν εχεις 1 virtual host ειναι <VirtualHost *> DocumentRoot /home/user1/public_html ServerName kati1.com </Virtualhost> αρα πως μεσα στο ιδιο virtual host θα μπουν πολλα domains?? Hik αυτο δεν εννοουσες εσυ?
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα