Απαιτήσεις
Εγκαταστήστε βιβλιοθήκες
Δημιουργία έργου
Ενημέρωση dub.json
Ενημέρωση πηγής/app.d
Κατασκευή έργου
Κατανόηση του Vibe.d
Το Vibe.d είναι ένα πλαίσιο ιστού γραμμένο σε D, για προγραμματιστές D για την ανάπτυξη εφαρμογών ιστού και δικτύου. Ένα πράγμα για το οποίο είναι γνωστό το Vibe.d είναι η ικανότητα ανάπτυξης και ανάπτυξης διακομιστών. Σε αυτό το άρθρο, θα σας δείξουμε πώς να ρυθμίσετε το Vibe.d στο Ubuntu 14.04 x64. Αυτό θα πρέπει να λειτουργεί και στο Ubuntu 12.04 και στο 14.10, αλλά τα αποτελέσματα μπορεί να διαφέρουν.
Απαιτήσεις
- Vultr VPS με Ubuntu 14.04 x64.
- Βασικές γνώσεις Δ.
- Έχετε εγκαταστήσει DMD , LDC ή GDC (συνιστάται DMD).
- Έχετε DUB εγκατασταθεί.
Εγκαταστήστε βιβλιοθήκες
Πριν ξεκινήσετε, θα χρειαστεί να εγκαταστήσετε μερικές εξαρτήσεις έτσι ώστε το έργο σας να κατασκευαστεί:
apt-get install libssl-dev libevent-dev
Δημιουργία έργου
Χρησιμοποιώντας το dub, δημιουργήστε ένα έργο εκτελώντας την ακόλουθη εντολή σε έναν κατάλογο:
dub init server vibe.d
Αυτό που θα κάνει είναι να δημιουργήσει ένα νέο έργο με το πρότυπο Vibe.d ενσωματωμένο στο dub.
Εκσυγχρονίζω dub.json
Όπως και package.jsonγια το NPM (Node.js), dub.jsonαποθηκεύει πληροφορίες σχετικά με την εφαρμογή σας που θα χρησιμοποιηθούν για τη δημιουργία ή την ανάπτυξη. Μέσα στο dub.jsonαρχείο σας , μπορεί να δείτε κάτι παρόμοιο με:
{
"name": "server",
"description": "A simple vibe.d server application.",
"copyright": "Copyright © 2014, root",
"authors": ["root"],
"dependencies": {
"vibe-d": "~>0.7.19"
},
"versions": ["VibeDefaultMain"]
}
Εάν θέλετε, μπορείτε να αλλάξετε το όνομα, την περιγραφή, τα πνευματικά δικαιώματα, τον συγγραφέα και ούτω καθεξής. Προς το παρόν, θα επικεντρωθούμε στα δεδομένα της dependenciesενότητας. Αλλάξτε την τρέχουσα έκδοση από 0.7.19σε 0.7.21. Αυτό θα διασφαλίσει ότι χρησιμοποιείτε την πιο πρόσφατη έκδοση του Vibe.d. Αφού αλλάξετε την έκδοση και αποθηκεύσετε το αρχείο, μπορείτε να προχωρήσετε στο επόμενο βήμα.
Ενημέρωση πηγής/app.d
Μέσα στο source/app.dαρχείο σας , θα πρέπει να δείτε μια γραμμή που δείχνει:
settings.bindAddresses = ["::1", "127.0.0.1"];
Αυτό ορίζει τη διεύθυνση της οποίας θα ακούσει ο διακομιστής. Σε αυτήν την περίπτωση, χρησιμοποιούνται οι διευθύνσεις επαναφοράς ::1(IPv6) και 127.0.0.1(IPv4). Έχετε κάποιες επιλογές εδώ. Μπορείτε να αλλάξετε τις διευθύνσεις σε μια δημόσια IP διαθέσιμη στο Vultr VPS σας ή μπορείτε να σχολιάσετε αυτήν τη γραμμή για να ακούσετε οποιαδήποτε διαθέσιμη διεύθυνση. Είναι καθαρά δική σας επιλογή, αλλά προς το παρόν αλλάξτε 127.0.0.1σε 0.0.0.0για να αποφύγετε οποιαδήποτε σύγχυση. Αυτό θα κάνει την εφαρμογή σας να ακούει σε οποιαδήποτε IP έχει εκχωρηθεί στον διακομιστή.
Κατασκευή έργου
Εκτελέστε την ακόλουθη εντολή για να δημιουργήσετε την εφαρμογή σας:
dub build
Αυτό θα περάσει από τη διαδικασία ανάκτησης των εξαρτήσεων σας, δημιουργίας τους και, στη συνέχεια, δημιουργίας της εφαρμογής σας. Μόλις ολοκληρωθεί (υποθέτοντας ότι δεν υπάρχουν σφάλματα), θα πρέπει να καλέσετε ένα αρχείο serverστη ρίζα του καταλόγου σας. Εκτελέστε το κάνοντας ./serverκαι θα δείξει τα εξής:
Listening for HTTP requests on ::1:8080
Listening for HTTP requests on 0.0.0.0:8080
Please open http://127.0.0.1:8080/ in your browser.
Εάν δεν βλέπετε μήνυμα αποτυχίας, προχωρήστε στο πρόγραμμα περιήγησής σας και εισαγάγετε τη διεύθυνση IP καθώς και τη θύρα. Για παράδειγμα: http://0.0.0.0:8080με 0.0.0.0άλλαξε ανάλογα.
Εάν βλέπετε Hello, World!στο πρόγραμμα περιήγησής σας, τότε έχετε εγκαταστήσει με επιτυχία το Vibe.d στον διακομιστή σας.
Κατανόηση του Vibe.d
Ανάπτυξη διακομιστή
Το Vibe.d προχώρησε πολύ, γεγονός που παρείχε έναν τρόπο στους προγραμματιστές να αναπτύξουν εφαρμογές που βασίζονται σε διακομιστή. Αυτό περιλαμβάνει εφαρμογές διακομιστή ιστού, τις οποίες το Vibe.d υποστηρίζει εγγενώς.
Πρότυπα διατροφής
Όσον αφορά την ανάπτυξη ιστού, τα πρότυπα διατροφής βασίζονται αποκλειστικά στο Jade, εκτός από το ότι τα πρότυπα διατροφής συγκεντρώνονται απευθείας στην εφαρμογή σας. Αυτό χρησιμοποιεί το D μέσα στο έργο σας (Όπως ακριβώς μπορείτε να χρησιμοποιήσετε την ενσωματωμένη Javascript μέσα στο Jade). Η χρήση προτύπων διατροφής προσθέτει ευελιξία στο περιεχόμενο που εμφανίζει η εφαρμογή σας στο πρόγραμμα περιήγησης ιστού.
Εκτέλεση
Όσον αφορά την απόδοση, το Vibe.d έχει δείξει ότι κλιμακώνεται σε πολύ υψηλό επίπεδο. Με το ασύγχρονο I/O του, δημιουργεί μια επιβάρυνση μνήμης που είναι πολύ χαμηλότερη από αυτή που θα βρίσκατε συνήθως σε εφαρμογές που γίνονται με Node.js, Java και Python. Απαιτείται μόνο ένα νήμα υλικού για τον χειρισμό του αριθμού των ταυτόχρονων λειτουργιών.