Skip to content
0:00 / 0:00

#clojure#kafka#aerospike

Lessons in Building a System that Processes More than 70 Billion Events Daily - Morri Feldman

Clojure/north

1.9K subscribers • 18 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Morri Feldman

Advanced. Deep dive for people who know the field.

1.8K views7 years ago1 recommendation

Distributed systemsDatabases and dataScaling and large-scale architectureConcurrency and parallelismLisp and Clojure

Morri Feldman shares architectural lessons and technology choices from migrating AppsFlyer's high-throughput event processing platform from Python to Clojure.

AppsFlyer’s mobile attribution and analysis platform is used by the biggest and most popular applications on Earth, generating a constant “storm” of 70B+ events (HTTP Requests) on their microservices, cloud based platform daily. In this talk, Morri will share their technological choices which include Clojure as their leading backend language - and the decisions to migrate from Python for improved multi-threading and concurrency. The backend was to built to be a robust system based on a diversity of open source tooling such as: Kafka, RabbitMQ, Aerospike, Redis and a host of proprietary in-house developed tools and services that enable the testing and adoption of new data technologies, continuous deployment, and large-scale monitoring of the system - including open sourcing production libraries for interoperability with core technologies. This talk will also dive into AppFlyer's real-time back-end architecture & functional programming philosophy, what it is like to be a developer at AppsFlyer, and overall attitude towards performance, redundancy and resiliency for processing 35 Million events/minute at an average latency of hundreds of milliseconds per event.

Why it's here

1 person recommends this

What people say. Recommended as a practical case study of scaling a massive real-time data pipeline with Clojure.

u/yogthosin r/Clojure • Recommends

Clojure/north: Lessons in Building a System that Processes More than 70 Billion Events Daily by Morri Feldman

u/yogthosin r/Clojure • Mentions

On “Is Clojure a good idea for a back of napkin startup idea?”

Yup, can confirm regarding hiring Clojure devs. My team has been using it for close to a decade and we've never had problems. We find it's especially fast to train up students straight out of the university. They haven't developed any strong habits yet, and they're still in active learning mode. Our co-op students take around a couple of weeks to get productive on average. The caveat is that you'd want to come up with some baseline dev practices. You want to find a style that's easy for everybody on the team to follow. Don't get clever, don't use macros, and so on. You also want to pair up with new hires, and do code reviews often. If the company is willing to invest in people, then Clojure…