Dapper (Distributed και Parallel Program Διάρκεια Εκτέλεσης) είναι ένα εργαλείο για την εξημέρωση της πολυπλοκότητας της ανάπτυξης για μεγάλης κλίμακας cloud computing και του δικτύου, επιτρέποντας στο χρήστη για τη δημιουργία κατανεμημένων υπολογισμών από τα βασικά - ο κώδικας που θα execut
Γιατί Dapper;
Ζούμε σε ενδιαφέροντες καιρούς, όταν ανακαλύψεις στον τομέα των επιστημών εξαρτώνται όλο και περισσότερο από την αυξανόμενη διαθεσιμότητα και την αφθονία της εμπορευματοποιημένης, δικτυωμένων υπολογιστικών πόρων. Με τη βοήθεια του σύννεφου ή πλέγμα, οι υπολογισμοί που διαφορετικά θα τρέξει για ημέρες σε ένα μηχάνημα desktop τώρα έχουν διανεμηθεί ή / και παράλληλες σκευάσματα που μπορούν να βγάλεις μέσα, μέσα σε λίγες ώρες, είσοδος θέτει δέκα φορές μεγαλύτερο σε εκατό μηχανές . Όπως δελεαστική η ιδέα της δύναμης των αριθμών μπορεί να είναι, έχοντας μόλις φυσικό υλικό δεν είναι αρκετό - ένας προγραμματιστής πρέπει να δημιουργήσει την πραγματική υπολογισμού που θα τρέξει σε αυτό. Κατά συνέπεια, η υψηλή αξία που αποδίδεται στην ανθρώπινη προσπάθεια και δημιουργικότητα απαιτεί ένα περιβάλλον προγραμματισμού που επιτρέπει, και μάλιστα ενθαρρύνει, σύντομη έκφραση των κατανεμημένων υπολογισμών, και όμως την ίδια στιγμή δεν θυσιάζει την γενικότητα.
Dapper, στέκεται για Κατανεμημένα και εκτέλεση παράλληλων προγραμμάτων χρόνου εκτέλεσης, είναι ένα τέτοιο εργαλείο για τη γεφύρωση υψηλών προδιαγραφών επίπεδο του επιστήμονα / προγραμματιστή που συλλαμβάνει την ουσία του προγράμματος, με τους μηχανισμούς χαμηλού επιπέδου που αντανακλά τις πραγματικότητες ανούσιος των κατανεμημένων και παράλληλων υπολογιστών. Υπό ροής δεδομένων προσανατολισμένη προσέγγιση, Dapper επιτρέπει στους χρήστες να κωδικοποιήσουν σε τοπικό επίπεδο σε Java και να εκτελέσει σε παγκόσμιο επίπεδο σχετικά με το σύννεφο ή πλέγμα. Ο χρήστης γράφει πρώτα codelets, ή μικρά τμήματα του κώδικα που εκτελεί απλές εργασίες και δεν κάνει, από μόνα τους, αποτελούν ένα πλήρες πρόγραμμα. Στη συνέχεια, αυτός ή αυτή καθορίζει πώς αυτές οι codelets, θεωρείται ως κορυφές στην ροή των δεδομένων, τη μετάδοση δεδομένων μεταξύ τους μέσω άκρη σχέσεις. Το κατευθυνόμενο γράφημα άκυκλων ροής δεδομένων είναι ένα πλήρες πρόγραμμα ερμηνεύσιμη από το Dapper server, η οποία, μόλις έρθει σε επαφή με τους πελάτες μακράς διάρκειας ζωής των εργαζομένων, μπορούν να συντονίσουν μια κατανεμημένη εκτέλεση.
Σύμφωνα με το Dapper μοντέλο, ο χρήστης δεν χρειάζεται πλέον να ανησυχείτε για παραδοσιακά ad-hoc πτυχές της διαχείρισης της σύννεφο ή πλέγμα, το οποίο περιλαμβάνει το χειρισμό διασυνδέει τα δεδομένα και τις εξαρτήσεις, την ανάκτηση από λάθη, διανομή κώδικα, και την έναρξη της απασχόλησης. Ίσως το πιο σημαντικό, παρέχει μια ολόκληρη βασίζονται σε Java εργαλειοθήκη και εκτέλεσης για τη διαμόρφωση σχεδόν όλα χονδρόκοκκη διανέμονται υπολογισμούς με συνεπή μορφή που επιτρέπει την ταχεία ανάπτυξη και εύκολη μεταφορά σε άλλους ερευνητές.
Χαρακτηριστικά :
- Ένα σύστημα διανομής κώδικα που επιτρέπει το Dapper διακομιστής για τη μετάδοση απαιτούμενη κώδικα του προγράμματος μέσω του δικτύου και έχουν πελάτες δυναμικά το φορτώσετε. Μια συνέπεια αυτού είναι ότι, εκτός από την εξωτερική εκτελέσιμα, ενημερώσεις σε Dapper προγράμματα θα πρέπει να συμβεί μόνο στην πλευρά του διακομιστή.
- Μια ισχυρή μέθοδος μερικό ρεύμα ενσωμάτωσης για τη δυναμική τροποποίηση του dataflow γράφημα κατά το χρόνο εκτέλεσης.
- Ένα χρόνο εκτέλεσης σε βανίλια Java, μια γλώσσα που πολλοί δεν είναι εξοικειωμένοι με την αμφιβολία. Εκτός από την απαίτηση της πρόσφατης JVM και προαιρετικά Graphviz Dot, Dapper είναι αυτοδύναμη.
- Ένα ισχυρό πρωτόκολλο ελέγχου. Η Dapper διακομιστής αναμένει οποιοδήποτε αριθμό των πελατών να αποτύχει, ανά πάσα στιγμή, και έχει δυνατότητα προσαρμογής των πολιτικών εκ νέου την εκτέλεση και τη λήξη χρόνου για να αντιμετωπίσουν την κατάσταση. Ως εκ τούτου, μπορεί κανείς να ξεκινήσει και να σταματήσει (μακράς διάρκειας) πελάτες χωρίς φόβο να θέσει ολόκληρο το σύστημα σε ασυνεπή κατάσταση.
- Ευέλικτη σημασιολογία που επιτρέπουν τη μεταφορά δεδομένων μέσω αρχείων ή TCP ροές.
- Η διαλειτουργικότητα με τις αντιπυρικές ζώνες. Από το τοπικό νέφος ή πλέγμα σας κάθεται πιθανώς πίσω από ένα firewall, έχουμε επινοήσει ειδική σημασιολογία για streaming τη μεταφορά δεδομένων.
- Φιλελευθέρων όρους αδειοδότησης. Dapper απελευθερώνεται υπό την LGPL για να αποτραπεί η μόλυνση των codebase σας.
- Λειτουργία ως ενσωματωμένη εφαρμογή. Ένα εγχειρίδιο περιγράφει την API προγραμματισμού που οι χρήστες μπορούν να ακολουθήσουν για να τρέξει το Dapper εξυπηρετητή μέσα από μια εφαρμογή όπως το Apache Tomcat.
- Λειτουργία ως αυτόνομη διεπαφή χρήστη. Με αυτό, μπορεί κανείς να τρέξει off-the-shelf demos και να μάθουν βασικές έννοιες από οπτικά παραδείγματα. Ακολουθώντας ένα ελάχιστο σύνολο των συμβάσεων, μπορεί κανείς να συνδυάσει στη συνέχεια τη δική Dapper προγράμματα του ατόμου ως αρχεία εκτέλεσης, και στη συνέχεια να πάρει σε πραγματικό χρόνο την κατάσταση ροής δεδομένων και τον εντοπισμό σφαλμάτων ανατροφοδότηση.
Τι είναι καινούργιο σε αυτή την έκδοση:
- Η μέθοδος ServerLogic # closeIdleClients έχει αλλάξει ώστε να ταιριάζει καλύτερα το διαισθητική αντίληψη του χρήστη απραξίας.
- Έχει προστεθεί η επιλογή του χρήστη για τον καθορισμό όνομα του server.
- Εσωτερικά δικτύωσης έχουν αναδιατυπωθεί να χρησιμοποιήσουν νέα APIs.
- Η διαδικασία κατασκευής έχει ενημερωθεί για την υποστήριξη τόσο 32- και 64-bit των Windows cross-κατάρτιση.
- Το κομψό. * Ιεραρχίας έχει μετονομαστεί σε org.dapper. *.
Τι είναι καινούργιο στην έκδοση 0.96:
- Προστέθηκε την αφαίρεση FlowListener, έτσι ώστε οι χρήστες μπορούν τώρα συνεργάτης μεταδεδομένων με ροών δεδομένων και των κόμβων τους.
- Διορθώθηκε διαρροή μνήμης στο Dapper server.
- Προστέθηκε ετικέτες apiviz doclet έτσι ώστε οι σχέσεις μεταξύ των κατηγοριών μπορούν να απεικονιστούν καλύτερα.
- Προστέθηκε apiviz για την απεικόνιση των εξαρτήσεων σε Javadoc.
- Διορθώθηκε ένα μικρό σφάλμα στην BuildAndTest εκτελέσιμο.
- Η διαδικασία κατασκευής είναι τώρα πλήρως ενσωματωμένη με Apache Ivy. Η διανομή του πηγαίου κώδικα τώρα πλέον τα πλοία της SST. Αντ 'αυτού, οι εξαρτήσεις αυτόματα? ελλείψει αυτού, μπορεί κανείς να κατεβάσετε τον κώδικα SST, μεταγλώττιση, και να δημοσιεύουν σε ένα τοπικό αποθετήριο. Δείτε το εγχειρίδιο χρήσης για περισσότερες λεπτομέρειες.
- Ενημέρωση διαδικασία κατασκευής και αφαιρείται περιττή βήματα.
- Κανονικοποιημένη πνευματικών δικαιωμάτων και αδειών ανακοινώσεις σε όλα τα αρχεία.
- Java 1.6 είναι πλέον απαιτείται για την κατασκευή και λειτουργία.
- Αλλαγή κατασκευής διαδικασία για να χρησιμοποιήσετε το Apache Ivy, πράγμα που σημαίνει ότι οι εξωτερικές εξαρτήσεις δεν χρειάζεται πλέον να συσκευάζονται με την κύρια διανομή SST.
- «Doxygen« στόχος Προστέθηκε για να χτίσει τη διαδικασία, έτσι ώστε φυσικά συστατικά μπορεί να τεκμηριωθεί.
Τι είναι καινούργιο στην έκδοση 0.95:
- έχει προστεθεί μια νέα, ευέλικτη υποδομή υλοτομία
- αρχικοποιήσεις για τις δομές καταγραφής έχουν μετακινηθεί από τις τάξεις διακομιστή και πελάτη και σε οδηγούς.
- Οι Μηχανές πεπερασμένων καταστάσεων έχουν ενημερωθεί για το νέο σχολιασμό γνώμονα API.
- Ο πηγαίος κώδικας έχει εξομαλυνθεί να έχει 8 θέσεις αντί των καρτελών.
Τι είναι καινούργιο στην έκδοση 0.94:
- Επιλογές γραμμής εντολών για τον πελάτη και server είναι τώρα διαθέσιμα, ευγένεια της βιβλιοθήκης Apache Commons CLI.
- Ο κύκλος ζωής της διαδικασίας του πελάτη ορίζεται πλέον ως τελειώνει όταν μια αποσύνδεση από το διακομιστή συμβαίνει.
- Stem λειτουργικότητα γενιά έχει μετακινηθεί από το να είναι μια μέθοδος μέλος της OutputHandleResource να είναι μια στατική μέθοδος CodeletUtilities.
- Η FlowNodeFactory κλάση χρησιμοποιείται υπέρ της άμεσης στιγμιότυπο FlowNodes.
- Κτίριο φυσικά συστατικά, έχει μεταναστεύσει στο CMake.
- Καταγραφή έχει μεταναστεύσει σε SLF4J.
- Ένα README έχει προστεθεί σε όλες τις διανομές.
Τι είναι καινούργιο στην έκδοση 0.93:.
- Σημαντικά βελτιωμένη παιδαγωγική παραδείγματα
- Ενημέρωση του εγχειριδίου.
- Προστέθηκε ρουτίνες ευκολία στη dapper.codelet.CodeletUtilities για την αναζήτηση πόρων.
- Αφαιρέθηκε Γεννήτρια, FileEdge, FileBatchGenerator, FileBatchEdge, FileResource, και FileBatchResource. Έχουν αντικατασταθεί με την έννοια της αφηρημένης λαβές δεδομένων με τη μορφή της HandleEdge, InputHandleResource, OutputHandleResource. Ανατρέξτε στο εγχειρίδιο για τις αλλαγές.
- Ενημέρωση dapper.codelet.Resource να εξάγουν τα ρεύματα εισόδου και εξόδου.
Απαιτήσεις :
- Java 2 Standard Edition Runtime Environment
Τα σχόλια δεν βρέθηκε