a single application as a suite of small, connected, services” “Loosely coupled service orientated architecture with bounded contexts” - Adrian Cockcroft
• Many can be run on a single host without impacting each other • Quick to launch and kill • Easy to integrate in your CI solution • Containers are portable and lightweight
change your application • Software network layer 2 and 3. You can use your regular operational tools • No assumption about anything like which Weave node should start before another
synchronization protocol • Nodes don’t have to agree, things can start in any order • If your application depends on some synchronization/election, then go one level above and use Zookeeper, etcd, consul
use cases for service discovery • Automatically (de)register services using DNS • Container Health - WeaveDNS monitor container and remove it if it dies
of having to allocate IP for each containers • Fast Data path, improve network performance by using OpenVSwitch module in linux kernel. • Working with Docker team to create an extension API, removing need for a weave script that wrap the docker command