Instructure is the exciting company which facilitates the online Learning Management System and media company Canvas. With two million concurrent users on the Canvas education platform, the demands on its substrate messaging system are intense. Canvas includes an AWS shop and is an Alexa top 100 site. In order to reach target outcomes in messaging and queuing, Instructure chose Apache Pulsar for its outstanding cloud-native features.4
As we have seen with many Pulsar converts, Instructure found that SQS and Kinesis could not handle the sprawling microservices coming into play, and the multiple messaging systems evolving internally were awkward. Among the challenges Instructure listed:
- Kinesis does not support long-term retention.
- SQS does not provide replay.
- Kinesis needs Lambda architecture which is complicated.
- Messaging with Kinesis was expensive.
Instructure needed to impose a singularity and they achieved it by implementing Apache Pulsar. In other words, Pulsar enabled Instructure to unite all messaging and queuing requirements in a single system. Instructure cited high scalability with minimal management and tooling requirements as important benefits. They also touted Pulsar for its low cost, long term retention and tiered storage. Finally, Instructure achieved their migration to Pulsar in less than a year! In his presentation at the Pulsar Summit, Addison Higham highlights Instructure’s shift to Pulsar in technical detail.