Bonjour !
Je cherche une librairie pour faire de l'ORM du style NHibernate, je suis actuellement coincé.
Je suis en train de coder un serveur de jeu, pour être précis j'ai besoin de 2 base de données, la première sera accédée par 2 serveurs, l'autre sera accédée par 3 serveurs.
J'ai utilisé Fluent.NHibernate pendant plusieurs mois, et je ne lui reproche pas grand chose, si ce n'est son temps de démarrage trop important (même en utilisant la sérialisation de configuration) et le fait de ne pas faire de "migration" de la base de données (obligé de recréer les BDD à chaque changement de schéma ..). En général il me fallait à peu près 15 secondes.
J'ai tenté Entity Framework hier et j'ai déjà beaucoup plus de choses à reprocher notamment:
- Ne pas pouvoir utiliser les types non signés
- La lenteur encore plus hallucinante
- Etre forcé à utiliser une clé primaire
et j'en passe sûrement ...
Pour ce qui est de la lenteur de EF6, voici mes tests:
Compilation en release, x64, NET Framework 4.5.2 + RyuJIT
3 entités
Temps pour context.Database.Initialize = 62 864 ms
2è essai = 47 242 ms
Consommation RAM: 37Mo
Je sais bien qu'il y a pas mal de boulot dérrière, mais je suis encore en développement de mon serveur, je ne peux pas me permettre 1 minute d'initialisation dans la mesure où je dois redémarrer mon serveur à peu près toutes les 2 minutes. Qu'est-ce que ça sera quand j'aurais une vingtaine d'entités, et une fois que ma DB sera sur un serveur distant .. ?
Si vous pouvez me conseiller, merci![]()
Partager