Upgrade to Pro — share decks privately, control downloads, hide ads and more …

P99 Conf 2023: High Performance, Low Budget

Gwen (Chen) Shapira
October 19, 2023
190

P99 Conf 2023: High Performance, Low Budget

It is one thing to solve performance challenges when you have plenty of time, money, and expertise available. Many performance experts have deep knowledge of a specific system and work on large-scale problems where investing time and effort to get a fantastic result is the norm.

But what do you do in the opposite situation? If you are a small startup with no time or money and still need to deliver outstanding performance? When you may have experts in parts of the stack, but performance has to be delivered across the entire application and infrastructure stack?

It may be tempting to think that as a small startup, you can just ignore performance until you scale - but your customers will soon tell you otherwise. In this talk, Gwen talks about her journey from in-depth Kafka performance to leading a small team of engineers to ship a high-performance MVP. She'll share the decisions that worked well, the mistakes made, and the tools that were worth far beyond their cost.

Gwen (Chen) Shapira

October 19, 2023
Tweet

Transcript

  1. Gwen Shapira Co-founder @ Nile ▪ I used to lead

    the Cloud Native Kafka org at Confluent ▪ Wrote books, gave talks, have a podcast ▪ I am obsessed with performance ▪ Mostly of data systems and below ▪ but I’m also leading a scrappy startup
  2. This talk is “sample size = 1” I share stories,

    lessons, tradeoffs and decisions from my experience in the last 2 years.
  3. Login page - Serverless compute - Great dev ex, but…

    - Your instance will be idle. A lot. - CDNs - Optimize app start times - Provisioned compute
  4. Dashboard 1. Parallelized requests 2. API improvements 3. Cache results

    in browser 4. DB tuning 5. Moved the page🥇
  5. Is our DB setup good? - Typically uses a standard

    benchmark like TPCC - Increase load over time - Look for bottlenecks - Fix what you can
  6. Well? - Running a standard benchmark takes time and effort.

    - We fixed some configuration issues. - We had some idea of what performance to expect. Score: ⭐⭐
  7. What is a good user experience? - User On-boarding -

    Anything annoyingly slow - Anything your target customers obsess over
  8. Simple test tips that helped us - Include extra stupid

    sanity tests - Check return values - Actually analyze the results Score: ⭐⭐⭐⭐