Redundancia, confiabilidad y tolerancia a fallas en C # - ¿dónde buscar ejemplos?

votos
4

Quiero aprender cómo crear aplicaciones verdaderamente robustas en .net, que sean tolerantes a fallas y que sean capaces de soportar situaciones inesperadas. ¿Dónde puedo encontrar literatura / orientación sobre este tema? Hasta ahora, no estoy teniendo mucha suerte.

Publicado el 09/12/2008 a las 18:09
fuente por usuario
En otros idiomas...                            


3 respuestas

votos
4

Conozco al menos un par de recursos. En primer lugar, hay un artículo muy útil en MSDN titulado Mantenga su código ejecutándose con las características de confiabilidad de .NET Framework .

Chris Brumme también tuvo una publicación en hosting cuando se diseñaron las funciones de confiabilidad. Esto puede proporcionar información de fondo útil

Los términos de búsqueda que pueden resultarle útiles incluyen "alta disponibilidad", "CER" y "regiones de ejecución restringida".

¡Buena suerte! El código verdaderamente disponible es bastante complicado. :)

Respondida el 09/12/2008 a las 18:16
fuente por usuario

votos
0

Personalmente he encontrado el artículo de Stephen Toub a ser la mejor fuente de ejecución con respecto a las regiones con restricciones: El uso de las características de fiabilidad de .NET Framework . Y al final CER son el pan de cada día de cualquier código de tolerancia a fallos por lo que este artículo contiene prácticamente todo lo que necesita saber, explicado de una manera clara y concisa.

Dicho esto se podía elegir en lugar de favorecer un diseño más radical en el que recurre inmediatamente a la destrucción del dominio de aplicación (o depender de este patrón cuando se encuentra alojado el CLR). Se podía observar el patrón de cierre, por ejemplo (y tal vez el manifiesto reactiva si está interesado en este patrón y los flujos de datos complejos frente).

Dicho esto, el "vamos a fallar" enfoque puede ser contraproducente si no se puede recuperar por completo después de que, como se demuestra por Ariane V .

Respondida el 29/09/2014 a las 21:16
fuente por usuario

votos
0

Si está mirando desde una perspectiva de implementación de software, entonces puede valer la pena buscar en Design by Contract (DbC)

Según esta fuente , los beneficios de Design by Contract incluyen los siguientes:

  • Una mejor comprensión del método orientado a objetos y, más en general, de la construcción de software.
  • Un enfoque sistemático para construir sistemas orientados a objetos sin errores.
  • Un marco eficaz para la depuración, las pruebas y, en términos más generales, la garantía de calidad.
  • Un método para documentar componentes de software.
  • Mejor comprensión y control del mecanismo de herencia.
  • Una técnica para tratar casos anormales, que conduce a una construcción de lenguaje segura y efectiva para el manejo de excepciones.

Además, recomendaría estudiar un enfoque de Desarrollo basado en pruebas (TDD) , que debería ayudar a impulsar un diseño más robusto.

Respondida el 09/12/2008 a las 18:14
fuente por usuario

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