Definition
Edge containers are decentralized computing resources located as close as possible to the end user in order to reduce latency, save bandwidth, and enhance the overall digital experience.
Overview
The number of devices with access to the Internet increases every day. We have smart TVs, smart homes, smartphones, smart cars, and a thousand other smart things that the IoT revolution has created. On top of that, mobile users account for more than half of the internet traffic since 2015.
Most users run time-sensitive applications and lag diminishes the quality of the user experience. Far-off centralized cloud services suffer from high latency and are often the culprits of poor application performance. Edge computing was developed to bring data processing closer to the user and solve network-related performance issues.
Edge containers, specifically, allow organizations to decentralize services by moving key components of their application to the edge of the network. By shifting intelligence to the edge, organizations can achieve lower network costs and better response times.
How Edge Containers Work
Containers are easy-to-deploy software packages and containerized applications are easily distributed, making them a natural fit for edge computing solutions. Edge containers can be deployed in parallel to geographically-diverse points of presence (PoPs) to achieve higher levels of availability when compared to a traditional cloud container.
The main difference between cloud containers and edge containers is location. While cloud containers run in far-off continental or regional data centers, edge containers are located at the edge of the network, much closer to the end-user.
Because the main difference is location, edge containers use the same tools as cloud containers so developers can use their existing Docker expertise for edge computing. To manage containers, organizations can use a Web UI, terraform, or a management API.
Edge containers can also be monitored with probes and their usage can be analyzed with real-time metrics.
Advantages of edge containers
- Low latency: edge containers provide exceptionally low latency because they’re located just a few hops away from the end user.
- Global load balancing: traffic can be globally distributed to the nearest container with a single Anycast IP.
- Scalability: an edge network has many more PoPs than a centralized cloud. As a result, edge containers can be deployed to multiple locations at once, giving organizations the chance to better meet regional demands.
- Maturity: container technologies such as Docker are considered mature and battle-tested. In addition, no retraining is required so developers testing edge containers can use the same Docker tools they are familiar with.
- Reduced bandwidth: centralized applications can have high network charges because all traffic is concentrated in the cloud vendor’s data center. Edge containers are close to the user and can provide pre-processing and caching.
Disadvantages of edge containers
- Complexity: having multiple containers spread among many regions requires careful planning and monitoring.
- Increased attack surface: the size of the network makes the attack surface more extensive so configuring secure network policies is essential.
- Network charges between PoPs: in addition to regular ingress and egress charges, edge containers have separate charges for traffic between PoPs which need to be considered.
Edge containers vs other edge computing solutions
- Vs. Edge Serverless: serverless functions are easier to deploy but developers are limited to the runtimes and languages provided by vendors. Containers, on the other hand, can run any custom application in any language. Serverless has a pay-as-you-go model while containers have more of a flat monthly rate.
- Vs. Edge VMs: both containers and VMs have a flat monthly rate based on machine size. VMs provide a full-featured machine which brings more flexibility to developers but has the associated burden of OS management. Also, VMs require patching and system administration while the underlying systems in containers are managed by the vendor.
Examples of Edge Containers
Edge computing can make a difference that puts companies ahead of the competition. In 2019, Edgegap, a disruptive gaming startup, released a gaming platform that used real-time telemetry and edge containers to reduce latency by 58%.
The patented Edgegap solution uses the strength of many locations deployed in an edge computing environment to dynamically locate the instance of multiplayer games, reduce latency, and improve the overall player experience.
Edge containers not only serve the multiplayer gaming space. Other uses cases for edge containers include:
- Internet of Things (IoT) devices
- Real-time video and voice recognition
- Real-time analytics
- Real-time processing of sensor and telemetry data
- Augmented reality
- Video and audio streaming
Key Takeaways
- Edge containers give developers freedom to choose the best language and framework for the job while keeping a low operational overhead.
- Edge containers are best placed to serve real-time or latency-sensitive applications.
- Edge containers can reduce cloud costs by offloading processing and providing caches.
- Anycast IPs and edge containers can be combined to achieve a globally distributed network.