Los microservicios agregan pruebas adicionales para realizar. No solo a nivel de software, como las pruebas unitarias, sino a nivel de red.
Deberá probar sus servicios con múltiples servicios que no responden de manera oportuna, servicios críticos que no obtienen conexiones y cómo falla cada servicio individual en ese tipo de condiciones.
Idealmente, desea que un servicio falle rápidamente y con gracia. Si un servicio no crítico no responde en 300 ms, encienda un disyuntor y comience a poner en cola el trabajo que se realizará más tarde. Si falla un servicio crítico, voltee un disyuntor y devuelva un error 5xx apropiado.
- Como estudiante a punto de comenzar a estudiar arquitectura, ¿cuáles son algunos consejos sobre la carrera en sí?
- ¿Cómo representar gráficamente el flujo de clientes en entornos interiores?
- ¿Cuál es la lista de los 5 NIT principales para un B.Arch? ¿rama?
- ¿Cuáles son algunas ideas revolucionarias para hacer una ciudad "inteligente"?
- ¿El desarrollo de New Waverley es apropiado para el casco antiguo medieval de Edimburgo, Patrimonio de la Humanidad?
Cualquier servicio de consumo debe tener esos controles de seguridad en su lugar o se encontrará en un mundo de dolor algún día, probablemente a las 3 am.
Tener una identificación de transacción en todas las solicitudes (preferiblemente dada por la puerta de enlace API) lo ayudará a rastrear dónde algo salió terriblemente mal.
Los disyuntores (y una interfaz de administración para ver en qué estado se encuentran) también lo beneficiarán enormemente. Si construyes esa interfaz para poder voltearlas manualmente, también puede ahorrarte un día.
Las aplicaciones monolíticas realmente no tienen este problema y, por esa razón, generalmente son más fáciles de probar. Los problemas de red en el mundo de los microservicios pueden convertirse rápidamente en problemas masivos (que resultan en interrupciones). Idealmente, querrás que la aplicación se degrade con gracia antes de que se caiga, que es algo que los microservicios pueden darte si la incorporas.