Θα NHibernate να χρησιμοποιηθούν σε έργα μεγάλης κλίμακας, όπως για παράδειγμα το facebook; (Για τα επιχειρήματα χάρη)

ψήφοι
4

Για εκείνους που γνωρίζουν τις εσωτερικές λειτουργίες των NHibernate, νομίζετε ότι μια μεγάλης κλίμακας εφαρμογή web, όπως λένε facebook / myspace θα χρησιμοποιήσει NHibernate;

Ή NHibernate κατάλληλη για πιο χαμηλές περιοχές κυκλοφορίας όπως sites της εταιρείας κλπ; δηλαδή να μην επιχείρησης έτοιμη λόγω της ομιλητικός χαρακτήρα του;

Δημοσιεύθηκε 18/05/2009 στις 12:42
πηγή χρήστη
Σε άλλες γλώσσες...                            


3 απαντήσεις

ψήφοι
9

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

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

NHibernate είναι αρκετά ελαφρύ σε σύγκριση με άλλα ORM και σε σχέση με αυτό είναι ισχυρά χαρακτηριστικά.

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


Επεξεργασία:

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

Απαντήθηκε 18/05/2009 στις 13:05
πηγή χρήστη

ψήφοι
1

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

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

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

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

Απαντήθηκε 11/12/2012 στις 13:54
πηγή χρήστη

ψήφοι
0

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

Αυτό είναι όλα μια μεγάλη βοήθεια, αλλά εφ 'όσον είστε το χτύπημα μιας βάσης δεδομένων με ένα μεγάλο φορτίο, θα έχετε την ευκαιρία να έχουν την κλιμάκωση των προβλημάτων. Ο καλύτερος τρόπος για να αναβαθμίσουν μιας βάσης δεδομένων είναι να ελαχιστοποιηθεί ο χρόνος που πραγματικά πρέπει να το χρησιμοποιήσετε. Κατανεμημένα μνήμη cache, όπως memcache, και την προσωρινή αποθήκευση εξόδου (είτε μετά datacrunched απόψεις ή html) σας είναι οι καλύτεροι τρόποι για να αναβαθμίσουν την αίτηση. Εάν οι πελάτες χτύπημα τακτικά τη βάση δεδομένων, κάνετε λάθος, ORM ή όχι. Σε μια εφαρμογή .NET, όπως μια τυπική εφαρμογή MVC, έχει τα πλεονεκτήματα του να είναι σε θέση να χρησιμοποιήσει varyby cache εξόδου, ντόνατ και ντόνατ-τρύπα caching, καθώς και τους πελάτες για memcache να χρησιμοποιηθεί με NHibernate και για ViewModels σας.

Απαντήθηκε 06/03/2013 στις 20:58
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more