¿Docker resuelve la disponibilidad de conexión al problema de la nube?

Cada solución puede mejorar las cosas, pero nunca resolverlas por completo.

Piénselo de esta manera: mucho tiempo atrás solo había 1 servidor, si se caía su servicio se caía. Los servidores son hardware: se romperán en algún momento.

Ahora, nadie piensa en tener solo 1 servidor; siempre desea tener varias instancias para aumentar la disponibilidad. ¿Significará esto que el problema original es que el servidor único que está cayendo está resuelto? No, el nodo único aún puede fallar, pero el segundo servidor se hará cargo. No al instante, pero tal vez pueda crear una solución de manera que el cliente no se dé cuenta.

Igual que en el caso del protocolo UDP: no es confiable ya que puede perder paquetes. Además, puede agregar retransmisión y hacer que sea como TCP, lo que lo hará más confiable.

La red subyacente puede proporcionar disponibilidad de 4 nueves (99,99%). Además, siempre puede crear una solución que proporcione 5 nueves (99.999%).

Docker es solo una infraestructura de contenedor que proporciona una abstracción adicional. Por sí solo no resuelve el problema. Siempre puede crear varias instancias de máquinas virtuales y conectarlas en un anillo a través de Windows Fabric u otras soluciones similares. Posible acoplable también tiene algo así (¿Enjambre?). Esto le permitirá construir un ‘9’ adicional sobre lo que proporciona la red central. Sin embargo, su aplicación debe ser consciente de esto: este es un paradigma de pensamiento completamente diferente.

Sugiero mirar en Paxos y Windows Fabric.

Trato a Docker más como una infraestructura ‘contenedor’ que proporciona abstracción, por lo que puedo ejecutar el mismo código con cambios mínimos (o cero) en Azure o AWS o GC o etc.

Respuesta corta, no. Docker no es mágico.