Nedávný přechod české domény Mapy.cz na globální Mapy.com představoval pro Jana Havlíčka a jeho tým nejednu technologickou výzvu. Vedoucí vývoje v Seznamu přibližuje, co vše bylo nutné zajistit, aby služba mohla expandovat do světa bez negativního dopadu na uživatelskou zkušenost, výkon či dostupnost služby. Jak se řešilo přesměrování, lokalizace obsahu, ale i to, jakou roli sehrála open-source komunita nebo jak probíhala interní spolupráce v rámci vývoje prozradil v rozhovoru.
Před jakými technologickými výzvami jste stáli, když se rozhodlo, že se Mapy.cz rozšíří na Mapy.com?
Výzev bylo rozhodně několik. Kvůli SEO jsme nemohli provést přechod v jednom kroku, takže se doména nejprve změnila na Mapy.com pouze pro zahraniční uživatele, zatímco česká verze dočasně zůstala na doméně Mapy.cz. To znamenalo, že jsme museli provozovat dvě domény zároveň a přepínat mezi nimi podle zvoleného jazyka stránky. Protože cookies nelze sdílet mezi doménami, museli jsme jinými způsoby zajistit, aby fungovalo přihlášení a nastavení preferovaného jazyka i při přepínání mezi doménami. Zároveň jsme chtěli zachovat funkčnost všech existujících odkazů, což si vyžádalo vytvoření množství přesměrovacích pravidel. Důležité také bylo zajistit dostatečný výkon a dostupnost ze zahraničí.
Změnilo se v architektuře systému něco zásadního?
Samotný přechod na jinou doménu znamenal úpravu jen několika málo komponent, bez zásadního dopadu na celkovou architekturu. Přípravné kroky, které měly zlepšit dostupnost ze zahraničí, už ale určité změny přinesly, například zapojení globální CDN.
Jak jste přistupovali k mezinárodnímu škálování? Byly potřeba změny v infrastruktuře (např. CDN, servery, cloud)?
Škálování řešíme průběžně, protože počet uživatelů stále roste. Seznam.cz má několik vlastních serveroven, ve kterých provozuje něco jako interní cloud, takže přidání výkonu je často jen otázkou změny konfigurace. Zahraničním uživatelům aktuálně doručujeme většinu obsahu z Česka. U datově náročných částí, jako jsou mapové dlaždice, jsme ale zaznamenali problémy s rychlostí, a proto jsme nasadili globální CDN od jednoho z velkých cloudových poskytovatelů. S rostoucím podílem zahraničních uživatelů nás v budoucnu čekají zásadnější změny, kdy bude třeba přesunout více komponent a dat blíže k uživatelům. To ale závisí na tom, kde a jak moc budeme úspěšní.
Jak jste řešili lokalizaci a adaptaci dat pro různé regiony světa?
Web i aplikaci jsme už měli přeložené do několika jazykových mutací. Obsah se snažíme získávat z dostupných zdrojů (OpenStreetMap, Wikipedie, Wikidata) ve všech jazycích, které nám dává smysl podporovat. U recenzí nabízíme možnost strojového překladu. Experimentujeme také s využitím velkých jazykových modelů k překladu obsahu do jazyků, které nám zatím chybí. Žádné větší regionální úpravy dat zatím ale neděláme, ani neplánujeme zobrazovat různé verze hranic jako Google.
Jak jste řešili otázky přesnosti a aktualizace mapových podkladů mimo Českou republiku?
Není v našich silách ručně udržovat aktuálnost a správnost dat pro celý svět. V tomto ohledu spoléháme na komunitu OpenStreetMap a další veřejně dostupné zdroje. Nemůžeme zaručit, že v datech nebudou chyby, a proto jsme vděční za každé nahlášení. Aktualizace probíhají jako dosud, to znamená, že se mapy aktualizují každé dva týdny, body v mapě denně a balík offline dat je ke stažení každý měsíc.
Jaké technologie nebo open-source nástroje byly pro přechod klíčové?
Mapy (a Seznam.cz obecně) běží na mnoha open-source technologiích. Téměř všechny naše servery používají Linux, reverzní proxy zajišťuje nginx, komponenty běží v Docker image a spouštíme je pomocí Kubernetes. Databáze stavíme na PostgreSQL a používáme množství knihoven, které bych ani nedokázal všechny vyjmenovat.
Kolik lidí na projektu přechodu pracovalo a jak dlouho trval vývoj?
Samotný přechod na novou doménu zahrnoval úpravy DNS, certifikátů, SEO, backendu, frontendu a testování, což zabralo několik týdnů a technicky se na tom podílelo asi pět lidí. Pokud bychom ale brali v úvahu celou expanzi do světa, jde o práci, které se věnujeme už několik měsíců. Patří sem například přidávání funkcí, doplňování překladů, nasazení globální CDN, získávání a vylepšování datových zdrojů, optimalizace, spuštění nové nápovědy a fóra nebo placené verze Mapy Premium. Celkem se na těchto aktivitách podílí více než 30 vývojářů.
Byl vývoj veden interně, nebo jste spolupracovali s externími partnery?
Vývoj probíhal interně, jen použitou CDN nám zajišťuje externí partner
Jak jste řešili přechod uživatelů mezi doménami a jaké byly první reakce veřejnosti?
Změnu jsme dopředu oznamovali a její důvody uživatelům vysvětlovali. Oddělení marketingu a PR předem vše srozumitelně a transparentně komunikovali, pro mnoho uživatelů to tak už nebylo žádné překvapení. Přechod jsme provedli tak, aby pro uživatele bylo vše co nejplynulejší, to znamená původní odkazy zůstaly funkční a ani na nové doméně se nebylo potřeba znovu přihlašovat. Mnozí si možná ani nevšimli, že se jim změnila adresa v prohlížeči. Monitorovali jsme diskuze pod články i na sociálních sítích a zaznamenali převážně pozitivní reakce. Lidé třeba oceňovali, že česká služba míří do světa. Mezi negativními reakcemi se objevily i spekulace, že změna domény souvisí s prodejem služby, což ale není pravda.
Zaujalo vás téma? Máte další otázky? Honzu Havlíčka můžete potkat 5. června v Bratislavě na letošní konferenci Codecon .
Naplánujte si konkrétní datum a čas odjezdu a Mapy.com vám podle toho přizpůsobí trasu. Plánovač tras zohlední aktuální i předpokládané dopravní podmínky, jako jsou třeba hustota provozu, dlouhodobé a sezónní uzavírky. Přijde vhod za volantem, na kole i pro pěší.
V sekci Moje Mapy nyní jako premioví uživatelé najdete několik novinek. Můžete si k uloženým místům psát poznámky a označovat si, že jste je navštívili, filtrovat si je podle nejrůznějších parametrů nebo si je trvale zobrazit nad mapou.
Kam si ukládat svá dobrodružství, poznamenat trasu pro běhání v lese a kde si naplánovat výlet nebo hvězdičkou zhodnotit tu skvělou kavárnu s výhledem? Jednoduše v Moje Mapy. Pojďme si společně připomenout, co funkce nabízí a co umí nového.
Zpracování osobních údajů
Za účelem využití služby „Newsletter Seznam.cz” dostupné na internetové adrese (URL) https://blog.seznam.cz (dále jen „Služba“) uživatelem Služby (dále jen „Uživatel“) je společnost Seznam.cz, a.s., IČO 261 68 685, se sídlem Radlická 3294/10, 150 00 Praha 5, provozovatel Služby (dále jen “Provozovatel”) oprávněna zpracovávat osobní údaje Uživatelů (zejména adresné a popisné údaje v rozsahu níže uvedeném), které tito Uživatelé poskytnou Provozovateli v rámci užívání Služby.
Osobní údaje Uživatele budou zpracovány Provozovatelem v nezbytném rozsahu za účelem poskytování Služby, a to zejména za těmito účely:
za účelem zařazení kontaktních údajů do databáze Provozovatelem a za účelem zasílání obchodních nabídek Uživateli ze strany Provozovatele;
za účelem zařazení kontaktních údajů do kontaktů Provozovatele za účelem vzájemné budoucí komunikace Provozovatele a Uživatele.
Takové zpracování osobních údajů je zákonné, jelikož je nezbytné pro splnění smlouvy, na jejímž základě Uživatel užívá Službu, a jejíchž smluvní stranou je Uživatel, jako subjekt osobních údajů.
Provozovatel postupuje při zpracování osobních údajů v souladu s nařízením Evropského parlamentu a Rady (EU) č. 2016/679 o ochraně fyzických osob v souvislosti se zpracováním osobních údajů a o volném pohybu těchto údajů (obecné nařízení o ochraně osobních údajů, dále jen „nařízení“), zákonem č. 110/2019 Sb., o zpracování osobních údajů, zákonem č. 111/2019 Sb., kterým se mění některé zákony s přijetím zákona o zpracování osobních údajů, zákonem č. 480/2004 Sb., o některých službách informační společnosti, zákonem č. 127/2005 Sb., o elektronických komunikacích a dalšími právními předpisy upravující ochranu osobních údajů.
Podrobnější informace o nakládání s osobními údaji jsou uvedeny na internetových stránkách Provozovatele, a to v příslušné sekci.