Je veux apprendre à créer vraiment applications robustes dans .net - ceux qui sont tolérants aux pannes et sont capables de résister à des situations inattendues. Où puis-je trouver de la documentation/des conseils sur ce sujet? Jusqu'à présent, je n'ai pas beaucoup de chance.Redondance, fiabilité et tolérance aux pannes en C# - où chercher des exemples?
Répondre
Je connais au moins quelques ressources. Tout d'abord, il y a un article très utile sur MSDN intitulé Keep Your Code Running with the Reliability Features of the .NET Framework.
Chris Brumme avait également un post on hosting lorsque les fonctions de fiabilité étaient en cours de conception. Cela peut fournir des informations de base utiles
Les termes de recherche que vous pouvez trouver utiles incluent "Haute disponibilité" "CER" et "Contrained Execution Regions".
Bonne chance! Le code vraiment disponible est assez difficile. :)
Merci, je regarde à travers ce genre de choses maintenant –
Si vous êtes à la recherche d'un point de vue de la mise en œuvre du logiciel, il peut être intéressant de regarder dans Design by Contract (DbC)
Selon this source, les avantages de la conception par contrat sont les suivants:
- Une meilleure compréhension la méthode orientée objet et plus généralement la construction logicielle.
- Une approche systématique pour construire des systèmes orientés objet sans bug.
- Un cadre efficace pour le débogage, les tests et, plus généralement, l'assurance qualité.
- L'invention concerne un procédé de documentation de composants logiciels.
- Meilleure compréhension et contrôle du mécanisme d'héritage.
- Une technique pour traiter des cas anormaux, conduisant à une construction de langage sûre et efficace pour la gestion des exceptions.
En outre, je préconiserais de regarder dans une approche Test Driven Development (TDD), ce qui devrait aider à chasser une conception plus robuste.
Personnellement, j'ai trouvé que l'article de Stephen Toub était la meilleure source concernant les régions d'exécution contraintes: Using the Reliability Features of the .NET Framework. Et à la fin, CER est le pain et le beurre de tout code tolérant aux pannes, donc cet article contient à peu près tout ce que vous devez savoir, expliqué de manière claire et concise. Cela étant dit, vous pourriez plutôt choisir de privilégier un design plus radical où vous aurez immédiatement recours à la destruction du domaine d'application (ou dépendez de ce modèle lorsque le CLR est hébergé). Vous pourriez regarder le modèle de cloison étanche par exemple (et peut-être le reactive manifesto si vous êtes intéressé par ce modèle et que vous faites face à des flux de données complexes). Cela étant dit, l'approche «laissez tomber» peut se retourner contre vous si vous ne pouvez pas complètement récupérer après cela, comme demonstrated by Ariane V.
- 1. Réplication MySQL robuste tolérante aux pannes
- 2. Minuteurs EJB et fiabilité
- 3. Existe-t-il des exemples où nous avons besoin de l'héritage protégé en C++?
- 4. Vitesse/redondance des sélecteurs dans CSS
- 5. Redondance MSMQ
- 6. Comment JIT sait où chercher csc.exe?
- 7. WPF et MVVM: Des exemples utilisant VB.Net?
- 8. Où puis-je trouver des exemples de "Soupe de rêve"?
- 9. Socket Programmimg en C, ont besoin des exemples de code et des tutoriels
- 10. Exemples d'interprètes intégrés aux applications iPhone?
- 11. Ces exemples sont-ils des fermetures C#?
- 12. Northwind traders unitprice redondance?
- 13. Exemples d'échantillons génériques C#
- 14. AOP et imbriqué aller chercher
- 15. chercher = join aux tables à une classe NHibernate
- 16. Où puis-je trouver des exemples de bsddb en cours d'utilisation?
- 17. Où trouver des exemples de codage Flash/Flex, un exemple de chronologie en particulier?
- 18. Expressions régulières dans C: exemples?
- 19. Quelle est la fiabilité de DRb?
- 20. C# aller chercher une portion du tableau
- 21. Exemples Qt et Sqlite
- 22. Qu'est-ce que le tas tolérant aux pannes de Windows 7?
- 23. IIS 7 Moniteur de fiabilité et de performances
- 24. Où puis-je trouver des exemples de macro de studio visuel?
- 25. réordonner chercher des résultats contrôleur pour UITableView
- 26. C# WebBrowser HTML avec des références aux scripts et images
- 27. Exemples de conception de serveurs réseau efficaces, écrits en C
- 28. Connexion aux événements COM en C# - prise en charge des serveurs gérés et non gérés
- 29. Où sont des exemples d'interfaces utilisateur de programme géniales construites avec Winforms?
- 30. Quelle est la fiabilité des sockets de domaine Unix?
Parlez-vous de choses qui doivent être totalement tolérantes aux fautes comme le fait un SGBDR moderne? –