While Netflix delivers hundreds or even thousands of app software updates daily via microservices, broadcasters aren't quite there yet. But what broadcasters are ready for is the agility and efficiency microservices bring to their operation.
What is a microservice and what does it do?
Microservices are not so much a 'what' as they are a 'how.' They're a way of designing software to meet a specific need. In other words, it's part of the service-oriented architecture (SOA) style that delivers the following benefits:
- Loosely coupled services: These services are separate from other parts of the system. This means a single service can be changed and or updated at any time without disrupting the main operation of the system. This allows for quicker delivery of new features and bug fixes (hence, the Netflix story above).
- Agility and efficiency: Allowing customers to be more agile in how they use products and pay for only what they use.
- Bounded context: A single microservice is responsible for a single function or a single problem.
Microservices can provide a solution to broadcasters to optimize the platform they're running without using RAM and compute functions they don't need and act as a means to orchestrate the functionality of their system. It's the notion of rapid scaling, to infinity if you want to, that makes microservices attractive.
Let's use this analogy to describe microservices: microservices are the difference between cattle and pets. Pets are given a name, we give them special beds and food and toys and they are a focus of much individual attention. On the other hand, cattle are not named and don't require 1:1 care so their value is not as an individual, but their place in the herd. Microservices are very similar in that they can easily be replaced for something new/different without disrupting your overall system, which is ideal in the case of software updates.
Software updates are a big deal for broadcasters. Most do a big bang upgrade where servers are stopped, requiring a maintenance window and the hope nothing goes wrong. Sometimes they even need to go off air overall it's a lot of time and trouble, especially for consumers you can't use your smartphone while it's doing an Android system update. With microservices, broadcasters and media organizations can do continuous integration and delivery to single functions, so upgrades can be pushed out at any time, features can be added and bug fixes can be applied, thereby de-risking the system, and keeping their channels on-air for high availability.
Moreover, continuous deployments like those outlined above can be rolled out as the organization chooses. In other words, they can start with a traditional software roll out where they deploy multiple updates and bug fixes, then move to real-time updates daily or whatever cadence they're most comfortable with.
On-premise or Public Cloud
Microservices can be deployed either at your location or in a private data center, however if selecting to host on-premise, the platform will require an IT-centric specialist trained in microservices to manage and run the infrastructure. Using the public cloud, however, removes that responsibility from broadcasters
There are risks associated with cloud-based architectures, including the lack of in-house knowledge of an IT-centric infrastructure, like understanding the type of hardware needed for an on-premise cloud infrastructure and the most visible risk... security. But these risks are easily overcome with knowledge of how to build the right infrastructure for your particular needs and staffing it with IT-centric engineers. Security risks are minimized in on-premise architectures and quite honestly, there are even fewer risks using a public cloud system.
Benefits Far Outweigh the Risks
- Cost efficiency
- Remote hosting of services
- Instant deployment
- Instant upgrades (burst consumption model)
- Scale up or down as business needs change
The basic theme for microservices is simple we can get more features out quicker, so, as a manufacturer, if we decide to put a new function/feature into a product, we can deploy it quickly. Microservices for some aspects of your broadcast environment simplifies the workflow and workloads in different areas, but it moves complexity into the orchestration as well and that's not a trivial matter.
Can Microservices Move CAPEX to OPEX?
Microservice architecture sounds like a huge cost advantage for broadcasters and it is... in most cases. But let's be honest, moving to an entirely cloud-based system is probably unrealistic for most, as broadcasters have control rooms full of physical assets that, while they want to move to a more simplified system, leave them set on a pretty sure course. So how do media organizations begin to adopt microservices?
Where to Start?
For those starting with a greenfield facility it's a much easier task, but for those with an established broadcast facility this could mean opting to dip their toe in the water with disaster recovery or pushing editing tools to the cloud. And for smaller broadcasters looking to start out, there's no reason why they wouldn't be delivering services via the cloud. It's much more cost-efficient although it comes back to the previous point of making sure you have the right people with the right skills to manage a cloud and microservices architecture.
The flexibility of microservices is something we believe broadcasters will be looking to implement over time and can certainly level the playing field
Grass Valley is Ready
Grass Valley has been working to build cloud-native, microservice-based architectures for a number of years. Today, we have GV Platform, which is completely microservices-based and being introduced into our product line with products like iTX Flex, and it's this new foundation that our products are built on.
Our customers look to Grass Valley for the next steps in technology that will keep them competitive. Do they ask for microservices? It is becoming a checkbox on RFPs and our customers want to know if it's on our roadmap, but our customers purchase products based on features and quality that ensures they have what they need to solve their business problems today with the flexibility to solve future business challenges and Grass Valley delivers on this, with microservices as a way for us to achieve this.
- Ian, Drew, Karl