Κατηγορία: Πληροφορική

Apache proxy με έλεγχο ταυτότητας σύνοψης

Με Steven Lloyd Watkin , Κυριακή 27 Μαρτίου, 2011 12.57 μμ

Αυτή η θέση θα σας γρήγορα δείξει πώς να δημιουργήσει proxying με βασικό έλεγχο ταυτότητας με χρήση apache .

Στην περίπτωσή μου Ήθελα να έχω μετάδοσης bit torrent πελάτης που διατίθενται στο διαδίκτυο έτσι θα μπορούσα να ελέγξετε την adminster torrent downloads και κατάσταση (όπως η τελευταία έκδοση fedora), όπως απαιτείται. Διαβίβαση ίδια τρέχει-πελάτη του σχετικά με τις λιμενικές 9091 από προεπιλογή. Αντί να ενοχλεί το άνοιγμα περισσότερων θύρες στο τείχος προστασίας μου και την προσθήκη του nessecary κανόνες προώθηση των θυρών εγώ αποφάσισα ότι θα έκανα ακριβώς το πληρεξούσιο κλήσεις μέσω προς μετάδοση μέσω της χρησιμοποίησης του apache mod_proxy .

Συνέχεια ανάγνωση "Apache πληρεξούσιο με το χωνέψει ταυτότητας» »

Zend-πλαίσιο: Render αν υπάρχει

Με Steven Lloyd Watkin , Κυριακή 12 Δεκ, 2010 16:19

Περίληψη

Αυτή είναι μια γρήγορη θέση για να συζητήσουν τη μάλλον απλή βοηθός σκοπό θα δημιουργηθεί για να αποδώσει το Zend-πλαίσιο στυλ αρχείο δείτε μόνο αν υπάρχει. Γενικά, ζητώντας τον κωδικό για να καταστήσει ένα αρχείο που δεν υπάρχει θα ρίξει μια εξαίρεση. Συνεπώς, δημιούργησε ένα περιτύλιγμα κατά την Zend_View:: καθιστούν () μέθοδο, η οποία προσδιορίζεται εάν το αρχείο υπάρχει και αν ναι καθιστά, αλλιώς επιστρέφει απλώς ένα κενό string.
Συνέχεια ανάγνωση "Zend-πλαίσιο: Render αν υπάρχει" »

Zend Certified Engineer (ZCE) 5.3

Με Steven Lloyd Watkin , Πέμπτη 30 Σεπ, 2010 21:00

Με την επίσημη κυκλοφορία του Zend Certified Engineer (ZCE) πρόγραμμα για 5,3 σκέφτηκα ότι θα δώσει εντύπωση μου γρήγορα από ό, τι σκέφτηκα τις εξετάσεις.

Ένα μικρό ιστορικό για τον εαυτό μου: για πρώτη φορά στον PHP περίπου 7 χρόνια και έχει εργαστεί επαγγελματικά σε PHP από το 2006. Εγώ σήμερα εργάζονται για μια συναρπαστική εκκίνησης ονομάζεται Brightpearl εδρεύει στο Μπρίστολ, Ηνωμένο Βασίλειο , που παράγουν ολοκληρωμένα συστήματα CRM, λογιστικής, και το λογισμικό ηλεκτρονικού εμπορίου. Δεν έχω λάβει προηγουμένως κανένα από τα προηγούμενα προσόντα ZCE. Εγώ σήμερα αναπτυχθεί στο 5.2.X σειρά και δεν έχουν χρησιμοποιήσει πραγματικά καμία από τις ειδικές 5,3 χαρακτηριστικά (είμαι σε αναμονή για Zend-πλαίσιο 2 και Δόγμα 2) σε αναπτυξιακά προγράμματα μου.
Συνέχεια ανάγνωση "Zend Certified Engineer (ZCE) 5.3 '»

Zend πλαισίου ανά Ενότητα Ρυθμίσεις Διάταξη - Παρακολούθηση

Με Steven Lloyd Watkin , Τρίτη 16 του Φλεβάρη 2010 20:48

Ως συνέχεια στην προηγούμενη θέση μου σχετικά με ανά μονάδα με βάση τις ρυθμίσεις διάταξης για την Zend-πλαίσιο , έχω ενημερωθεί ο κώδικας να απαιτεί λιγότερη ρύθμιση, στη συνέχεια, πριν από την (όχι ότι θα απαιτούσε περισσότερο ότι σε λίγες γραμμές σ διαμόρφωση αίτησή σας!).
Συνέχεια ανάγνωση "Zend-πλαίσιο ανά ενότητα Διάταξη Ρυθμίσεις - Παρακολούθηση» »

Γραφείο Grid Computing που χρησιμοποιούν εικονικά περιβάλλοντα - Μέρος 4

Με Steven Lloyd Watkin , Παρασκευή 4 Δεκέμβρη 2009 23:59

Εισαγωγή

Δουλεύω σε μια εταιρεία όπου θα τρέξει πολλές θέσεις εργασίας batch επεξεργασία εκατομμύρια αρχεία με τα δεδομένα κάθε μέρα και να έχω σκεφτεί πρόσφατα για όλες τις μηχανές που κάθονται κάθε μέρα να μην κάνουμε τίποτα για αρκετές ώρες. Δεν θα ήταν καλό αν μπορούσαμε να χρησιμοποιήσουν τις μηχανές αυτές για να ενισχύσει την επεξεργαστική ισχύ των συστημάτων μας; Σε αυτό το σύνολο των άρθρων Πάω να εξετάσουμε τα πιθανά οφέλη από την απασχόληση ενός γραφείου πλέγματος χρησιμοποιώντας εικονικοποιημένων περιβάλλοντα.

Στο μέρος 3 δημιουργήσαμε μας μηχανή επεξεργασίας εικονικά και να δημιουργήσει τα παράθυρα μηχανήματα για να γίνει αδρανής απασχολουμένων εργαζομένων.

Τρέχοντας τις τελευταίες κώδικα

Αναπόφευκτα, μετά τη δημιουργία της επιχείρησής σας λογική των εργαζομένων θα αλλάξει, bugs θα βρεθεί πιο γρήγορα πιο αποδοτικό κώδικα θα παράγεται αφήνοντας έτσι τους εργαζόμενους σας καθίσαμε επεξεργασίας δεδομένων με τη χρήση παλαιών δύσοσμο κωδικό . Πώς λοιπόν μπορούμε να εξασφαλίσουμε ότι είμαστε χρησιμοποιείτε πάντα την πιο πρόσφατη και βελτιωμένη έκδοση της επεξεργασίας σεναρίων μας;

Υπάρχουν μερικές πολύ εύκολο απλοί τρόποι που θα μπορούσαμε να το κάνετε αυτό, το τέχνασμα, όμως, είναι η μείωση επεξεργαστική ισχύ και την κυκλοφορία του δικτύου για την επίτευξη αυτού. Ας ξεκινήσουμε με τις πιο απλές λύσεις και να βελτιωθεί αργά πάνω από μια-δυο επαναλήψεις.

Η πρώτη μέθοδος θα ήταν να απλά να συνδεθεί με τη δουλειά server μας ελέγχου (μέσω samba, FTP, ή κάτι παρόμοιο) και γκρεμίζουν την πιο πρόσφατη έκδοση του κώδικα. Δεν είναι πολύ αποτελεσματικό, αλλά θα κάνει τη δουλειά. Αφήνει να βελτιωθεί σε αυτό κάπως, πώς για τη δημιουργία ενός rsync σενάριο και χρησιμοποιώντας κάθε φορά αντ 'αυτού; Εναλλακτικά, τι γίνεται με τη θέση μας σενάριο αργότερο μεταποίηση σε ανατροπή ελέγξει έξω τον κώδικα αρχικά και στη συνέχεια, μόλις την ενημέρωση του κώδικα μας για κάθε διαδρομή ( ενημέρωση svn );

Στο τέλος θα μπορούσαμε να καταλήξουμε με ένα σενάριο bash (καλείται από το cron κάθε 10 λεπτά), το οποίο φαίνεται τόσο απλό όσο αυτό:

  #! / Bin / sh
 αν ps ax | grep-v grep | grep php > / dev / null
 συνέχεια
     echo "Εργασία είναι επί του παρόντος την επεξεργασία, την έξοδο"
 αλλού
     echo "Job δεν τρέχει, να αρχίσει τώρα»
     cd / path / to / εργασία / αντίγραφο
     svn ενημέρωση
     yourJobProcessingScript.php php
 fi 

Τώρα μπορούμε να είμαστε βέβαιοι ότι με κάθε κύκλο είμαστε τρέχει σίγουρα το πιο πρόσφατο κώδικα. Είμαστε επίτευξη αυτού, με την ενημέρωση βάσης κωδικό μας κάθε φορά που θα κάνουμε ένα τρέξιμο και τη μείωση της κίνησης του δικτύου από μόνο μεταφέροντας τις διαφορές αρχείο στο δίκτυό μας.

Στην εγκατάσταση επίδειξης μου, έκανα ακριβώς όπως παραπάνω. Subversion είχε εγκατασταθεί στον server επεξεργασίας δουλειά μου και τράβηξα απλά το πιο πρόσφατο κώδικα του υποκαταστήματος «εργαζόμενος» που χρησιμοποιούν «ενημέρωση svn». Πρόσθεσα επίσης μια ετικέτα αριθμό έκδοσης με την επεξεργασία σεναρίου μου που επέστρεψε στη βάση δεδομένων ως μέρος της επιστροφής αποτελεσμάτων. Με αυτό τον τρόπο θα μπορούσα να δω τον κωδικό μου ήταν να ενημερώνεται κάθε φορά που αντέγραψα κορμό μου στον κλάδο, δηλαδή εργαζόμενο που έτρεχα σίγουρα η τελευταία δέσμη ενεργειών μεταποίησης.

Χρησιμοποιώντας τα τελευταία στοιχεία

Εάν η επεξεργασία εργασία σας κάνει χρήση των πηγών στοιχείων, στη συνέχεια, σε κάποια στιγμή αυτά θα πρέπει να ενημερώνονται επίσης. Αν δεν έχετε κλήση πηγές δεδομένων σας σε ένα πολύ σπάνιο βάση θα πάμε να κατακλύσουν το δίκτυό σας με την κυκλοφορία το συντομότερο οι εργαζόμενοι σας αρχίσουν να προβάλλονται φέρνοντας τα πάντα σε ακινησία. Για λύση που μου αποφάσισε ότι θα ήθελα να προχωρήσουμε πηγές δεδομένων μου γύρω με VMs μου.

Κρατήστε είστε άλογα εκεί! Τι θα συμβεί εάν πηγές δεδομένων μου είναι τεράστια; Λοιπόν αυτό είναι πραγματικά μια περίπτωση πόσα δεδομένα μιλάμε; Μπορεί να είναι πιο αποδοτικό να εγκαταστήσει έναν ακόμη μεγαλύτερο σκληρό δίσκο σε κάθε μηχάνημα από το να αγοράσουν ένα επιπλέον server επεξεργασίας. Αυτό είναι ένα ζήτημα του προϋπολογισμού και είναι μέχρι την επιχείρηση να αποφασίζει. Είναι ίσως ότι οι πηγές των δεδομένων σας είναι τόσο μεγάλες που ανέφικτο του μόνο για να κρατήσει το ποσό των στοιχείων στις μηχανές των εργαζομένων σας. Σε αυτή την περίπτωση, τι θα κάνατε; Καλά θα μπορούσαμε να εξετάσουμε καλώντας έναν τοπικό διακομιστή δεδομένων, αλλά αυτό μπορεί να προκαλέσει προβλήματα με το δίκτυο. Σε αυτήν την περίπτωση ένα σύστημα πλέγματος, όπως αυτό μπορεί να γίνει ρεαλιστικό να συμπεριλάβετε στο περιβάλλον του γραφείου σας. Μπορεί επίσης να είναι ότι μπορείτε να εξετάσετε εναλλακτικές στρατηγικές τρέξιμο, για παράδειγμα, καλώντας μόνο τους εργαζόμενους σας μεταξύ 20:00 και έξι κάθε νύχτα και / ή την πηγή αιτήματα στοιχείων throttling.

Προχωρώντας ας πούμε δεδομένα ποσό μας πηγές για 100GB δεδομένων. Λοιπόν ναι αυτό είναι αρκετά ένα κομμάτι των δεδομένων να μετακινούνται στο δίκτυο σε μια ενημέρωση. Πώς θα διασφαλίσουμε ότι έχουμε την πιο πρόσφατη αντίγραφο των δεδομένων σε αυτή την περίπτωση; Rsync είναι μια δυνατότητα, αλλά προσωπικά πιστεύω ότι με το τρέξιμο τελευταία πηγή δεδομένων σας στον server επεξεργασία δουλειά σας και αυτήν τη ρύθμιση ως ένα master στην αντιγραφή (με ένα ωραίο καιρό ημερολόγιο bin) μπορεί να είναι ο τρόπος να πάει:

αντιγραφή Με τον καθορισμό κάθε ένα από τους εργαζομένους σας ως ένας σκλάβος για τις ενημερωμένες εκδόσεις server εργασία ελέγχου στις πηγές των δεδομένων σας θα κατηφορίσουν ωραία για τους εργαζομένους σας χωρίς μια τεράστια αύξηση της δραστηριότητας του δικτύου (δηλαδή αν δεν εκτελέσετε μια τεράστια ενημέρωση των δεδομένων και όλων των εργαζομένων σας κλωτσιά στο με τη μία). Αυτό έχει πλεονεκτήματα σε σχέση με το rsync στο ότι δεν θα πάρετε μια μεγάλη παύση πριν από κάθε εργασία? Ως τις ενημερώσεις της βάσης δεδομένων, η MySQL daemon στον εργαζόμενο θα σας ενημερώνει συνεχώς τα δεδομένα της, ενώ η επεξεργασία συνεχίζεται.

Αυτό είναι το πώς θα ρυθμίσετε το διακομιστή επίδειξης μου. Για να ρυθμίσετε αναπαραγωγή Ακολούθησα τον οδηγό για το mySQL site ( Εγκατάσταση αναπαραγωγή ) και μέσα σε 20 λεπτά είχα εργαζόμενος μου inital αναπαράγει τη δέσμη στοιχείων των θέσεων εργασίας τον έλεγχο των διακομιστών. Για κάθε επιπλέον εργαζόμενο τις ρυθμίσεις αντιγραφής και της διαδικασίας εργαστεί κάθε φορά, όταν η VM έχει αντιγραφεί.

Περίληψη

Σε αυτό το τμήμα του άρθρου έχουμε δει πόσο εύκολο και ανώδυνο είναι να κρατήσει την επεξεργασία κωδικό σας ενημερωμένο με using rsync ή subverion (SVN) για να κάνει τη δουλειά και τη μείωση της κυκλοφορίας του δικτύου, στην ίδια time. Συζητήσαμε επίσης πώς να διατηρούνται τα δεδομένα τις πληροφορίες σας πηγή up-to-ημερομηνία, επιτρέποντάς της να φθάσουν τους σε κάθε τους εργαζομένους σας. Έτσι περιοχή εξασφάλιση ότι θα διατηρηθεί η επαφή με επιχειρηματική λογική και τις πληροφορίες στο δίκτυο του γραφείου μας. Θα υπάρχουν προφανώς αμέτρητες εναλλακτικές λύσεις για την εκτέλεση αυτών των καθηκόντων, αλλά εδώ ήταν δύο απλά παραδείγματα για να δείξει πόσο εύκολο μια λύση είναι να έρθει κοντά.

Την επόμενη φορά

Στο τελευταίο μέρος αυτής της σειράς, που εύστοχα ονομάστηκε Μέρος 5 , θα συζητήσουμε την ανάπτυξη αυτού του συστήματος για. Θα συνοψίσω ό, τι έχει μάθει και τι έχω καταφέρει να δημιουργήσουν.

Γραφείο Grid Computing που χρησιμοποιούν εικονικά περιβάλλοντα - Μέρος 3

Με Steven Lloyd Watkin , Παρασκευή 4 Δεκέμβρη 2009 23:37

Εισαγωγή

Δουλεύω σε μια εταιρεία όπου θα τρέξει πολλές θέσεις εργασίας batch επεξεργασία εκατομμύρια αρχεία με τα δεδομένα κάθε μέρα και να έχω σκεφτεί πρόσφατα για όλες τις μηχανές που κάθονται κάθε μέρα να μην κάνουμε τίποτα για αρκετές ώρες. Δεν θα ήταν καλό αν μπορούσαμε να χρησιμοποιήσουν τις μηχανές αυτές για να ενισχύσει την επεξεργαστική ισχύ των συστημάτων μας; Σε αυτό το σύνολο των άρθρων Πάω να εξετάσουμε τα πιθανά οφέλη από την απασχόληση ενός γραφείου πλέγματος χρησιμοποιώντας εικονικοποιημένων περιβάλλοντα.

Στο μέρος 2, εξετάσαμε τις θέσεις εργασίας σε διακομιστή θα τρέξει, και πώς θέσεις εργασίας θα πρέπει να ρυθμιστεί ώστε να επιτευχθεί μεγαλύτερη ποσότητα επεξεργασίας, εξασφαλίζοντας ταυτόχρονα ότι κάθε θέση απασχόλησης που υποβάλλεται σε επεξεργασία χωρίς αποτύχει.

Ρύθμιση των εργαζομένων σας - ή Limp διακομιστή

Το επόμενο βήμα στη διαδικασία είναι να δημιουργούν εικονικές εργαζομένους σας. Γι 'αυτό είμαι πρόκειται να χρησιμοποιήσετε μια εγκατάσταση του CentOS που χρησιμοποιούν VirtualBox. Πάω να εγκαταστήσετε mySQL και PHP στον server, επίσης γνωστό ως λειτουργία σε έκτακτες περιπτώσεις (Li NUX, μ ySQL, P HP) Servera (μπορεί να έκανα αυτό το όνομα επάνω).

  • Εγκατάσταση VirtualBox στα παράθυρα μηχανή σας (ακολουθήστε τον σύνδεσμο)
  • Λήψη και εγκατάσταση του CentOS (τρέχουσα έκδοση 5.3) μέσα σε ένα εικονικό μηχάνημα που δημιουργήθηκε

Δεν υπάρχει κανένα σημείο να συνεχίσω σε αυτό υπάρχει πιθανότατα είναι 1.000 μεγάλη tutorials εκεί έξω (εντάξει, εδώ είναι ένα: Δημιουργία και Managing CentOS εικονικής μηχανής κάτω από το VirtualBox ). Το σημαντικό, αξίζει να επισημανθεί υποθέτω είναι ότι ζήτησα GridMachine μου μηχάνημα εικονικής.

Όσον αφορά τις επιλογές μου από τον πελάτη εικονικοποίησης και λειτουργικό σύστημα πάει, δεν υπάρχει μεγάλη επιτακτικός λόγος για κάθε επιλογή. Το VirtualBox είναι κάτι που μπορώ να χρησιμοποιήσω στον υπολογιστή στο σπίτι μου και υποστηρίζεται από τις τρεις μεγάλες λειτουργικά συστήματα. Επέλεξα CentOS ως της καλής σταθερό λειτουργικό σύστημα και θα το χρησιμοποιήσει για δικό του web server μου. Είμαι ένθερμος οπαδός της τα κατάλληλα εργαλεία για τη δουλειά (αν και είμαι εφαρμογή «χρησιμοποιούν τον ταχύτερο και ευκολότερο για σας» νοοτροπία εδώ), οπότε αν το λειτουργικό σύστημα X εκτελείται κωδικό σας πιο γρήγορα και πιο αποτελεσματικά τη χρήση ότι αντ 'αυτού:)

Είναι σημαντικό να βεβαιωθείτε ότι VM σας χρησιμοποιεί DHCP, διαφορετικά για κάθε νέα εικονική μηχανή θα πρέπει να ρυθμιστούν χωριστά η οποία είναι κάτι που δεν το χρησιμοποιούν want.By DHCP δεν χρειάζεται να διαμορφώσετε τις ρυθμίσεις δικτύου ξεχωριστά για τις μηχανές των εργαζομένων, DHCP θα το χέρι έξω ΕΠ για εσάς. Συνεπώς, μπορείτε να αντιγράψετε εικονική μηχανή σας σχετικά με το γραφείο χωρίς να ανησυχείτε για τη κάθε μία τους (αυτό βελτιώνει τη δυνατότητα κλιμάκωσης και μειώνει την διοίκηση των εργαζομένων).

Η διαδικασία θα πρέπει να αποσκοπούν στην επίτευξη θα ήταν να αποκτήσει μια νέα φυσική μηχανή, να εγκαταστήσετε το VirtualBox, και στη συνέχεια, λίγο πολύ αναπτύξετε την εικονική εικόνα χωρίς τίποτε άλλο. Θα ήταν ίσως συνετό να στήσετε όλους τους εργαζομένους σας σε διαφορετικό υποδίκτυο έτσι ώστε να μπορεί τουλάχιστον να δείτε πόσα μηχανήματα τρέχουν. Θα πρέπει επίσης να δημιουργήσουν μηχανές σας σε μια μακροχρόνια μίσθωση ή απεριόριστης μίσθωσης DHCP.

Πώς να τρέξει την απασχόληση του εργαζομένου

Αυτή είναι μια ενδιαφέρουσα περιοχή και υπάρχουν πολλές έγκυρες μέθοδοι για την επεξεργασία θέσεων εργασίας από τον εργαζόμενο. Εδώ θα συζητήσουμε μόνο τα δύο πιο προφανείς:

  • Διαρκώς τρέχει σενάριο: Μια δέσμη ενεργειών, είτε πρόκειται για ένα shell script, ή ένα PHP script εκτελείται μία φορά από τον εργαζόμενο και θα διαρκέσει ως μέρος ενός άπειρου βρόχου. Έχω έκπτωση αυτής της μεθόδου ως μια συντριβή του σεναρίου και, ενδεχομένως, των εργαζομένων σας θα σταματήσει να τρέχει χωρίς κάποιου είδους παρέμβαση.
  • Cron βασίζεται η εκτέλεση του script: κάθε X λεπτά ο δαίμονας cron ξεκινά μια κλήση στο script σας να πάρει τα πράγματα πηγαίνουν. Χωρίς κάποιο έλεγχο αυτό θα μπορούσε να οδηγήσει σε πολλά πολλά αντίγραφα του σεναρίου των εργαζομένων σας σε λειτουργία.

Η απόφασή μου ήταν να πάει με το cron το οποίο ξεκινά ένα shell script κάθε 10 minutes. shell script μου εκτελεί τα εξής καθήκοντα:

  1. Πάρτε μια λίστα διαδικασία και grep αυτό για 'php'. Αν δεν βρεθεί μετά συνεχίστε.
  2. Καλέστε τον κωδικό σας δουλειά, στην περίπτωσή μου αυτό θα ήταν κάτι PHP βασίζονται
  3. Εργαζόμενος σενάριο ολοκληρώνει το τρέξιμό της
  4. Έτοιμοι να πάμε ξανά στην επόμενη κατάλληλη πρόσκληση

σενάριο bash μου μοιάζει κάτι σαν το παρακάτω:

  #! / Bin / sh
 αν ps ax | grep-v grep | grep> PHP / dev / null
 συνέχεια
     echo "Εργασία είναι επί του παρόντος την επεξεργασία, την έξοδο"
 αλλού
     echo "Job δεν τρέχει, να αρχίσει τώρα»
     yourJobProcessingScript.php php
 fi 

Σημείωση: η ηχώ είναι σχεδόν εντελώς άσκοπο, αλλά μπορεί να βοηθήσει το επόμενο άτομα που έρχεται για να προσπαθήσει και να τα επεξεργαστείτε.

Εδώ ολοκληρώνεται η δημιουργία του εργαζομένου εικονική μηχανή, γρήγορο, απλό και εύκολο να αντιγράψετε σε κάθε νέο κομμάτι του υλικού που παραλαμβάνεται. «Εξυπνάδα» του συστήματος δικτύου πραγματικά δεν είναι προς το ορατό OS, όλοι του να κάνει με τον κώδικα που δημιουργήθηκε για τις θέσεις εργασίας της διαδικασίας, η διαμόρφωση θέσεων εργασίας, και να εξασφαλίσουν ότι η εργασία εκτελείται κατά περίπτωση (δηλαδή όταν το κράτος είναι σε αδράνεια ).

Ρύθμιση των Windows για να αρχικοποιήσετε Εργαζομένων

Ο πρώτος στόχος είναι να επεξεργαστεί την εντολή που απαιτείται για να τρέξει η εικονική μηχανή από τη γραμμή εντολών των Windows. Εάν έχετε εγκαταστήσει το VirtualBox στην προεπιλεγμένη θέση και έχετε το όνομα GridMachine εργαζομένου σας, τότε η εντολή που απαιτείται για να φορτώσει επάνω εργαζόμενος σας είναι:

  "C: \ Program Files \ Κυρ \ VirtualBox \ VBoxManage.exe" GridMachine startvm 

Ωστόσο, για να εκτελέσετε τη δέσμη ενεργειών σε μια «ακέφαλη», κατάσταση που πρέπει να χρησιμοποιήσετε:

  "C: \ Program Files \ Κυρ \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - vrdp = off 

Αυτό θα ξεκινήσει την εικονική μηχανή χωρίς το γραφικό περιβάλλον και θα του επιτρέψει να σώσει κατάσταση με χάρη. Το δεύτερο επιχείρημα σβήνει ΣΑΑ, ώστε να μην έρχεται σε σύγκρουση με τα παράθυρα ΠΑΑ, ή να σας δώσει ένα μήνυμα σχετικά με την ακρόαση στη θύρα 3389. Η εικονική μηχανή όνομα με κεφαλαία γράμματα!

Στη συνέχεια, θα χρειαστεί να ρυθμίσετε τα παράθυρα μέχρι το εναρκτήριο λάκτισμα VM εργαζόμενο μας αφού το μηχάνημα έχει μείνει αδρανής. Για να γίνει αυτό (για Windows XP), θα χρειαστεί να πάνε Έναρξη -> Όλα τα προγράμματα -> Accessories -> System Tools -> Προγραμματισμένες εργασίες, όπως παρακάτω:

προγραμματισμένες εργασίες

Στη συνέχεια κάντε κλικ στο "Add Scheduled Task" και ακολουθούνται από περιηγηθείτε για να προσθέσετε ένα προσαρμοσμένο πρόγραμμα. Πλοηγηθείτε στο script VBoxManage σας και κάντε κλικ στο ΟΚ. Χρονοδιάγραμμα εργασιών σας για οποιαδήποτε από τις επιλογές (θα το αλλάξετε αυτό σε ένα λεπτό) και να συνεχίσει. Μετά παρακάμπτοντας τα επόμενα παράθυρα στην οθόνη θα σας ρωτήσει που θέλετε να εκτελέσετε το έργο αυτό, θα πρότεινα είτε ως «διαχειριστής» ή τη δημιουργία ενός νέου προνομιακή χρήστη. Θυμηθείτε ότι δεν θέλουμε να παρεμβαίνουν με το πρότυπο λογαριασμό του προσωπικού για το μηχάνημα σε οποιοδήποτε σημείο. Κάντε κλικ στο επόμενο και να ελέγξετε δείχνουν προηγμένες επιλογές για το έργο αυτό.

Προς το τέλος του τρεξίματος textbox προσθήκη εγχόρδων «GridMachine startvm» μας και να διασφαλίσουμε ότι τρέχει μόνο όταν συνδεθεί έχει απομείνει unticked. Επισκεφθείτε το έργο χρονοδιάγραμμα επόμενο και να αλλάξετε το χρονοδιάγραμμα πτώση κάτω από την επιλογή «όταν είναι σε αδράνεια», επιλέξτε το χρονικό διάστημα που θα θέλατε η μηχανή να παραμένει αδρανής πριν προχωρήσουμε στην επόμενη καρτέλα.

Τέλος untick η επιλογή η οποία αναφέρει σταματήσει το έργο, αν έχει τρέξει Χ ποσό του χρόνου, αλλά κάνει μαρκάρετε την επιλογή να σταματήσουν το έργο, εφόσον το μηχάνημα δεν είναι πλέον αδρανής.

χρονοδιάγραμμα

Αυτό είναι, στη συνέχεια, για την εγκατάσταση υποδοχής παράθυρα!

Περίληψη

Στο τμήμα αυτό έχουμε δημιουργήσει μια εικονική μηχανή για να λειτουργήσει ως εργαζόμενος, καθώς και τον τρόπο με τον οποίο καλούμε και να εκτελούν τη δουλειά μας scripts επεξεργασίας (για τον εαυτό μου ένα PHP script). Από εδώ κοιτάξουμε πώς να δημιουργήσουν αντίγραφα μας από τα παράθυρα για να ξεκινήσει η εικονική μηχανή στο ακέφαλο αναμονής όταν ο υπολογιστής τίθεται σε αδράνεια, και να αποθηκεύσετε κατάσταση όταν ο χρήστης ξαναρχίσει τη χρήση του μηχανήματος. Ας ελπίσουμε ότι σε αυτό το σημείο που βλέπετε πόσο απλό είναι να δημιουργηθεί ένα τέτοιο σύστημα και είναι ο κνησμός να πάρετε κάποια πειράματα στον εαυτό σας πηγαίνει!

Την επόμενη φορά

Στο Μέρος 4 θα εξετάσουμε να χρησιμοποιεί εργαλεία για να διασφαλίσει ότι τρέχετε την πιο πρόσφατη έκδοση του και πηγές δεδομένων κώδικα, ώστε να λαμβάνονται τα αποτελέσματα είναι πάντα ενημερωμένο με τις τελευταίες πληροφορίες των επιχειρήσεων και τη λογική.

Γραφείο Grid Computing που χρησιμοποιούν εικονικά περιβάλλοντα - Μέρος 1

Με Steven Lloyd Watkin , Παρασκευή 4 Δεκέμβρη 2009 23:23

Εισαγωγή

Δουλεύω σε μια εταιρεία όπου θα τρέξει πολλές θέσεις εργασίας batch επεξεργασία εκατομμύρια αρχεία με τα δεδομένα κάθε μέρα και να έχω σκεφτεί πρόσφατα για όλες τις μηχανές που κάθονται κάθε μέρα να μην κάνουμε τίποτα για αρκετές ώρες. Δεν θα ήταν καλό αν μπορούσαμε να χρησιμοποιήσουν τις μηχανές αυτές για να ενισχύσει την επεξεργαστική ισχύ των συστημάτων μας; Σε αυτό το σύνολο των άρθρων Πάω να εξετάσουμε τα πιθανά οφέλη από την απασχόληση ενός γραφείου πλέγματος χρησιμοποιώντας εικονικοποιημένων περιβάλλοντα.

Ως PHP developer Πάω να χρησιμοποιούν εργαλεία που χρησιμοποιώ κάθε μέρα, δηλαδή το Linux, mySQL , PHP, το VirtualBox και το Subversion (SVN). Ωστόσο, ελπίζω ότι αυτός ο οδηγός θα προσαρμοστεί και σε άλλες γλώσσες και τεχνολογίες εξίσου καλά.

Η λύση που προσφέρει θα είναι πολύ χαλαρά με βάση το είδος της επεξεργασίας είχαμε ανάγκη να επιτευχθεί όμως αυτό δεν μπορεί να ισχύει σε όλο το άρθρο, όπως εγώ θα αλλάξει τα πράγματα για την απλότητα, ή για να παράγουν πιο ενδιαφέροντα σενάρια χρήσης.

Αυτές εικονικοποιημένων περιβάλλοντα θα τρέχει σε Windows μηχανήματα δεδομένου ότι αυτό είναι ό, τι η πλειοψηφία των γραφείων τρέχει. Η επεξεργασία ότι οι μηχανές γραφείου, δεν θα πρέπει να παρεμβαίνει το προσωπικό που χρησιμοποιούν τις μηχανές αυτές, θα πρέπει να απαιτούν όχι συντήρησης στο μηχάνημα, και να είναι εύκολα να αναπτυχθούν σε νέες μηχανές, όπως αυτές γίνουν διαθέσιμες. Επίσης, οι νέες εικονικές μηχανές δεν πρέπει να απαιτείται καμία επιπλέον ρυθμίσεις δεδομένου ότι αυτό μειώνει σημαντικά την επεκτασιμότητα και ευκολία κατά την οποία το δίκτυο μπορεί να επεκταθεί.

Γιατί να αναπτύσσετε έναν Grid Computing του Office;

Αρχικά μπορεί να σκέφτεστε, γιατί να μην χρησιμοποιούν μόνο έναν πόρο το cloud computing, όπως η πλατφόρμα EC2 της Amazon ; Καλά οι λόγοι μπορεί να είναι πολλές, όπως για παράδειγμα:

  • Δεν θα αναθέσει ορισμένα στοιχεία σε ένα περιβάλλον το cloud computing
  • Δεν μπορείτε να θέσει ορισμένα στοιχεία σε ένα περιβάλλον το cloud computing για νομικούς λόγους (π.χ. δεδομένα που εξέρχονται από τη χώρα), πιθανώς για νομικούς λόγους, π.χ. NHS εγγραφές.
  • Θέλετε να κρατήσετε μονάδων επεξεργασίας σας κοντά και να έχουν τον πλήρη έλεγχο του υλικού είναι πολύ
  • Δεν έχετε τα κεφάλαια για το σχέδιο για την εκτέλεση εμφανίσεων σύννεφο
  • Το γραφείο σας δεν διαθέτει σύνδεση στο Διαδίκτυο και συνεπώς της δεν είναι δυνατόν να χρησιμοποιήσει έναν πόρο σύννεφο
  • Δεν σας αρέσει η βροχή, τα σύννεφα βροχή υποδηλώνουν, ως εκ τούτου να σας κρατήσει μακριά

Είμαι βέβαιος ότι ο κατάλογος θα μπορούσε να συνεχιστεί, αλλά νομίζω ότι είναι αρκετό για τώρα.

Πλεονεκτήματα του Grid Computing του Office

Λοιπόν, ας κάνουμε κάποια μαθηματικά (και το αυθεντικό στυλ της φυσικής αφήνει να κάνει κάποια σαρωτικές υποθέσεις). Φανταστείτε ότι έχετε μεγάλη σωματώδης διακομιστή μεταποίησης εκτελεί 100 θέσεις εργασίας ανά ημέρα. Στο γραφείο σας, έχετε 50 μηχανές που είναι σε αδράνεια 16 ώρες την ημέρα, κάθε ένα από αυτά τα μηχανήματα είναι 10% τόσο ισχυρό όσο σωματώδης επεξεργασία σας κόβω. (Όλα τα αποτελέσματα εδώ στρογγυλοποιούνται να υποτιμούν την αύξηση των επιδόσεων).

Έτσι, 1 μηχανή * 10% * ισχύος 2 / 3 του χρόνου = 0,067 δηλ. 1 επεξεργασία στην επιφάνεια εργασίας σε χρόνο αδράνειας θα μπορούσαν διαδικασία 6 θέσεις πλήρους απασχόλησης ανά ημέρα.

Αν τώρα αυτή η κλίμακα μέχρι που παίρνει 15 ρελαντί υπολογιστές να επεξεργαστούν τόσες θέσεις εργασίας ανά ημέρα, όπως σας διακομιστή επεξεργασία κύρια κάνει.

Έτσι, στο γραφείο μας προσποιούνται των 50 μηχανές θα μπορούσαν να αυξήσουν τη δύναμή μας από την επεξεργασία 1 server έως και 4 servers πλήρη επεξεργασία, ή θα μπορούσαμε να είμαστε επεξεργασίας 400 θέσεις εργασίας ανά ημέρα αντί για 100.

Ανακοίνωση, για τα μη επένδυση σε νέο hardware της εταιρείας σας έχει μόλις αυξηθεί η μεταποίησή του ικανότητα παρτίδα 4 φορές! Δυνητικά θα πάμε να αυξηθεί η χρήση δύναμή σας, αλλά από περισσότερα περιβάλλοντα γραφείου Έχω πάει σε μηχανές είναι γενικά αριστερά στην διάρκεια της νύχτας έτσι κι αλλιώς, έτσι θα μπορούσατε να δείτε αυτό ως ένα πράσινο πρωτοβουλία.

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

Τεχνολογίες

Τι χρειάζεστε; (Ή πιο σωστά τι έκανα χρήση):

  • Idle μηχανές γραφείου (στην περίπτωσή μου μια εφεδρική παλιά παράθυρα XP ο φορητός υπολογιστής)
  • Το VirtualBox (ή άλλου λογισμικού πελάτη εικονικοποίησης)
  • Μια εικονική μηχανή με την PHP, mySQL running λειτουργία μιας περικοπή OS, καλώ αυτούς Limp διακομιστές μου:)
  • Εργασία για την εκτέλεση
  • Εργασία server (μπορεί να είναι μια άλλη εικονική μηχανή κάπου)

Τυπικές θέσεις εργασίας

Τα είδη των θέσεων εργασίας που αυτό το σύστημα είναι σχεδιασμένο να λειτουργεί ως εξής:

  • Σύστημα παραλαμβάνει μια λίστα δεδομένων στα οποία πρέπει να ταιριάζει και να επιστρέψει τα αποτελέσματα
  • Matching σημαίνει τον έλεγχο / έρευνα αρκετές (αρκετά στατική) πηγές δεδομένων
  • Τα αποτελέσματα από τις πηγές δεδομένων που μπορούν να απαιτούν περαιτέρω επικύρωση, τη συγχώνευση, τον έλεγχο της συμπληρωματικές πηγές δεδομένων, σε απάντηση των αποτελεσμάτων
  • Επιστρέφονται δεδομένα που ταιριάζουν με τα αρχεία, είναι πλήρως επικυρωμένες και μεταποιημένων
  • Κάθε εγγραφή σε μια θέση εργασίας είναι ανεξάρτητο από τα υπόλοιπα

Έτσι, βασικά ψάχνουμε στο τρέξιμο θέσεις εργασίας που απαιτούν ένα μείγμα αναζητήσεις βάση δεδομένων και μερικά τραγάνισμα αριθμό, ένα τυπικό σενάριο σε ένα επιχειρηματικό περιβάλλον.

Grid λύσεις δεν είναι μόνο επωφελής για την επεξεργασία θέσεων εργασίας αυτού του τύπου. Βασικά, κάθε μέθοδος η οποία μπορεί να χωρισθεί σε ανεξάρτητες μονάδες μπορούν να λειτουργήσουν παράλληλα. Δείτε αυτό το wikipedia για παραδείγματα και περισσότερες πληροφορίες: Grid Computing , αλλά μερικά από τα διάσημα παραδείγματα είναι Seti @ Home και BIONC . Υπάρχουν πλαίσια για τη λειτουργία των δικτύων υπολογιστών, και αυτά είναι καλά αξίζει να εξετάσουμε.

Αυτό που θα επιτύχουμε;

Μέχρι το τέλος του εν λόγω άρθρων ελπίζω να δείξουμε ότι αναπτύσσοντας ένα πλέγμα γραφείο δεν χρειάζεται να είναι εξαιρετικά δαπανηρές και χρονοβόρες. Πάω να συζητήσουν:

  • Εγκατάσταση του συστήματος ελέγχου της εργασίας, τη διαμόρφωση θέσεων εργασίας
  • Δημιουργία κατάλληλης επεξεργασίας εικονική μηχανή
  • Πως να ρυθμίσετε το σύστημα σε μια μηχανή παραθύρων
  • Διασφάλιση σας χρησιμοποιώντας τις τελευταίες κώδικα και δεδομένων
  • Ανάπτυξη και συγκριτική αξιολόγηση
  • Κοιτώντας προς το μέλλον

Θα είμαι κτιρίου (εντάξει έχτισα, στη συνέχεια, έγραψε αυτό) μια αίτηση παράδειγμα για τη δοκιμή των εννοιών σε ένα τοπικό μηχάνημα με windows XP και το μηχάνημα εικονικής πραγματικότητας «GridMachine» μου. έλεγχος μου server δουλειά θα είναι το μηχάνημά μου κύριος που τρέχει Fedora 11 .

Αυτό σε καμία περίπτωση δεν προορίζεται να αποδείξει ένα πλήρως εργασίας ισχυρό σύστημα, του σήμαινε περισσότερα από μια διαδήλωση και τη συζήτηση που δείχνουν ότι αυτά τα πράγματα μπορούν να επιτευχθούν μέσα σε εύλογα σύντομο χρονικό διάστημα και με χαμηλό κόστος. Διστάσετε να μου στείλετε τυχόν παρατηρήσεις, διορθώσεις, ή βελτιώσεις και εγώ θα κάνω ότι καλύτερο μπορώ για να κρατήσει αυτό το άρθρο ενημερωθεί ώστε να ταιριάζουν.

Την επόμενη φορά

Στο μέρος 2 θα αρχίσω με την εξέταση του συστήματος ελέγχου της εργασίας, και να διερευνήσει τον τρόπο θέσεις εργασίας θα πρέπει να διαμορφωθεί έτσι ώστε να επιτευχθεί μεγαλύτερη ποσότητα επεξεργασίας, εξασφαλίζοντας ταυτόχρονα ότι κάθε θέση απασχόλησης που υποβάλλεται σε επεξεργασία χωρίς αποτύχει.

Γραφείο Grid Computing που χρησιμοποιούν εικονικά περιβάλλοντα - Μέρος 2

Με Steven Lloyd Watkin , Παρασκευή 4 Δεκέμβρη 2009 23:23

Εισαγωγή

Δουλεύω σε μια εταιρεία όπου θα τρέξει πολλές θέσεις εργασίας batch επεξεργασία εκατομμύρια αρχεία με τα δεδομένα κάθε μέρα και να έχω σκεφτεί πρόσφατα για όλες τις μηχανές που κάθονται κάθε μέρα να μην κάνουμε τίποτα για αρκετές ώρες. Δεν θα ήταν καλό αν μπορούσαμε να χρησιμοποιήσουν τις μηχανές αυτές για να ενισχύσει την επεξεργαστική ισχύ των συστημάτων μας; Σε αυτό το σύνολο των άρθρων Πάω να εξετάσουμε τα πιθανά οφέλη από την απασχόληση ενός γραφείου πλέγματος χρησιμοποιώντας εικονικοποιημένων περιβάλλοντα.

Στο μέρος 1 έδωσα μια γενική εικόνα του συστήματος και των τεχνολογιών θα είμαι χρησιμοποιώντας καθώς συζητηθεί ως μερικά από τα πιθανά λόγους για τους οποίους θα θέλατε να δημιουργήσετε ένα δίκτυο γραφείων.

Job Control

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

  • Δώσε θέσεις εργασίας μετά από αίτημα των εργαζομένων
  • Ενημερώστε τους εργαζόμενους τι είδους θέσεις εργασίας για να τρέξει
  • Κομμάτι θέσεις εργασίας
  • Βεβαιωθείτε ότι οι θέσεις εργασίας μόνο εκτελούνται μία φορά
  • Παροχή δεδομένων εργασίας για τους εργαζόμενους, ή τουλάχιστον να τους πω πού να το πάρει

Το σύστημα πρέπει επίσης να είναι επεκτάσιμο, μια λύση που λειτουργεί προς το παρόν σε μία μόνο περίπτωση μπορεί να επεκταθεί για να τρέξει διάφορα είδη θέσεων εργασίας, επειδή η επιχείρηση βλέπει την αξία σε μια λύση πλέγμα. Για παράδειγμα, οι θέσεις εργασίας μπορούν να κερδίσουν τις προτεραιότητες, τους περισσότερους από έναν τύπους θέσεων εργασίας μπορεί να υπάρχουν (π.χ. αρκετές βάσεις κώδικα), τελικά μπορεί να τρέχει ακόμα και πολλά διαφορετικά μηχανήματα εργαζόμενος που είναι βελτιστοποιημένα για κάθε είδος εργασίας (αν και αυτό σημαίνει απομάκρυνση από την «κοινόχρηστη εργαζόμενος «ιδέα). Πάντα προσπαθούμε να σκεφτούμε για το μέλλον, όταν αναπτυχθούν τα συστήματα, μια βραχυπρόθεσμη θεώρηση μπορεί να οδηγήσει σε πιο μακροπρόθεσμη απογοήτευση και αύξηση του χρόνου ανάπτυξης.

Εργασία Server

Εμείς πάμε να πρέπει κάπου να ελέγχουν τις θέσεις εργασίας μας από, αυτό θα πρέπει να είναι το μόνο σύστημα στο δίκτυο σας που έχει ένα σταθερό εντοπιστής πόρου, είναι ότι μια διεύθυνση IP, όνομα του κεντρικού υπολογιστή, διεύθυνση URL (χρησιμοποιώντας εσωτερικά DNS), κλπ. Αυτό οφείλεται στο γεγονός ότι οι εργαζόμενοι πρέπει να ξέρουν πού να ψάξουν για θέσεις εργασίας, οι εργαζόμενοι πρέπει να βρούμε το σύστημα ελέγχου της εργασίας (όχι το σύστημα ελέγχου της εργασίας βρει τους εργαζομένους).

Ο διακομιστής δουλειά μόνος του δεν έχουν πραγματικά ένα πολύπλοκο έργο (σε ένα βασικό σύστημα ούτως ή άλλως), πρέπει να αποθηκεύσετε μια λίστα των θέσεων εργασίας, το χέρι έξω θέσεις εργασίας, να λαμβάνουν τα αποτελέσματα, και στη συνέχεια να τα αποθηκεύετε για μεταγενέστερη ανάκτηση. Πώς αυτά τα μέρη («το χέρι έξω θέσεις εργασίας», όπως), ορίζεται μπορεί να είναι πολύ βασικό. Αργότερα μπορούμε να επεκτείνουμε το σύστημα να περιλαμβάνει μια διεπαφή διοίκηση να προσθέσετε, να επεξεργαστείτε, να διαγράψετε, να αναστείλει θέσεις εργασίας, αλλά αυτό είναι πέρα ​​από αυτή την άσκηση.

Δεν υπάρχει κανένας απολύτως λόγος, στη συνέχεια, ότι ο διακομιστής τη δουλειά σας δεν θα μπορούσε να είναι μια εικονική μηχανή τρέχει μέσα στο κύριο διακομιστή επεξεργασίας σας, εφόσον αυτή δεν διαρροή πάρα πολλούς πόρους από αυτό. Ο διακομιστής εργασίας, ωστόσο χρειάζεται η υψηλή διαθεσιμότητα, σε περίπτωση που πέσει την Παρασκευή βράδυ θα πάμε για να χάσουμε ένα ολόκληρο Σαββατοκύριακο για τη μεταποίηση, ενδεχομένως να σας κοστίσει μια-δυο εβδομάδες αξίας του χρόνου επεξεργασίας (σε σύγκριση με την κύρια επεξεργασία server σας και μόνο) . Μπορεί να θέλετε να εξετάσει το ενδεχόμενο διακομιστή δουλειά σας σε ένα φορτίο ισορροπημένο περιβάλλον για υψηλή διαθεσιμότητα.

Βασική Εγκατάσταση

Η βασική ρύθμιση για το διακομιστή δουλειά μας θα αποτελείται από ό, τι είμαι καλώντας έναν από τους διακομιστές Limp μου (που είναι Li NUX, ySql m, P HP). Ο κώδικας που εκτελείται σε thea εργαζομένων θα έχει κανένα αποτέλεσμα η δουλειά που μπορεί να τρέξει με την αλληλεπίδραση με βάσεις δεδομένων με το σύστημα εργασίας ελέγχου. Αργότερα θα μπορούσαμε να δημιουργήσουμε μια υπηρεσία web και πραγματικά το χέρι έξω θέσεις εργασίας αντί να έχουν οι εργαζόμενοι κάνουν σκληρή δουλειά των ίδιων των, αλλά προς το παρόν θα συνεχίσει να χρησιμοποιεί την αρχή KISS (Φροντίστε να είναι απλή, ανόητε!).

Έτσι, αφήνει να δημιουργήσει τρεις mySQL πίνακες για την αντιμετώπιση των θέσεων εργασίας. Αυτές θα είναι «θέσεις εργασίας», «jobRecords», και «jobResults».

θέσεις εργασίας πίνακα Εδώ είμαι με τη χρήση του SQL Buddy μια μεγάλη μικρή εναλλακτική λύση για το phpMyAdmin μόνο και μόνο επειδή είναι ευκολότερο να το εγκαταστήσετε σε CentOS (για τους άλλους δείτε: 10 Μεγάλη εναλλακτικές λύσεις για το phpMyAdmin )

Ο πίνακας αυτός αποτελείται από 5 απλών πεδίων,

  • id: τον επακριβή προσδιορισμό της εργασίας
  • Όνομα: Θα μπορούσε να είναι σημείο αναφοράς τον πελάτη, ή οποιοδήποτε αριθμό άλλων αναγνωριστικών
  • Κατάσταση: Πρέπει να ξέρετε όπου η δουλειά είναι, π.χ.
    • 0: Δεν έχει ξεκινήσει
    • 1: επιταχύνθηκε
    • 2: Ολοκληρώθηκε
  • started_by: Ποιος ξεκίνησε να κάνει τη δουλειά; Αυτό δεν είναι απολύτως απαιτείται, αλλά είναι καλό να υπάρχει. Θα πρότεινα τον εντοπισμό των εργαζομένων από τη διεύθυνση IP τους στο δίκτυό σας
  • started_at: Πότε ο εργαζόμενος ξεκινήσει τη δουλειά; Με την παρακολούθηση θέσεις εργασίας που δεν έχουν ολοκληρωθεί μέσα σε Χ ποσό του χρόνου ξέρουμε ότι πρέπει να πάρει τη δουλειά για μια ακόμη φορά και να αρχίσει την επεξεργασία από άλλη εργαζόμενο. Οι εργαζόμενοι θα μπορούσε να σταματήσει την επεξεργασία / go offline για οποιοδήποτε αριθμό λόγων, τη διακοπή ρεύματος, συντριβή, δίκτυο απώλεια, κ.λπ.

Είναι εύκολο τρόπο με τον οποίο ο πίνακας αυτός θα μπορούσε να επεκταθεί με μερικά επιπλέον πεδία για να καταστεί δυνατή η παρακολούθηση στατιστικών στοιχείων, μια στήλη ώρα λήξης για να δούμε πόσο καιρό πήρε τη δουλειά, έναν μετρητή για να δείτε πόσοι εργαζόμενοι πήραν την εργασία (προφανώς αυτό πρέπει να τείνουν να 1), προτεραιότητα των εργασιών, ο κατάλογος μπορεί να συνεχιστεί και επάνω. Σε πιο πολύπλοκα σενάρια εργασίας θα ήταν δυνατό να προσδιοριστεί το μέγεθος της μνήμης, ο εργαζόμενος θα πρέπει να έχουν πρόσβαση σε (και επομένως η χρήση μόνο κατάλληλο εργαζομένων), ή ακόμα και ποιος τύπος εργαζομένου θα ήταν απαραίτητη.

Αφήνει να προσθέσετε μερικές θέσεις εργασίας παράδειγμα:

θέσεις εργασίας π.χ.

Ο πίνακας που ακολουθεί είναι και πάλι αρκετά απλό να κατανοήσει, αυτά είναι τα αρχεία δουλειά μας. Συνδέονται με τον κύριο πίνακα θέσεων εργασίας από μια στήλη «jobs_id». Η σύνθεση της εν λόγω πίνακα εξαρτάται σε μεγάλο βαθμό τα δεδομένα που πρέπει να παρέχουν στους εργαζομένους σας, αφήνει να κάνει ένα πολύ απλό παράδειγμα, όπου έχουμε τέσσερις στήλες:

  • ID: ID της εγγραφής
  • Όνομα: το όνομα Πρόσωπο
  • διεύθυνση: διεύθυνση του Ατόμου
  • jobs_id: Το αναγνωριστικό εργασίας που αυτό το αρχείο είναι συνδεδεμένο με

Το τρίτο και τελικό τραπέζι αποτελείται από ένα πίνακα αποτελεσμάτων, έχει περίπου το ίδιο κάνει ως επιτραπέζια αρχεία μας, και με την προσθήκη ορισμένων στήλες θα μπορούσαν να είναι μέρος του πίνακα εγγραφών:

  • job_record_id: Link το αποτέλεσμα στο τραπέζι των θέσεων εργασίας
  • αποτέλεσμα: Τα στοιχεία που προκύπτουν από

... Και αυτό είναι όλα όσα χρειάζεστε για τον έλεγχο των θέσεων εργασίας! (Αν και σε πολύ βασικό επίπεδο) Στην περίπτωσή μου είμαι επισήμανε σε άλλο πίνακα, όπου τα στοιχεία μου για την διαδικασία βρισκόταν, αλλά αυτό θα μπορούσε κάλλιστα να έχει ένα αρχείο, οι παράμετροι για την εκτέλεση κώδικα προσομοίωσης, εσείς το όνομα.

Επιλέγοντας μια θέση εργασίας

Όπως αναφέρθηκε προηγουμένως, οι εργαζόμενοι θα κάνουν τη διαχείριση δουλειά μας για μας για τώρα, οπότε το μόνο που χρειάζεται πραγματικά να κάνουμε είναι να βρούμε μια δουλειά που χρειάζεται επεξεργασία και να πάρετε τις πληροφορίες. Πώς θα το κάνουμε αυτό; Καλά πάρει τη δουλειά μας κριτήρια επιλογής και να αναζητήσει απασχόληση, σε SQL έκανα το εξής:

  1. Πάρτε οποιοδήποτε θέσεις που δεν χαρακτηρίζονται ως πλήρεις, αλλά από εργαζόμενο μας και επαναφορά τους (__ME__ αντικαταστήσει με ένα αναγνωριστικό, ευκολότερο θα είναι η διεύθυνση IP):
      UPDATE »θέσεις εργασίας», όπως προβλέπεται `κατάστασης» = 0 όταν «καθεστώς» = 1 ΚΑΙ `started_by» = __ME__? 
  2. Χρησιμοποιώντας τη δουλειά μας κριτήρια επιλογής, επιλέξτε μια θέση εργασίας και να πει το σύστημα ελέγχου ότι η εν λόγω εργαζόμενος έχει την αντιμετώπισή του:
      UPDATE »θέσεις εργασίας», όπως προβλέπεται `κατάστασης» = 1, στο εξής started_by »= __ME__,` started_at »= NOW () όταν« καθεστώς »= 0 ή
     («Καθεστώς» = 1 ΚΑΙ `started_at»> DATE_SUB (NOW (), το διάστημα Χ ΩΡΑ)) ORDER BY `id` ASC? 

    Με την αρπαγή θέσεις εργασίας που δεν έχουν επιστρέψει τα αποτελέσματα στο ποσό Χ χρονικό διάστημα να διασφαλίσουμε ότι όλες οι εργασίες εκτελούνται σε περίπτωση που ένας εργαζόμενος συντρίβοντας ή πηγαίνει AWOL.

  3. Στη συνέχεια πιάσε τα στοιχεία απασχόλησης που ακολουθείται από τα αρχεία οι ίδιοι:
      SELECT * FROM `θέσεις εργασίας», όταν «started_by» = __ME__ ορίου του 1?
     SELECT * FROM `job_records« Όταν `id` = __JOBID__? 

Μετά την ολοκλήρωση της εργασίας που εισάγετε τα αρχεία μας αποτέλεσμα και το σήμα του εργασία ως ολοκληρωμένη. Να θυμάστε ότι η απασχόληση μπορεί να αναστείλει / συνέχιση ανά πάσα στιγμή θα επιτρέψει σε ορισμένες στιβαρότητα στο script σας. Θα μπορούσε να είναι ότι το καθήκον αναστέλλει μισά επικαιροποίηση του συστήματος ελέγχου της εργασίας, έτσι τον έλεγχο του αριθμού των εγγραφών σε μια θέση εργασίας και ο αριθμός των αποτελεσμάτων αποθηκεύεται πίσω στο σύστημα ελέγχου της εργασίας θα ήταν μια σοφή κίνηση.

Επιπλέον, αν και αυτό δείχνει πόσο θέσεις εργασίας μπορούν να επιλεγούν και να διαχειρίζεται από ένα SQL ερώτημα-πλαίσιο θα πρέπει πραγματικά να υδροληψίες ελέγχου της εργασίας σας, έτσι ώστε, αν αποφασίσει να στραφεί προς τη χρήση μιας υπηρεσίας Web, ένα αρχείο συστήματος, XML , ή οποιαδήποτε άλλη αριθμός των συστημάτων δεν θα επηρεάσει τον κώδικα πάνω από αυτό.

Εργασία διαμόρφωσης

Η επόμενη πτυχή που εξετάζει είναι το μέγεθος και τη διαμόρφωση θέσεων εργασίας. Με το παιχνίδι με τη διαμόρφωση θέσεων εργασίας που μπορεί να επιτύχει μια εξαιρετική ισορροπία μεταξύ της ταχύτητας, αναπαραγωγή της διαδικασίας, και την αξιοπιστία. Πάρτε ένα ζευγάρι ΟΦΑ σενάρια:

  1. Εργασία λάβει 1 ημέρα κάθε για να εκτελέσετε: Αυτό σημαίνει ότι οι εργαζόμενοι σας χρειάζονται 15 ημέρες για την επεξεργασία κάθε θέση εργασίας (θυμηθείτε το 10% της ισχύος για 2/3rds του χρόνου). Αυτό δεν είναι προφανώς μια σοφή διάταξη, μέγεθος της εργασίας σας είναι πάρα πολύ μεγάλη! Θα χρειαστεί τουλάχιστον διπλάσιο χρόνο για να βρουν μια θέση εργασίας σε επεξεργασία σε περίπτωση που η αρχική εργαζόμενος πάει AWOL (χρόνος για να πάρει ότι δεν έχει επιστρέψει αποτέλεσμα συν επανεπεξεργασία του χρόνου). Σε ένα ιδανικό θα είχατε τουλάχιστον μία πλήρη απασχόληση εύκολα εκκαθαρίζονται από το τέλος κάθε μακρά περίοδο αδράνειας, με αυτόν τον τρόπο να κρατήσει τις θέσεις εργασίας που περνάει πάνω και στη χειρότερη περίπτωση μια εργασία θα διαρκέσει δύο ημέρες για την επεξεργασία θα πρέπει το πρώτο χάνονται.
  2. Εργασία λάβει 1 λεπτό για να εκτελέσετε: Αυτό σημαίνει ότι οι εργαζόμενοι σας πάρει περίπου 15 λεπτά για να τρέχει σε κάθε θέση εργασίας. Ενώ αυτό μπορεί να φαίνεται αρχικά ιδανικά, θα αποκτήσουν πρόσθετη επεξεργασία εργασία κατά τη διάρκεια του χρόνου του γεύματος, coffee breaks, συναντήσεις, κ.λπ. με το σενάριο αυτό βάζει πίεση στους άλλους τομείς του συστήματός σας και να εισάγει τα δικά του προβλήματα. Για παράδειγμα, κατ 'αρχάς σας εγκατάσταση / αναλογία του χρόνου επεξεργασίας πρόκειται να πάει δεξιά προς τα κάτω, ως εκ τούτου χάνει την αποτελεσματικότητα του συστήματος. Το δίκτυό σας θα είναι συνεχώς συνεχούς ροής πληροφοριών θέσεων εργασίας στους διάφορους εργαζόμενους απογοητευτικό το προσωπικό που είναι ντονγκ την καθημερινή τους εργασία. Είστε, επίσης, θα δοθεί μεγαλύτερη πίεση στον server επεξεργασίας εργασία σας δεδομένου ότι πρέπει να πιάτο από πάρα πολλά μικρά κομμάτια της εργασίας σε τακτική βάση. Τέλος, σε αυτή την κατάσταση αν ο διακομιστής τη δουλειά σας πηγαίνει κάτω θα πάμε να δημιουργήσουμε μια τεράστια πλάτη αρχείο καταγραφής των ημιτελών εργασιών ενώ μεγαλύτερες θέσεις εργασίας θα μπορούσαν της συνεχούς επεξεργασίας μακαρίως αγνοεί ότι ο διακομιστής η εργασία που αντιμετωπίζουν δυσκολίες.

Στην πραγματικότητα δεν θα υπάρχει μία ιδανική ρύθμιση για την εγκατάσταση του δικτύου σας, πολλά εξαρτώνται από τους διαθέσιμους πόρους, τα είδη των θέσεων εργασίας, τις απαιτήσεις του χρόνου εργασίας ανάκαμψη, την ικανότητα του δικτύου, και ούτω καθεξής. Ωστόσο, ορισμένες κατευθυντήριες γραμμές θα είναι:

  • θέσεις εργασίας Μέγεθος έτσι ώστε κάθε εργαζόμενος μπορεί να πάρει μέσα από τουλάχιστον 3-4 θέσεις εργασίας σε μια περίοδο 15 ωρών (η μεγαλύτερη πιθανή ρελαντί χρονική περίοδο)
  • Παίξτε με το μέγεθος της εργασίας έτσι ώστε ο χρόνος εγκατάστασης γίνεται αρκετά ασήμαντη σε σύγκριση με το χρόνο επεξεργασίας (λαμβάνοντας υπόψη το ανωτέρω σημείο).
  • Εάν μια εργασία δεν ολοκληρωθεί με το διπλάσιο του ποσού του χρόνου (ίσως και λιγότερο) το περιμένετε να ολοκληρωθεί η υποθέσουμε ότι του πάει AWOL και να αρχίσει την επεξεργασία με ένα άλλο εργαζόμενο. Αυτό σημαίνει ότι ίσως χρειαστεί να περιμένουν μέχρι και τρεις φορές τη συνήθη διάρκεια μιας εργασίας για την ολοκλήρωση της (ενδεχομένως περισσότερο, αν η μεταγενέστερη εργασία αποτυγχάνει). Μπορεί να θέλετε να μειώσει αυτή τη φορά, αλλά πρέπει να προσέξουμε να μην το μειώσει πάρα πολύ, όπως μπορείτε να ξεκινήσετε επανάληψη επεξεργασίας καθήκοντα σε τακτική βάση.
  • Εργασία θα πρέπει να είναι ανεξάρτητη των εξωτερικών απαιτήσεων όσο το δυνατόν περισσότερο. Ο διακομιστής δουλειά, για παράδειγμα, θα πρέπει να απευθυνθεί στην αρχή και στο τέλος κάθε εργασία.
  • Να μην κορεστεί το δίκτυό σας, αυτό θα έχει δύο αρνητικά αποτελέσματα, τη διάρκεια της ημέρας το προσωπικό σας θα βρει τη χρήση του δικτύου απογοητευτικό και τα προβλήματα που μπορεί να προκύψει σε σχέση με τις συνδέσεις χρονικό όριο για ένα πρόβλημα που θα πάρει μόνο χειρότερα καθώς κλίμακας δίκτυο σας.
  • Εξασφάλιση θέσεων εργασίας μπορεί να τρέξει σε εργαζομένους σας. Αν οι εργασίες γίνονται πολύ απαιτητικές σε μνήμη ή χώρο στο δίσκο υψηλής έντασης εργασίας θα αρχίσει εγκατάλειψης και το μόνο πράγμα που θα παρατηρήσετε είναι μια σταγόνα στον αριθμό των θέσεων εργασίας σε επεξεργασία που δεν πραγματικός λόγος.

Υποβολή Αποτελέσματα Εργασίας

Κατά την υποβολή των αποτελεσμάτων της εργασίας, είναι σημαντικό να ελέγχεται ότι τα αποτελέσματα δεν έχουν υποβληθεί, από άλλον εργαζόμενο, ειδικά εάν η τρέχουσα εργαζόμενος ήταν ανενεργό για κάποιο χρονικό διάστημα.

Όταν τα αποτελέσματα υποβάλλονται εξασφαλιστεί ότι ο αριθμός των αποτελεσμάτων που αντιστοιχεί στον αριθμό των εγγραφών κατά την εργασία.

Όπως αναφέρθηκε προηγουμένως, και δεν μπορεί να είναι πάνω τόνισε, να χτίσουν την ανοχή σε βλάβες στην ανάκτηση θέσεων εργασίας και των υποβληθέντων αποτελεσμάτων. Οι εργαζόμενοι μπορούν (και πιθανότατα θα) πάει σε κατάσταση αναστολής στο πιο ενοχλητικό φορές και αυτό πρέπει να ικανοποιηθούν. Επίσης, για άλλη μια φορά υδροληψίες μακριά αποτελέσματα υποβολή σας θα βοηθήσει να ληφθεί μέριμνα για μελλοντικές αλλαγές στη δουλειά σας σύστημα ελέγχου πολύ πιο εύκολο να αντιμετωπίσουμε.

Περίληψη

Σε αυτό το section έχουμε εξετάσει σε ποιο ένα διακομιστή ελέγχου της εργασίας που πρέπει να κάνει και πώς να πάρει ένα πολύ βασικό σύστημα που έχει συσταθεί. Συζητήσαμε πώς να ανακτήσει μια εργασία από το σύστημα ελέγχου και τον καλύτερο τρόπο για να ρυθμίσετε θέσεις εργασίας για να αξιοποιήσετε στο έπακρο μας δίκτυο του γραφείου σας. Για να ολοκληρώσετε, μια παράγραφο ή δύο για την υποβολή των αποτελεσμάτων πίσω στο διακομιστή ελέγχου της εργασίας παρουσιάστηκε.

  • Ένας διακομιστής ελέγχου της εργασίας διαχειρίζεται θέσεις εργασίας και εξασφαλίζει ότι ολοκληρώνονται όλες οι υπηρεσιακές μονάδες
  • Με υδροληψίες δουλειά σας επιλογή / υποβολή αποτελέσματα μπορούμε να αλλάξουμε την τεχνολογία του διακομιστή ελέγχου χωρίς πολλά προβλήματα
  • Διαμόρφωση θέσεων εργασίας σας για να βεβαιωθείτε ότι είναι τρέχουν γρήγορα και αποτελεσματικά χωρίς βάζοντας πάρα πολλή πίεση σχετικά με την υποδομή του δικτύου σας, και χωρίς επικαλύψεις μεταποίηση καθήκοντα σε τακτική βάση.
  • Βεβαιωθείτε ότι έχετε χτίσει ανοχή λαθών και checking λάθος σε ρουτίνες σας, οι εργαζόμενοι μπορούν να αναστέλλουν και να επαναλαμβάνεται και το πιο ενοχλητικό φορές. Θυμηθείτε να ελέγξετε αν τα αποτελέσματα έχουν ήδη υποβληθεί από άλλον εργαζόμενο.

Την επόμενη φορά

Στο μέρος 3 θα δημιουργήσουμε μας μηχανή εικονικής επεξεργασία και δημιουργία μηχανές μας παράθυρα για να γίνει αδρανής απασχολουμένων εργαζομένων.

Γραφείο Grid Computing που χρησιμοποιούν εικονικά περιβάλλοντα - Μέρος 5

Με Steven Lloyd Watkin , Παρασκευή 4 Δεκέμβρη 2009 23:03

Εισαγωγή

Δουλεύω σε μια εταιρεία όπου θα τρέξει πολλές θέσεις εργασίας batch επεξεργασία εκατομμύρια αρχεία με τα δεδομένα κάθε μέρα και να έχω σκεφτεί πρόσφατα για όλες τις μηχανές που κάθονται κάθε μέρα να μην κάνουμε τίποτα για αρκετές ώρες. Δεν θα ήταν καλό αν μπορούσαμε να χρησιμοποιήσουν τις μηχανές αυτές για να ενισχύσει την επεξεργαστική ισχύ των συστημάτων μας; Σε αυτό το σύνολο των άρθρων Πάω να εξετάσουμε τα πιθανά οφέλη από την απασχόληση ενός γραφείου πλέγματος χρησιμοποιώντας εικονικοποιημένων περιβάλλοντα.

Στο Μέρος 4 κοιτάξαμε να χρησιμοποιεί εργαλεία για να διασφαλίσουμε ότι θα τρέχετε την πιο πρόσφατη έκδοση του και πηγές δεδομένων κώδικα έτσι ώστε λαμβανόμενα αποτελέσματα είναι πάντα ενημερωμένο με τις τελευταίες πληροφορίες των επιχειρήσεων και τη λογική.

Προ-Ανάπτυξη

Πριν από την εγκατάσταση δικτύου παροχής σας, αν υπάρχει ένα πράγμα που κάνεις και ένα πράγμα μόνο του είναι σημείο αναφοράς το σύστημά σας ρεύμα! Δεν έχει σημασία τι θα πείτε στους συναδέλφους σχετικά με το πόση επιπλέον εργασία σύστημά σας πρόκειται να κάνει εάν δεν έχετε αριθμούς να το υποστηρίζουν εγγυήσεις σας δεν είναι τίποτα. Έτσι,

  • πόσες εγγραφές μπορείτε να τη διαδικασία επί του παρόντος; Την ημέρα; Ανά ώρα;
  • Πόσος χρόνος χρειάζεται συνήθως να λάβει για να γυρίσει μια εργασία;
  • Πόσο μεγαλύτερη χωρητικότητα έχετε;

Υπάρχει, επίσης, πρόσθετα ερωτήματα:

  • Εάν η επεξεργασία server σας (ή σε μία από την επεξεργασία τους διακομιστές σας), κατεβαίνει το πώς αυτό θα επηρεάσει τις δυνατότητές σας, θα είστε ανάπηρος;
  • Τι πλεονεκτήματα έχετε ελπίδα / περιμένετε να πάρετε από ένα σύστημα δικτύου;
  • Οι μηχανές γραφείου σας που μπορούν να λειτουργούν οι θέσεις εργασίας;
  • Σας είναι (ή μπορεί να σας θέσεις εργασίας να μετατραπεί) να εργαστούν σε αυτό το ύφος της λειτουργίας;

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

Ανάπτυξη

Η πρότασή μου θα ήταν να εμφανιστεί στο γραφείο ένα Σαββατοκύριακο να διενεργούν όλες τις εγκαταστάσεις και εγκατάστασης. Κάνετε αυτό ακριβώς πριν από δύο εβδομάδες διακοπών ένα και το αφήνουμε έτσι άλλες φτωχές σκάσιμο για την αντιμετώπιση των συνεπειών ... ίσως όχι ...

Ανάπτυξη ενός συστήματος όπως αυτό πρέπει να είναι αργή. Παρόλο που είναι σχετικά απλό να δημιουργηθεί αυτό το σύστημα θα επηρεάσει ολόκληρη την υποδομή του γραφείου σας (καθώς το ψηφιακό). Πρώτον, ανοίγουμε με ένα ζευγάρι των μηχανών σε μια στιγμή, την παρακολούθηση της κίνησης δικτύου, πώς οι οικοδεσπότες εργαζόμενος εκτελεί μία ημέρα σε καθημερινή βάση. Μπορεί να χρειαστεί να αλλάξει διαμόρφωση δουλειά σου σε απάντηση των διαπιστώσεων σας.

Όταν το σύστημα έχει διευθετηθεί με μερικές μηχανές (ας πούμε το 10% του συνόλου των μηχανών γραφείου, δηλαδή 5) να εξακολουθήσουν να ελέγχουν την κυκλοφορία του δικτύου και της χώρας υποδοχής performance. μηχανή Επόμενο σημείο αναφοράς και πάλι, θα πρέπει τώρα να μεταποίησης κατά 33% περισσότερες θέσεις εργασίας από την πρώτη αναφοράς σας. Ελέγξτε αυτό είναι έτσι, ή ότι είστε τουλάχιστον σε αυτό το γήπεδο. Αν όχι, να διερευνήσει τι συμβαίνει πριν προχωρήσουμε. Επαναλάβετε αυτόν τον κύκλο μέχρι να ευτυχώς όλες οι συσκευές διαθέτουν λειτουργίας γραφείου χωρίς θανάτωση των ατομικών επιδόσεων μηχανή ή τρόχισμα του δικτύου σας σε ένα αδιέξοδο.

Ανά πάσα στιγμή διατηρεί τη συγκριτική αξιολόγηση, ακόμη και μετά γίνονται όλα αναπτύξεις. Ελέγξτε πώς οι νέες ενημερώσεις κώδικα επηρεάζουν την ταχύτητα του συστήματός σας, ελέγξτε το σύνολο των εργαζομένων αναφέρουν στην επεξεργασία και την απασχόληση. Σιγά-σιγά (πολύ αργά) αύξηση διαμόρφωση δουλειά σας να πάρει το καλύτερο από τους εργαζόμενους και το δίκτυό σας.

Σταματήστε!

Τι και αν θέλετε να σταματήσετε τους εργαζομένους σας από το τρέξιμο σε κάποια χρονική στιγμή; Είναι όλα εκεί έξω τρέξιμο, αναγέννηση, και προσπαθώντας καλύτερο εαυτό τους για την επεξεργασία δεδομένων όπως πεινασμένο έντομα. Η απάντηση μπορεί να φαίνεται προφανής, αλλά αξίζει, προσθέτοντας μόνο στην περίπτωση του αγνοείται. Απλά να επεξεργαστείτε επεξεργασία της δέσμης ενεργειών σας με μια έξοδο (0) ή να πεθάνει () ή κάποια άλλη δήλωση για να σκοτώσει την επεξεργασία δουλειά σας. Ένας σημαντικός λόγος που πάντα προσπαθούμε να ενημερώσετε με την τελευταία επεξεργασία της δέσμης ενεργειών πριν από κάθε διαδρομή!

Επίδειξη Συστήματος

Για να γράψω αυτό το σύνολο των σύντομων άρθρων Δημιούργησα ένα πολύ μικρό πλέγμα για να αποδείξει τις τεχνολογίες και μεθοδολογίες. Διάβασα πολλά άρθρα, tutorials, και να χρησιμοποιηθούν διάφορα εργαλεία για την εγκατάσταση και την παρακολούθηση τι συνέβαινε. Με κανένα τρόπο δεν έχω πάει έξω και κορεσμένα σύνολο γραφείο με την κυκλοφορία και ούτε έχουν είχα πρόσβαση σε ένα κανονικό υπολογιστή μέλη του προσωπικού, για να δει πώς οι επιδόσεις υποδοχής έχει επηρεαστεί.

σύστημα επίδειξης μου ήταν πολύ ταπεινό πράγματι. Θα χρησιμοποιηθεί για κανονική επιφάνεια εργασίας μου που έχει συσταθεί ως διακομιστής ελέγχου της εργασίας. Σε αυτό το είχα εγκαταστήσει mySQL server έχει εγκατασταθεί συσταθεί ως master στην αντιγραφή, PHP , Β και SVN συνδέονται μεταξύ τους μέσω apache (για πρόσβαση μέσω εργαζόμενο VM).

Δημιούργησα στη συνέχεια μια CentOS μηχανή εργαζόμενος σε VirtualBox σε 6 χρόνια παλιό φορητό υπολογιστή Windows XP. Μπορώ να ρυθμίσω προγραμματισμένες εργασίες όπως καθορίζεται μετά την αντιγραφή του VM πάνω στο μηχάνημα και αφήστε το να πάει.

Η εικονική μηχανή συστάθηκε με την PHP, ανατροπής, και mySQL. Θα ελεγχθεί το υποκατάστημα που ονομάζεται «εργαζόμενος», από τους servers του δουλειά τον έλεγχο μου αποθετήριο και φρόντισε να μπορεί να ενημερώνεται με «ενημέρωση svn». Στη συνέχεια μπορώ να ρυθμίσω mySQL ως σκλάβος και να ελέγχεται ότι τα δεδομένα ήταν αντιγραφή από mySQL στο διακομιστή ελέγχου της εργασίας προς τα κάτω στο VM εργαζόμενο. Μετά από όλα αυτό το σκηνικό εγώ το σενάριο bash και την περιοδική εργασία.

επεξεργασία της δέσμης ενεργειών μου ουσιαστικά πήγε προς την κατεύθυνση αυτής της (πολύ απλά πράγματα):

  • Διαβάστε στο πεδίο Όνομα
  • Συνυπολογίζονται στον αριθμό των παρόμοιων ονομάτων σε έναν πίνακα από την προέλευση δεδομένων που πραγματοποιήθηκε στο VM
  • Συνυπολογίζονται στον αριθμό των ονομάτων όπως παραπάνω, αλλά διάσπαση το όνομα τους με κενά (π.χ. όνομα, μεσαίο, επώνυμο)
  • Η επαναλαμβανόμενη αυτή τη διαδικασία 1.000 φορές

Κάθε δουλειά πήρε περίπου 20 λεπτά για να τρέξει. Σε ένα σημείο άνοιξα πολλά αντίτυπα του VM εργαζομένου για το φορητό υπολογιστή παράθυρα και παρακολούθησαν τις θέσεις εργασίας που να ελέγχεται από κάθε ένα από τα εργαζομένου διευθύνσεις IP. Στο σημείο αυτό επιβεβαιώνεται επίσης ότι η αναπαραγωγή αυτόματα επανεκκίνηση.

Φεύγοντας από το φορητό υπολογιστή στην κατάσταση αναμονής είχε ως αποτέλεσμα ένας εργαζόμενος να αρχίσει την επεξεργασία θέσεων εργασίας από το διακομιστή ελέγχου της εργασίας. Κατά την επανέναρξη της χρήσης φορητού υπολογιστή υπήρξε μια καθυστέρηση περίπου 30-60 δευτερόλεπτα, αυτό είναι ένα δίκαιο ποσό του χρόνου και το προσωπικό θα πρέπει να συνειδητοποιήσουν ότι η συσκευή τους μπορεί να σταματήσει για λίγο όταν επιστρέψει στο μηχάνημα. Νεότερες μηχανήματα δεν μπορούν να έχουν μια παύση αυτής της μακροχρόνιας. Το όφελος από το ποσό της μεταποίησης που πραγματοποιούνται από αυτές τις μηχανές κατά τη διάρκεια περιόδων αδράνειας θα ήταν περισσότερο ότι υπερισχύουν τα μέλη του προσωπικού να πρέπει να περιμένουν μια σύντομη περίοδο (δηλαδή 1 λεπτό) κατά την είσοδό του μηχανές τους από μια πρωινή (Ι συχνά περιμένει περισσότερο ότι αυτό για το Windows Defender ενημέρωση θα λάβει χώρα), εφόσον είχαν ενημερωθεί γι 'αυτό (χρήσιμο χρόνο για να πάρετε έναν καφέ το πρωί!).

Σε γενικές γραμμές αισθάνομαι βέβαιος ότι το έχω αποδείξει τις τεχνολογίες που θα μπορούσαν να χρησιμοποιηθούν για τη δημιουργία ενός τέτοιου συστήματος. Έχω δείξει ότι ένα τέτοιο σύστημα να λειτουργήσει σε ένα (πολύ) μικρής κλίμακας και με κάποιες πιο πειραματίζονται θα μπορούσαν να αναβαθμιστούν χρήση των πόρων των μηχανών γραφείου του. Αν δεν φτάσουμε στο σημείο για να γίνει αυτό, θα με ενδιέφερε πολύ να μάθω / δείτε πότε κάποιος άλλος κάνει.

Συμπεράσματα / Αξιολόγηση

Το επόμενο προφανές βήμα θα ήταν να πάρετε πραγματικά ένα πραγματικό παγκόσμιο παράδειγμα και να αρχίσει να αναπτύξει ένα σύστημα όπως αυτό μέσα σε ένα περιβάλλον γραφείου και να δούμε τι θα συμβεί. Ζητώντας μια επιχείρηση να δεσμευτούν σε αυτό χωρίς ένα ίχνος blazing εταιρεία να αποδείξει την τεχνολογία και την αποτελεσματικότητα μπορεί να είναι λίγο δύσκολο. Grid / Κατανεμημένοι υπολογισμοί είναι πολύ δημοφιλές είναι κάποιους κύκλους και έχει μερικές μεγάλες εφαρμογές (BIONC, SETI @ Home, Folding @ Home, κλπ). Δεν το έκανα, ωστόσο, να βρουν και σε μικρότερη κλίμακα και απλό σύστημα σαν αυτό στις αναζητήσεις μου, που θα μπορούσε να ξεδιπλώσει μέσα σε ένα περιβάλλον γραφείου.

Δημιούργησα ένα βασικά ελεύθερο σύστημα που χρησιμοποιεί ως επί το πλείστον λογισμικό ανοικτού κώδικα και εργαλεία που είναι διαθέσιμα σχεδόν σε κάθε γραφείο. Οι τεχνολογίες που ήταν κατά βάση θα επιδεικνύονται και θα δείτε να εκτελεί και να λειτουργούν όπως αναμένεται. Ας ελπίσουμε ότι έχω αποδείξει ότι δεν με πολύ δουλειά και με μια πολύ απλή εγκατάσταση, μπορείτε να αναπτύξετε ένα δίκτυο γραφείων υπολογιστικό σύστημα που είναι ισχυρό, φθηνή, Β και κλιμακούμενη όλοι την ίδια στιγμή.

Μόλις το σύστημα είναι σε υπηρεσία δεν υπάρχει σχεδόν καμία τέλος με το ποσό της προσαρμογής και βελτιώσεις που μπορείτε να κάνετε. Για παράδειγμα, στατιστικές / συγκριτική αξιολόγηση μπορούν εύκολα να προστεθούν δείχνει την αξία ενός τέτοιου συστήματος κάθε μέρα. Νέες μηχανές μπορεί να προστεθεί εύκολα και γρήγορα, όπως και όταν φτάσουν με αναβαθμίσεις υφιστάμενων hardware ενίσχυση επεξεργαστική ισχύ σας.

Ελπίζω έχετε απολαμβάνουν την ανάγνωση αυτής της σειράς άρθρων και του έδωσα τροφή για σκέψη σχετικά με τη λειτουργία μιας δίκτυο γραφείου. Η λύση που παρουσιάζεται εδώ δεν θα είναι αναγκαστικά εργάζονται σε όλες τις καταστάσεις, αλλά θα πρέπει να προσαρμόζεται ώστε να μπορείτε να πάρετε τα δεδομένα σας μεταποιήσεις που πραγματοποιούνται χρησιμοποιώντας τη δική σας λύση.

Διστάσετε να μου στείλετε τυχόν παρατηρήσεις, διορθώσεις, ή βελτιώσεις και εγώ θα κάνω ότι καλύτερο μπορώ για να κρατήσει αυτό το άρθρο ενημερωθεί ώστε να ταιριάζουν.

Zend-πλαίσιο: Βασικές αρχές - Αναθεώρηση

Με Steven Lloyd Watkin , Σάββατο 28 Νοέμβρη 2009 22:42

Ο εργοδότης μου που καταβλήθηκε πρόσφατα για μια ομάδα από μας στους προγραμματιστές να λάβουν τα Zend-πλαίσιο: Fundamentals βέβαια, εδώ θα συνοψίσω τις απόψεις μου τις σκέψεις και για την πορεία των άλλων. Για εκείνους που ψάχνουν για να εξοικονομήσετε χρόνο, εδώ είναι περίληψη μου:

Για τους προγραμματιστές που δεν είχαν το χρόνο να εξετάσουμε την Zend-πλαίσιο αυτού του μαθήματος (Zend-πλαίσιο: Fundamentals) προσφέρει μια καλή γενική εικόνα του πλαισίου εισαγωγή σας στους βασικούς τομείς και δίνοντας αρκετές πληροφορίες για να συνεχίσει. Για εκείνους που έχουν περάσει χρόνο εξετάζοντας το πλαίσιο και έχουν ακολουθήσει ένα ή δύο σεμινάρια αυτό το μάθημα δεν προσφέρει πολλά πέρα.

Ιστορικό

Έχω μια PHP developer για περίπου 5-6 χρόνια, και έχουν αρχίσει συνεργασία με την Zend-πλαίσιο σχετικά με μια συνιστώσα βάση κατά τη διάρκεια των τελευταίων 6 μηνών. Έχω αναπτύξει και / ή έχουν προγραμματιστής σε μια δυο μικρές Zend-πλαίσιο MVC sites. Θα είμαι ειλικρινής, δεν είχα ένα τεράστιο ποσό της έκθεσης σε άλλα πλαίσια από μια κωδικοποίηση άποψη, αλλά έχουν περάσει πολλά ώρες την έρευνα τους ιστότοπους των έργων και την αξιολόγηση της them. Το πλαίσιο και η κοινότητα γύρω Zend-πλαίσιο είναι αρκετά συναρπαστικό και φαίνεται ότι υπάρχουν τεράστιες δυνατότητες όσον αφορά το πού πηγαίνει της.

Σχετικά με το Μάθημα

Το μάθημα παραδίδεται πάνω από το 9 δύο ώρες συνεδρίες WebEx (με 10 λεπτά διάλειμμα στη μέση). Ο χρόνος που ξοδεύεται περνάει μια σειρά διαφανειών που προβλέπονται από την Zend με τη συζήτηση, ανά πάσα στιγμή. Μπορείτε να χρησιμοποιήσετε ένα μικρόφωνο για να μιλήσω με τον εκπαιδευτή, αλλά για να είμαι ειλικρινής δεν είδα κανέναν τίποτα χρησιμοποιήσει περισσότερο από το παράθυρο συνομιλίας. Επιπλέον, μια VMWare Ubuntu μηχάνημα με την προϋπόθεση ότι έχει παράδειγμα κώδικα και σχέδια συστήσει μια δοκιμαστική έκδοση του Zend Studio. Οι συνομιλίες ηγέτης μάθημα στους συμμετέχοντες είτε σε μία ολοκληρωμένη λύση VoIP, ή μπορείτε να καλέσετε χρησιμοποιώντας ένα από τα πολλά παγκόσμια κλήσης σε αριθμούς.

Κατά τη διάρκεια του υλικού αποτελείται από μια σύντομη επισκόπηση του πλαισίου και το μοτίβο MVC πριν από τον τίτλο σε μια αίτηση στο βιβλίο επισκεπτών του δείγματος. Η συζήτηση κατέδειξε bootstrapping, Zend_Application, Db Πίνακες, Πρόσβαση σε βάσεις δεδομένων, έντυπα, φιλτράρισμα, ACL, επικύρωση, κ.λπ., κ.λπ. Βασικά καλύπτει όλα τα θέματα που θέλετε να απαιτήσει να πάρετε μια βασική ιστοσελίδα σύσταση τρέχει όλη την ώρα που σας δίνει τα εργαλεία για να πάτε και να πάρετε πιο προηγμένες στο πλαίσιο (αν και αυτό ήταν το ποσό για να «Βλ. την ιστοσελίδα« μεγάλο μέρος του χρόνου).

Ώρα δίνεται κωδικός επάνω μερικά παραδείγματα, και να αναπτύξει το «Βιβλίο Επισκεπτών» και η εφαρμογή «wiki» απλό. Προσωπικά ένιωσα ότι η παροχή από τον κωδικό ή κάθε app και στη συνέχεια να μας ζητούν να αναπτύξει αυτό που ήταν ουσιαστικά ένα αντίγραφο μαζί δεν παρείχε πραγματικά μια καλή εμπειρία εκμάθησης. Θα προτιμούσα να αναπτύξει μια εφαρμογή παρόμοια, αλλά όχι ταυτόσημες. με την εφαρμογή παράδειγμα με το πλεονέκτημα της ύπαρξης ενός οδηγού να αναφερθώ. Εναλλακτικά κτίριο των αιτήσεων από το μηδέν με το διαδηλωτή θα του οδήγησε ενδεχομένως σε περισσότερες ερωτήσεις σχετικά με το γιατί και το πώς, δίνοντας έτσι την καλύτερη κατανόηση του πλαισίου, μετά από όλα μπορείτε να αναζητήσετε λεπτομέρειες, μετά το μάθημα.

Η τελευταία διάλεξη συνίστατο εργασίας στο wiki εφαρμογή με τη βοήθεια / καθοδήγηση από τον εκπαιδευτή. Μετά την ανατροφοδότηση πορεία ελήφθη, τονίστηκε αρκετές φορές μέσα από την πορεία που Zend παίρνει ανάδραση πολύ σοβαρά, στην πραγματικότητα, προφανώς δική μας εκδοχή του μαθήματος ήταν αρκετά καινούργιο. Μερικοί από τους άλλους προγραμματιστές της εταιρείας θα αναλάβει σύντομα την πορεία και επομένως θα είναι ενδιαφέρον να δούμε αν αυτό έχει συμβεί.

Το ύφος βέβαια ήταν άτυπη, που επιτρέπεται για ανάδραση και συνεργασία μεταξύ των συμμετεχόντων και του εκπαιδευτή. Ο αρχηγός της πορεία ήταν φιλική, προσιτή (διευθύνσεις ηλεκτρονικού ταχυδρομείου μοιράστηκαν για τις ερωτήσεις), και ενώ την παρουσίασή του από τις διαφάνειες ήταν λίγο ασταθές φαινόταν απολύτως αρμόδιο, στο πλαίσιο. Ήταν σαφώς κάποιος που χρησιμοποιείται το πλαίσιο, σε τακτική βάση και όχι κάποιον που διδάσκεται για να διδάξει το μάθημα, μου άρεσε η εμπειρία «πραγματικό κόσμο» από την άποψη αυτή.

Συνολικά Αίσθημα

Κατά κάποιο τρόπο βρήκα τη διάρκεια χάσιμο χρόνου, σε άλλες ήταν πολύ βολικό. Ας ελπίσουμε ότι εγώ θα πάρω τα λόγια μου σε όλη την σαφήνεια, και ίσως παρέχει κάποια τροφή για σκέψη ή χρήσιμη ανάδραση (γνωρίζοντας μένα αυτό είναι απίθανο!).

Για τον εαυτό μου αυτό το μάθημα είχε ως στόχο σε πολύ χαμηλό επίπεδο. Έχοντας περάσει από τη Οδηγός Γρήγορης Εκκίνησης, διαβάστε Zend Rob Allen Πλαισίου στη δράση, και συνεργάστηκε με το πλαίσιο λίγο δεν πήρα τίποτα πάρα πολύ. Θα του άρεσε το μάθημα για να πάρει από το τέλος του Quickstart και να αναπτύξει πρόσθετες δεξιότητες.

Τούτου λεχθέντος, ο τίτλος μαθήματος διευκρινίζει με σαφήνεια "Zend-πλαίσιο: Fundamentals» και σε αυτή την πτυχή στο πλαίσιο επιτυγχάνει αυτό που επιδιώκει να κάνει. Άλλα μέλη της ομάδας ανάπτυξης που δεν έχουν περάσει τη στιγμή εξετάζει το πλαίσιο τελικά κάθε συνεδρία με ερωτήσεις ρώτησε τον ενθουσιασμό και το οποίο ήταν πολύ ωραίο να δούμε.

Όλα δεν χάθηκε, ήταν καλό να αφιερώσετε χρόνο επιβεβαιώνοντας τις βασικές λεπτομέρειες του πλαισίου και να πάρετε να θέσω μια δυο ερωτήσεις σε περιοχές όπου δεν ήμουν 100%. Ήταν επίσης η στιγμή που πήρα να καθίσουν κάθε μέρα και να σκεφτούμε για κωδικοποίηση χρησιμοποιώντας το πλαίσιο και τα μελλοντικά σχέδια, κάτι που δεν θα του ήταν σε θέση να κάνει αλλιώς (μπορείτε να φανταστείτε την εταιρεία σας συμφωνείτε με τα εξής:?)). Τελευταίο, αλλά αν μη τι άλλο μπορείτε επίσης να πάρετε ένα ωραίο πιστοποιητικό από Zend να πω ότι έχετε παρακολουθήσει το πρόγραμμα (αν και με email).

Zend Πιστοποίηση Πλαίσιο

Αυτό ήταν ένα ερώτημα που συνέχισαν να έρχονται στο μυαλό κατά τη διάρκεια, θα μου προετοιμασία για την πιστοποίηση; Η γρήγορη, εύκολη είναι ένα ηχηρό αριθ. Ο εκπαιδευτής φυσικά ήταν αρκετά σαφής ως προς αυτό με τα επιπλέον συμβουλές που για την πιστοποίηση θα πρέπει πραγματικά να χρησιμοποιήσετε το πλαίσιο για μια σε καθημερινή βάση και να αισθάνονται πολύ άνετα και αυτοπεποίθηση στη χρήση και τις μεθοδολογίες του.

Περίληψη

Λαμβάνοντας υπόψη όλα όσα έχω γράψει πιο πάνω, θα συνοψίσω όλα αυτά σε δύο εύκολα ακόλουθα σημεία:

  • Νέα για Zend-πλαίσιο: Το μάθημα αυτό κάνει ακριβώς αυτό που θα περιμένατε, σας δίνει μια ωραία εισαγωγή στο πλαίσιο και μια καλή γείωση για τα βασικά στοιχεία από τα οποία μπορείτε να χτίσετε. Το μάθημα φαίνεται να προκαλέσει το ενδιαφέρον και ενθουσιασμό για το πλαίσιο μεταξύ των προγραμματιστών.
  • Χρησιμοποιείται για την Zend-πλαίσιο: Αν και ήταν ωραίο να καλύψουμε μερικά από τα πολύ βασικά ένιωσα το χρόνο, προσπάθεια και κεφάλαια για να λάβει την πορεία της θα μπορούσε να ήταν καλύτερο να δαπανηθούν αλλού. Θα είναι ωραίο να see Zend δημιουργήσετε ένα νέο υψηλότερο επίπεδο βέβαια να αναλάβει την ανάπτυξη στο επόμενο επίπεδο - τουλάχιστον προς το πρότυπο πιστοποίησης και πέραν των αμέσως. Γι 'αυτό θα ήθελα να εγγραφώ.












Πανόραμα Θέμα από Themocracy

9 επισκέπτες online τώρα
7 επισκέπτες, 2 bots, 0 μέλη
Max επισκέπτες σήμερα: 14 στις 12:11 μ.μ. UTC
Αυτό το μήνα: 26 στις 05/07/2011 12:35 π.μ. UTC
Αυτό το έτος: 130 στις 28-03-2011 22:40 UTC
Όλες οι εμφανίσεις: 130 στις 28-03-2011 22:40 UTC