Егер 1000 бір уақытта сұраныс келсе, онда 1000 операциялық жүйе ағыны пайда бола ма? Бұл жағдайда сервиске не болады?
Golang
10 қызметтен деректерді жинайтын фасад бар, әрқайсысы 100 мс жауап береді, жалпы шамамен бір секунд. Бұл мәселені қалай шешер едің, осылайша деректерді алу уақыты тезірек болар еді?
11 қызметтің біреуі қате қайтарса, басқа қызметтерден деректер алуды жалғастырасыз ба?
Redis бір дата-орталықта болды ма, және бәрі оған қол жеткізді ме?
Сіз архитектура мен қызмет шекараларын қандай принципке негізделіп таңдадыңыз?
Біз талқылаған деректердің жарыс мәселесін қалай шешуге болады?
Redis барлық үш деректер орталығында болды ма?
Файлды өңдеу үшін горутиндерді қолданғанда қандай жанама әсерлер болуы мүмкін, неге дайын болу керек?
Сізде үш деректер орталығы болды — олардың арасында репликация/резервтеу схемасы қалай ұйымдастырылды?
Деректер орталықтары бір-бірінің толық көшірмелері ме, әлде бір-бірін толықтырады ма? Тек трафикті олардың арасында бағыттадыңыз ба?
Горутины бірдей жолға/буферге жазса, мұндай мәселе болуы мүмкін бе?
Қандай блоктау өрісі туралы айтып отырсың (денормализация бойынша нақтылау, is_blocked белгісі)?
Goroutine-лер қалай «ағып» кетуі мүмкін?
Kafka-дан бірінші деректер орталығына оқиға келгенде, оны қалай ұстап, Redis-ке сақтап, барлық үш деректер орталығына қалай тарады?
Горутинамен жұмыс ұйымдастыру үшін арналардан басқа басқа жолдар бар ма?
Резюмеіңізде SQL сұрауларын оңтайландырғаныңыз туралы жаздыңыз. Бос емес сатушыларды таңдау үшін сұраудың орындалу жоспары (EXPLAIN) қалай көрінер еді деп ойлайсыз?
Сөйлеу алгоритмі (деректерді салыстыру) туралы айта аласыз ба? Сіз оған қатысқансыз ба? Ол қалай өтті?
Сіздің түйіндемеңізде 50-80 мың RPS көрсетілген. Бұл қандай қызмет болды және ол не істеді?
Redis-пен оқылатын модель туралы айттыңыз. Redis деректер орталықтары арасында репликацияланды ма?
Егер сіз қолданатын қызметтердің бірі қате қайтарса, сіз не істейсіз және оны қалай өңдейсіз егер арна бар болса?