V druhém díle s Adamem Surákem z Algolia.com pokládáme techničtěji zaměřené otázky na jejich vyhledávací stroj. Dozvíte se v něm, že k dosažení 50ms odezev implementovali vyhledávací algoritmy v C++ jako nGinxový modul a provozují jej na vlastním bare metalu a jednom výkonném procesoru. Řeč bude i o SLA a čtyřech (respektive pěti interních) devítkách dostupnosti a jak jich dosahují.
Povídat si budeme o tom, že Algolia má implementovanou multi master architekturu a jak se vypořádává s dopady CAP teorému. Tady jsme si trochu zafantazírovali na téma RAFT algoritmu, ale kdo se chce o něm dozvědět více technických faktů, toho radši odkážeme na tento článek.
Z celého rozhovoru mi přišlo úžasné, že ačkoliv se Adam převážně stará o infrastrukturu, tak je jeho pozice DevOps zcela oprávněná – o technických detailech toho, jak funguje Algolia, ví skutečně velmi hodně.
Tip: kdo shlédne video pozorně až do konce, tak si ze závěrečných titulků odnese voucher na vyzkoušení Algolie na 2 měsíce zcela zdarma.
Tento díl jsme natáčeli v prostorách firmy LMC v Lighthouse Towers, v Praze Holešovicích. Za pozvání děkujeme.
Chcete také hostit natáčení Kafemlejnek.TV ve Vaší firmě? Napište nám
Video
Pouze audio
Obsah
- Jak docilujete odezvy do 50ms? 0:42
- Vy si toho děláte hodně sami – engine provozujete na vlastním fyzickém hardware, je to tak? 2:10
- Jak vypadá hardware setup vašeho typického stroje? 3:12
- Proč jste šli do toho starat se o svůj hardware? 3:51
- To, že máte všechna data v RAM, je základní faktor rychlosti? 6:03
- Problematika více procesorových strojů? 8:41
- Do 128GB kompresovaných dat se vejde ohromné množství záznamů, je to tak? 9:35
- Podporujete i shardovaná data nebo se kompletní data musí vždy vejít do 128GB? 10:20
- Algolie je multi-master databáze. Jak řešíte problémy typu split-brain a kde stojíte v CAP teorému? 14:00
- Můžeš nám říct něco víc o algoritmu RAFT? 17:57
- Jo potřeba čas od času udělat kompletní reindexaci dat? 20:05
- Jak řešíte high-availability a jaké máte garance? 22:22
- Jakým způsobem se klientské knihovny adaptují na výpadky serveru v HA setupu? 26:08
- Používáte nějaké externí nástroje pro monitoring provozu infrastruktury? 30:02
- Kontribuujete něco většího jako open-source? Co z open-sourcových projektů používáte a co bys doporučil? 34:37