Founded in 2013, Buzzdial builds technologies that enable publishers and broadcasters, as well as brands, to supplement television shows with a cross-screen digital experience that can be accessed on viewers’ computers, tablets and mobile phones, and integrated with the broadcast. “A massive number of people use a ‘second screen’ when watching television to undertake a range of activities,” says Ross Howard, co-founder and senior vice president of product and design at Buzzdial. “We help publishers and broadcasters engage and monetize these second screen viewers by providing content that enhances entertainment, sports, and news programs on television.” For example, Buzzdial delivered a “rate the debate” interface to smartphones, tablets, and computers that enabled viewers to express their sentiment during a United Kingdom leaders’ debate on network TV ahead of a general election.
Buzzdial needed to launch onto an infrastructure that could keep costs low during the business’s establishment stage, and increase expenditure as more clients started using the service. The organization also wanted to pay for infrastructure on demand rather than invest in servers, storage, and networking resources that would remain underutilized except during traffic peaks for an hour or two during high-profile broadcast events. The infrastructure had to be highly available and scalable to support traffic during these events. In addition, the infrastructure also had to support Buzzdial’s plans to operate in several markets, and locate its services in data centers close to prospective clients and viewers to minimize latency that could disrupt the viewers’ second screen experience during television programs.
Why Amazon Web Services
Buzzdial selected Amazon Web Services (AWS) as a cloud service provider that could meet its needs. “As we explored options during our establishment phase, AWS emerged as a frontrunner to host our services,” says Howard. “We found it extremely easy to use and massive in scale, which suited our plans to operate in Australia, Europe, the United States and other markets.” The fact AWS operated data centers around the world meant Buzzdial could provision infrastructure and deliver services from locations geographically close to broadcast events in a range of countries.
The business worked closely with AWS solution architects in New Zealand to determine the best architecture for its service. “The teams were extremely helpful in validating some of the ideas we had that made it to market. They also helped us reject options that simply were’nt going to work,” says Howard. To boost Buzzdial’s confidence, AWS shared stories about successful AWS customers, provided access to businesses that were undertaking similar projects, and demonstrated deep technical knowledge.
Buzzdial then developed the first stage of its service and created the supporting AWS architecture in four weeks. Initially the business created a monolithic web application that was not optimized for continuous development. As Buzzdial learned more about how AWS performed, its engineers opted to break the application up into a series of smaller, interoperating pieces. This process has enabled Buzzdial to pursue an agile software development process over the last 18 months, involving regular releases and continuous development.
Buzzdial’s application now runs in Amazon Elastic Compute Cloud (Amazon EC2) instances residing behind Elastic Load Balancing to distribute incoming traffic in such a way as to maximize fault tolerance and minimize latency. The application is distributed across discrete application programming interface, web delivery, caching, and database layers. Amazon Route 53 provides domain name services (DNS) that connect viewers with the required resources in AWS, while Amazon Relational Database Service (Amazon RDS) for MySQL provides a relational database engine to support the service. Caching is undertaken at the Amazon EC2 level to prevent the database infrastructure from being overloaded during periods of high demand. Buzzdial develops the application in house on Mac OS X machines and uses an Apache - Subversion - Beanstalk workflow to develop code for testing in the AWS infrastructure. The infrastructure is hosted in the US East (Northern Virginia) region.
Other services used include Amazon Simple Storage Service (Amazon S3) and Amazon CloudFront which provide a content delivery network for all static web resources including images, scripts, and style sheets. This significantly decreases load on the Amazon EC2 instances.
The figure below illustrates Buzzdial’s environment in AWS:
Buzzdial is now delivering a service that meets the demanding requirements of prominent broadcasters, brands, and rights-holders such as the Seven, Ten, and SBS television networks in Australia, ITV in Britain, the New Zealand Herald newspaper, and the All Blacks rugby union team.
The calibre of clients and importance of its second-screen service to their businesses requires Buzzdial to undertake detailed monitoring and quality assurance processes. “During a live event, we keep records of every single interaction with our application,” explains Howard. “We queue those records and store them in our databases to allow us to report back to clients on the success of their broadcast event, and also provide detailed business reports that we review internally. In addition, we monitor our application in real time as it scales up and down to check performance and error rates, and undertake extensive and aggressive load testing to predetermine its capabilities. If there any concerns, we rework the application and AWS infrastructure accordingly.”
To date, AWS has met all of Buzzdial’s needs in managing peak loads. “When we reach a load limit during testing - and these only occur when we develop a code incompatible with AWS — we’ve always found an easy answer within the AWS solution stack,” Howard says.
For events scheduled days in advance, Buzzdial can provision resources to support hundreds of thousands of concurrent users coming onboard in a 10-minute period, and scale further if needed. If a customer conducts a broadcast event but fails to notify Buzzdial, the service provider can still scale in 10 to 15 minutes to support 10s of thousands of concurrent users. The UK “rate the debate” interface engaged more than 50,000 users who declared over 32 million data points of sentiment — expressions of whether they agreed or disagreed with the views of a particular leader — during the event. Buzzdial was able to effectively support this event in the UK using infrastructure based in the US East (Northern Virginia) region.
Buzzdial calculates that its capital and operating costs for infrastructure are 96 percent lower over two to three years than they would be with a physical infrastructure in a collocated data center. “We sometimes get to the point of using AWS resources equivalent to 60 physical servers. Because we stress-test our infrastructure to a point well above estimated loads, this number can increase to the equivalent of another 30 servers,” Howard says. “We would have had to invest US$1.2 million in capital, plus US$24,000 per month in data center collocation costs if we deployed a physical infrastructure. AWS is less expensive and gives us an agility that a conventional data center environment cannot match.” Buzzdial would have also required six full-time equivalent administrators to manage 60 physical servers, costing about US$350,000, while the AWS infrastructure requires about 20 percent of a single full-time employee’s time to administer.
The nature of Buzzdial’s business means the organization has a low tolerance for system problems during live events. Buzzdial has now achieved above 99.99 percent availability during these events using AWS. The business has also achieved latency of under 400 milliseconds globally, which means users receive a rapid response to their interactions with the web application.
Buzzdial plans to add new AWS services in future as business grows. “One of the benefits of being an agile business like ours is the ability to move rapidly and adopt new technologies rapidly without having legacy equipment and processes in place,” Howard says. “I believe we should be accessing all of the technologies available to us from AWS to enable us to leapfrog solutions and take big steps forward.”
Available for after-hours freelance software development. Get in touch!