Movatterモバイル変換


[0]ホーム

URL:


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

Evolution of real-time – Irina Nazarova, EuRuKo...

Avatar for Irina Nazarova Irina Nazarova
September 12, 2024

Evolution of real-time – Irina Nazarova, EuRuKo, 2024

Avatar for Irina Nazarova

Irina Nazarova

September 12, 2024
Tweet

More Decks by Irina Nazarova

See All by Irina Nazarova

Other Decks in Programming

See All in Programming

Featured

See All Featured

Transcript

  1. Irina Nazarova, EuRuKo 2024 and… me Any Cable Pro Evolution

    of real-time,
  2. EuRuKo 2024 Sarajevo Real-time evolution 2 2005 2007 2011 2012

    2014 2017 2021 2024 PREHISTORIC DARK AGES CAMBRIAN EXPLOSION 💥 FUTURE
  3. EuRuKo 2024 Sarajevo Trivia 3 Vote here now!

  4. EuRuKo 2024 Sarajevo 4 Summer 2008 Built with Scaled with

  5. EuRuKo 2024 Sarajevo

  6. EuRuKo 2024 Sarajevo Trivia 6 know your heroes

  7. EuRuKo 2024 Sarajevo Real-time evolution 7 2005 2007 2011 2012

    2014 2017 2021 2024 PREHISTORIC DARK AGES FUTURE CAMBRIAN EXPLOSION 💥
  8. EuRuKo 2024 Sarajevo Ira Nazarova CEO The story of AnyCable

    Vova Dementyev Head of Backend 8
  9. SF BAY AREA RUBY MEETUP 9 Our customers: 🛠 Products

    for developers 🚊 Startups on Rails ⚡ Real-time and collaboration- heavy apps 🪺 Local- fi rst apps We do: design developer products build features and products improve performance and scalability build ecosystem and SDKS 📍 NY, CA, Portugal, Japan
  10. SF BAY AREA RUBY MEETUP 10 If you are a

    startup on Rails, and you have a hard problem, come to us for help 🔗evl.ms/railsstack Yabeda
  11. SF BAY AREA RUBY MEETUP Running the SF Ruby meetup

  12. EuRuKo 2024 Sarajevo 12 -where does the story begin?

  13. 2015 - 2019

  14. EuRuKo 2024 Sarajevo -First-class built-in support for WebSockets -Chats, noti

    fi cations, etc. w/o leaving the comfort zone of the framework Rails 5 brings Action Cable 14 2015 Phoenix—2014, Django—2016, Laravel—2024
  15. 2015

  16. EuRuKo 2024 Sarajevo -Erlang Go server -Redis for multi-node clusters

    -Action Cable protocol -Rails plug-in-play integration -Open source Vova brings AnyCable 16 2016
  17. EuRuKo 2024 Sarajevo AnyCable in a nutshell 17 System of

    3 components: -WS server (Go) -Rails with RPC -Redis
  18. EuRuKo 2024 Sarajevo -10x less RAM usage -Lower latency at

    scale Motto: "Performant WebSockets for Rails" 18 2016 🥇
  19. EuRuKo 2024 Sarajevo -Action Cable said “You can build real-time

    features” -AnyCable said “And you can scale them” It aged well 19 WebSockets, caution no longer required!
  20. EuRuKo 2024 Sarajevo The only thing missing was… 20

  21. 😷 2020 - 2021

  22. EuRuKo 2024 Sarajevo 22

  23. EuRuKo 2024 Sarajevo We got more consulting projects 23 Stackblitz

    has been our consulting customer since
  24. EuRuKo 2024 Sarajevo Pre Pro era 24 Consulting gigs -Working

    closely with AnyCable users helped us to better understand our powers and their needs
  25. EuRuKo 2024 Sarajevo Pre Pro era 25 Consulting gigs -Working

    closely with AnyCable users helped us to better understand our powers and their needs -We learned use cases and industries: GPS tracking, virtual events, edtech, devtools
  26. EuRuKo 2024 Sarajevo -Working closely with AnyCable users helped us

    to better understand our powers and their needs -We learned use cases and industries: GPS tracking, virtual events, edtech, devtools -As a result, we launched the fi rst major version 1.0! Pre Pro era 26 Consulting gigs
  27. EuRuKo 2024 Sarajevo 27 AnyCable learnings Realtime requests should be

    serviced and scaled independently from HTTP requests Architecture vs. scaling
  28. EuRuKo 2024 Sarajevo 28 Imagine your server as a phone

    line: ☎ HTTP requests are like brief phone calls: you dial, get information, and hang up. 🌎 WebSocket connections are like the dial-up modem If the two are competing, WebSockets win all resources they need–as seen by our customers
  29. EuRuKo 2024 Sarajevo Realtime requests should be serviced and scaled

    independently from HTTP requests
  30. EuRuKo 2024 Sarajevo 30 AnyCable learnings Big apps with scale

    reached out. For them, we needed tools: -xk6-cable for load testing -wsdirector for scenario-based system tests Ecosystem matters
  31. EuRuKo 2024 Sarajevo -GraphQL subscriptions -Long-polling -Voice applications (Twilio Media

    Streams) AnyCable next 31 What people wanted
  32. Build it

  33. EuRuKo 2024 Sarajevo Why build something? 33 🤓 Learn 🤝

    Connect 🎨 Make the world better
  34. EuRuKo 2024 Sarajevo Why not build something? 🎛 Be in

    control 🖨 Copy someone’s success 💰 Get rich fast 😤 Prove them wrong 😩 These goals are short- lived and won’t lead anywhere 34
  35. EuRuKo 2024 Sarajevo Startups at Evil Martians 35 – Evil

    Martians can invest in an internal startup (mostly, team’s time), and the process is transparent – when the startup raises external capital, EM gets a share the new company, based on the valuation with a fi xed discount – project founders remain the majority owners – it worked with imgproxy and CanFy
  36. EuRuKo 2024 Sarajevo 2021 launching the Pro 36 Key Pro

    feature: 30 - 50% RAM savings (vs. OSS) Binary compression Apollo GraphQL integration Priority support
  37. EuRuKo 2024 Sarajevo 37 – GitHub Container Registry – $990

    per year fl at price – EULA – Typeform for signups – Manual emails, calls, invoices – No “license server” Keep it simple! 2021 launching the Pro
  38. EuRuKo 2024 Sarajevo Which features are open-source, and which are

    Pro? 38
  39. EuRuKo 2024 Sarajevo 39 Open-source a communal garden Commercial Pro

    a professional farm
  40. EuRuKo 2024 Sarajevo 40 💡Pro: value-added features for larger use

    cases–cluster mode, high load, enterprises
  41. EuRuKo 2024 Sarajevo 🇫🇷 Callbell.eu, our first Pro customer 💙

    41 Shared inbox for support: WhatsApp, Messenger, Instagram, and Telegram For Callbell low latency is crucial Callbell is 🔥
  42. EuRuKo 2024 Sarajevo 💡Unexpectedly, paying customers turned out to be

    a lot more engaging and responsive than users of open-source 42
  43. EuRuKo 2024 Sarajevo Today AnyCable is the critical infrastructure powering

    some of the largest Rails apps 43 $3B legal services SaaS Leading American transit SaaS Malaysia's Leading EV Charging Company communication platform used by 80% of US doctors marketing SaaS with $160M+ revenue
  44. EuRuKo 2024 Sarajevo 44 -didn’t we jump ahead?

  45. 2021 - 2024

  46. EuRuKo 2024 Sarajevo 2021 46 Released the client library: -TypeScript

    support -works with any JS runtime: React Native, Ionic, etc.
  47. EuRuKo 2024 Sarajevo 2021 47 Pushing backend-rendered templates over WebSocket

    to all connected clients
  48. EuRuKo 2024 Sarajevo 2021 48 ✅ Standalone mode for apps

    only using WS for Hotwire: – no RPC server – only 2 components out of 3 We wanted to do something extra
  49. EuRuKo 2024 Sarajevo 2021 results 49 Trials: 20 Paying customers:

    6 End-year ARR: $6k Consulting revenue: $320k
  50. EuRuKo 2024 Sarajevo 💡The results were not stellar, so we

    had to focus on other things… 50
  51. EuRuKo 2024 Sarajevo 2022 51 RailsConf 2022 “The pitfalls of

    realtime-i fi cation” Recorded screencasts Launched newsletter Marketing all-in SUBSCRIBE
  52. 52

  53. EuRuKo 2024 Sarajevo 2022 results 53 Trials: 18 Paying customers:

    14 End-year ARR: $12k Consulting revenue: $1M 🎉
  54. EuRuKo 2024 Sarajevo 💡With $1M consulting revenue per year, AnyCable

    became vital for Evil Martians... 54
  55. EuRuKo 2024 Sarajevo ...but the product itself didn't sky-rocket—marketing is

    not enough 🤔 55
  56. EuRuKo 2024 Sarajevo 2023 56 The paradigm shift -Reliable communication

    -Simpli fi ed infra -More protocols (Twilio Media Streams, OCPP) -SSE support Move focus from performance to features and DX:
  57. EuRuKo 2024 Sarajevo Exactly-once delivery in WebSockets with AnyCable 57

    -Exactly-once delivery of real-time data -Resume WS sessions automatically on deployments (Pro)
  58. EuRuKo 2024 Sarajevo 58 💡We now recommend using AnyCable from

    day 1 for reliable delivery
  59. EuRuKo 2024 Sarajevo Simplified setup with NATS 59 We added

    embedded NATS to replace Redis for multi-region deployments for Fly.io
  60. EuRuKo 2024 Sarajevo EV-charging protocol support 60 Testing: UK’s leading

    EV charging provider Customer: Malaysia's leading EV charging provider 🔗docs.anycable.io/anycable-go/ocpp Use AnyCable to monitor and operate charging stations in real time
  61. EuRuKo 2024 Sarajevo AnyCable: -Gets a WS voice stream from

    Twilio -Sends chunks it to real-time speech-to-text API -(Proxies other processing steps) -Noti fi es Rails Voice apps 61 Twilio media streams support 🔗 github.com/anycable/anycable-go-sca ff old
  62. EuRuKo 2024 Sarajevo -Safari fi nally got support -LLMs (ChatGPT)

    popularized SSE for response streaming -Use AnyCable for LLM streaming over WS or SSE Server-sent events 62 LLMs' native realtime transport
  63. EuRuKo 2024 Sarajevo AnyCable over SSE 63 No libs attached

  64. EuRuKo 2024 Sarajevo 2023 results 64 Trials: 39 Paying customers:

    23 End-year ARR: $21k Consulting revenue: $ 1M
  65. EuRuKo 2024 Sarajevo 2024 65 The even bigger paradigm shift

    -Serverless JS and other vercels -Universal pub/sub interface (no channels attached) -Managed AnyCable Go beyond Ruby and Rails:
  66. EuRuKo 2024 Sarajevo 66 Vercel Template

  67. EuRuKo 2024 Sarajevo -No RPC component required -Only 1 component

    out of 3 -Whispering support (client- to-client broadcasting) Simplified pub/sub 67 AnyCable as one component
  68. EuRuKo 2024 Sarajevo Whispering 68 Go to anycable.io now What

    to whisper 🔗anycable.io
  69. EuRuKo 2024 Sarajevo 69 But what about Managed AnyCable?

  70. EuRuKo 2024 Sarajevo 70 What’s the most e ff i

    cient way to build a managed service?🧐
  71. EuRuKo 2024 Sarajevo 🔗plus.anycable.io 71 🔗go.anycable.io/gem fi le We launched

    Managed AnyCable in Alpha
  72. EuRuKo 2024 Sarajevo 72 We added anonymous telemetry to AnyCable-go

    big open source servers big Pro servers people on old versions PostHog dropping our data Unique servers with over 1k concurrent connections
  73. EuRuKo 2024 Sarajevo 73 💡 De-stigmatizing telemetry in open source

    is important for its sustainability
  74. EuRuKo 2024 Sarajevo 2024 Jan-Aug results 74 Trials: 60 Paying

    customers: 29 ARR: $30k Consulting revenue: $480k
  75. EuRuKo 2024 Sarajevo 75 💡 New trials are growing which

    means that our new approach works!
  76. EuRuKo 2024 Sarajevo AnyCable 2016 76 Go server Action Cable

    protocol Redis pub/sub WebSockets Rails SDK Open source Use cases: 💬🔔 Chats, noti fi cations 🛰 GPS data Action Cable on steroids
  77. EuRuKo 2024 Sarajevo AnyCable 2024 77 Go server Action Cable

    protocol w/ delivery guarantees Zero infra deps Multi-transport Framework-agnostic Open source, Pro, managed Reliable realtime server Use cases: ☎ Voice applications 👩 👩 Collaborative UI: cursors, comments, editing, presence 🤖 LLM streaming 🚙🔌 EV charging data (OCPP) 💬🔔 Chats, noti fi cations 🛰 GPS data
  78. EuRuKo 2024 Sarajevo Real-time evolution from the perspective of 78

    2015 2021 2022 2023 2024 AnyCable+
  79. EuRuKo 2024 Sarajevo Today AnyCable is the critical infrastructure powering

    some of the largest Rails apps 79 $3B legal services SaaS Leading American transit SaaS Malaysia's Leading EV Charging Company communication platform used by 80% of US doctors marketing SaaS with $160M+ revenue
  80. EuRuKo 2024 Sarajevo 💡 Our customers and big use cases

    give us the confidence to move forward 80
  81. EuRuKo 2024 Sarajevo What we have 81 ✅ Solve a

    real problem ✅ And for real big use cases ✅ And new cases keep coming up We solved the backend and infra: - integration - scaling - dependability - reliability - no lock on cloud provider
  82. EuRuKo 2024 Sarajevo What we don’t have 82

  83. 2024-future

  84. EuRuKo 2024 Sarajevo Higher-level abstractions 84 Common tasks must be

    easy to implement: – UI kits – Collaboration SDK UI-centric real-time
  85. EuRuKo 2024 Sarajevo Simplify and simplify again 85 There’s a

    lot to be done to be AnyCable easier to reach for: – Guides & tutorials (incl. AI-powered) – Zero-con fi guration installs – Managed AnyCable for production Make it accessible for more engineers
  86. EuRuKo 2024 Sarajevo -Everyone has a robot 🤖 to collaborate

    with at any time: through chats, voice conversations, git fl ow, a collaboration in the UI -This ampli fi es the need for real-time tech -Wider adoption requires plug-n-play, easy to use, solutions LLMs vs. realtime 86 Next-gen collaboration
  87. EuRuKo 2024 Sarajevo -WebTransport is coming -Whatever’s the next new

    thing Future transports 87 AnyCable will integrate with the new realtime tech
  88. EuRuKo 2024 Sarajevo Evolution of … myself 88 Manager ➡

    co-founder mindset Contributing to the product strategy A member of the Ruby community
  89. EuRuKo 2024 Sarajevo Evolution of … myself 89 Thanks to

    the unwavering trust of
  90. SF BAY AREA RUBY MEETUP Unwavering… almost!

  91. Thank you![email protected] twitter.com/inazarova


[8]ページ先頭

©2009-2026 Movatter.jp