#34 Высокие нагрузки 2025: топ трендов, которые меняют правила игры | Алексей Рыбак
кто для этого куска Мастер и где реплики погоди ты в продакшене поправил файл Слушай это было очень давно человек позвонил и сказал Лёха А что там за хреновина вот это вот сказать просто а реализовать конечно значительно сложнее Я же вроде людей учить собирался Я здесь теперь этим занимаюсь вдруг оказалось что релиз не час а два а потом три а потом четыре Я уже сплю Там под столом теннисным у нас в офисе был Короче говоря вот такой был фейл [музыка]
Привет друзья с вами Кирилл Мокевнин ведущий подкаста организованное программирование и тема сегодняшнего подкаста - это лоуд который мы вместе обсудим с Алексеем рыбаком Лёша В разработке очень давно был сеть очень крупных известных проектов и сейчас скорее всего выяснится что пользователи этих проектов смотрят нас и Лёша в этом очень круто разбирается когда-то мы пересекались на всяких конференциях типа хайлоу где Алексей представлял компанию баду чаще всего по крайней мере может ещё кого-то представлял и Ну наверное был одним из локомотивов Да этот и проект И вообще вот эта вся история очень была связана сильно с тобой Привет да Наверное ты прав Ну по крайней мере знаешь у меня вот так вот прямо зафиксировала что был такой момент когда это баду обязательно это Авито Кто там ещё с вами всегда был тусовка такая постоянная так сейчас уже не вспомнил году это Сколько прошло времени почти 20 лет Дада но мы тут олдскул собрались сводить в том числе Да ну в общем был короче набор каких-то компаний довольно активно участвовал потом подтянулся Яндекс Хотя Яндекс Был конечно с самого начала Ну да просто они скорее немножко в себе были ребята Потом наверное как-то подо открылись Я просто знаешь последний раз когда я приезжал на подобные конференции Я был в д Перм году на знаешь я обратил внимание то есть Представь там был большой период когда Ну всё я выпал из этой истории я значит приехал и меня очень сильно поразило Я уже к этому моменту 2 года в России не жил То есть я с девятнадцатого где-то не живу и я меня поразило как сильно ландшафт поменялся То есть у тебя просто в этом в двадцать первом там только фут техи были самокаты Сбер маркеты Там и так далее такой думаешь Ни фига себе то есть какое кардинальное изменение и как вот Ну яком кстати ещё к ним присоединился Да это кстати большое Ну это тренд вообще и найма и всего так что конечно это очень сильно связано где впи найм и где так сказать собственно бюджеты Кто из компаний пытается присутствовать Так что да активно росли и нанимали что там X5 вот самокат Вот вот вот доставки Я подозреваю что если сейчас поехать там не знаю сменилось уже нет нет та понимаешь там вообще интересная была история она как бы не совсем Техническая да Вот есть же там некий п да вот Есть такая заезженная тема dig transformation цифровая трансформация самом деле она в какой-то момент не была закончена она естественно мгновенно прошла у всяких разных техов а потом был некий гэп там значит какой-то образование которое сразу онлайн оно нормально а вот традиционное образование оно там не до конца цифрови зова отдельно Там можно поговорить чего в университетах вот мне пришлось немножечко в этом поковыряться и покрутиться понимаешь Вот точно совершенно был некий там период когда стали цифро визирова сервисы такси там связанные с картами с транспортом всякие разные фут техи они подтянулись потом вот и это всё наложило на некий такой фон проникновения в целом мобильного интернета Вот и в общем вполне Естественно что в определённые если взять последний Ну 25 лет то у тебя будут прямо такие фазы сначала у тебя какой-то там новостной бизнес или какие-то сервисы которые нужны там вообще почти всем потом там какие-то там заказы билеты и в том числе всякие e-commerce и заказ всего сейчас всё вот в каком-нибудь амазоне или ещё где-то купить можно вообще всё что угодно мне так кажется и всё что угодно купить в телефоне Ну да да А я замечаю тоже отсюда потому что вот например wiber вроде существует давно но активен он стал последние годы я такой смотрю у нас как бы мы там ну Amazon и Amazon Да всё понятно я смотрю в России в этом плане wiber стал Ну по по сути там амазонок как минимум два проекта есть которые Вот очень-очень масштабные потому что даже вот Instagram ты там смотришь или какие-то вот такие вещи очень много видосов на эту тему Да что там жена пошла купить что на вайберис и такой смотришь думаешь Ни фига себе как будто не так быстро меняло всё Как меняется последние годы Ну опять же может быть у меня такой просто ощущения но мне кажется как будто сейчас резко всё это ускорилось я знаешь что хотел поговорить о вообще старте всего этого добра то есть потому что мне кажется один из тех людей с кем имеет смысл это обсудить напомнить и вспомнить как это трансформировалось потому что многие вошли недавно они особо этого не видели И даже термин кстати High как будто перестал быть таким актуальным что ли то есть конференция есть лоу есть но как бы по-другому это всё сейчас подаётся потому что тогда Я точно помню вот был 2007 год я вкатился в разработку как раз в этом году и я помню первые конференции на который тогда ходил помнишь ещё PHP вот эти вот конфы были да там активные и так далее Я просто помню как вообще Вот это highload это была некая такая мечта То есть ты такой смотришь какие-то самые крутые инженеры слово ло Главное ты ходишь слушаешь как они рассказывают про там ну вот масштабирование горизонтальное вертикальное я такой вау когда-нибудь я смогу там работать и заниматься этими вещами и с тех пор это как прошёл какую-то трансформацию потом как будто бы это слово немножко подсчетом ло никуда не делся стал больше но и технологии изменились и много что изменилось и вот мне хочется с тобой я не знаю сколько сейчас займёт время но этот путь немножко пройти Конечно давай давай вот Вспомни там где-то вот в самом начале Да можно наверное вспомнить Вот о чём значит во-первых было довольно много ещё до я бы сказал до интернет вскую эпоху оказался не в Прости это нельзя называть интернетовский эпохой до того момента когда в интернете на сайты интернета Ну новостные сайты или какие-то сервисные сайты сначала же появились А основная масса ходила на новостные сайты а потом уже стали появляться сервисы Да вот так вот ещё до этой эпохи когда Интернет уже был но там как бы хайлоу ещё не было лоуд случился у асов у компаний которые либо предоставляют доступ в Интернет либо организуют мобильную связь пото что там их биллинги Они же очевидно совершенно это куча клиентов Да вот и вот Мы про это совсем не знаем а на самом деле Вот когда сейчас разговариваешь иной раз с кем-то и обсуждаешь в том числе какие-то технологии выясняются вот мне там в какой-то момент Кость и Осипов говорил что в общем лот ещё когда мы только-только этот лот Значит на своих руках а пытались значит ощутить у них этот лот уже должно существовал и всё то же самое что мы там потом изобретали было ещё у них вот я хотел бы такую вещь на самом деле подчеркнуть Может там есть ещё какие-то слои то есть где-то ещё есть какие-то деды которые на самом деле уже всё это сделали но они когда-то делали это как бы совсем одни и конференций никаких не было поэтому было бы интересно на самом деле с кем-то из них такую вещь тоже обсудить Потом значит появились новостные сайты новостных проектов было не так много я как-то вот захватил с девяносто девятого года сначала именно новостник я работал на телевидении четыре наверное года я делал ves.ru который был уже в рамках там был ещё до этого ves.ru который был не на телевидении а потом Российское телевидение обрело я делал там сайты культуры телеканал культуры там спорт Вот что-то такое у нас это называлось дирекция интернет вещания ВГТРК вот там было достаточно смешно потому что в общем лот уже как бы подступала но общее отношение ко всему этому было такое что во-первых ну новост ну как бы вообще телевизионщики на всё смотрели что там значит какие-то ребята что-то делают Ну и ладно мы тут как бы у нас большое Да а там какие-то непонятные чуваки А мы в свою очередь в свою очередь говорили ой как Как здорово Мы поработали как много трафика мы принесли у нас аж сервера упали значит ха-ха-ха вот сейчас то что воспринимается просто как некий такой намёк на непрофессионализм вот тогда вызывало скорее такой ха-ха-ха как здорово значит что это всё растёт а потом это всё довольно резко естественно поменялось когда интернет в общем-то оказался у всех в кармане Но это произошло там сильно позже вот в четвёртом году я пошёл работать в компанию которая называлась Мамба и с тех пор то есть вообще говоря мой путь и вот моя как бы карьера с в проектах Андрея Андреева она началась ещё Тогда Андрей Андреев он собственно был фаундер и проекта баду и вот с четвёртого года мы фактически столкнулись с совершенно новой реальностью мы делаем сервисы сервисы для огромного количества людей для фактически миллионов людей для людей которые пишут друг другу создают кучу контента Это какая-то совершенно новая реальность которой ещё не было тогда ещё говорили про это я не знаю Помнишь ты или нет это называлось вот сейчас web3 другое он больше про крипту А тогда говорили что web3.0 - это или web2.0 Блин я забыл уже сам в общем короче говоря когда когда вот люди стали создавать много много контента вот стали говорить что это как будто такой новый новый веб тогда были какие-то очень странные представления о том что появятся новые сервисы типа 43 это люди создавали значит какие-то там просто спеты какие-то тексты и надо было к ним присоединяться и они думали что возникнут какие-то дискуссии вокруг этого то есть социальная сеть вокруг интересов которые в виде твитов В общем всё это сдохло потому что это было всё довольно наивно Вот Но это было уже чуть позже В общем короче говоря пришло куча народу которая очень много стало загружать тогда был фликер тогда уже был Life Journal У меня кстати говоря трёхбуквенный ник в jour То есть я ещё успел там когда-то там давным-давно Я не в первую попал получается да Я не знаю Там трёхбуквенный просто не был занят вот короче говоря я не знал тогда о том что когда я был по я не знал что там вот этот мкш и всё но когда мы пришли в баду Сысоев в Рамблере тоже значит борется с трафиком и пишет свой сервер строго говоря там было несколько ещё попыток сделать похожие сервера другими людьми там например был такой тоже Российского производства сейчас к сожалению забыл фмили zer сервер Потом ещё был по-моему не российского он так писался lighttpd Вот они в общем как-то проиграли видимо конкуренцию ngx чуть позже тогда в общем много кто писал появилась эта знаменитая проблема c10k Ну она уже была просто она стала очевидной большому количеству людей и вот появилось два сервиса один серс eng другой серве Сервер это открытый Значит один обрабатывал ХТП трафик другой был кэш сервисом один был сделан значит сысоевым А мы его забрали в Мамбу и мы были в Мамбе по-моему типа номер два внешних клиентов таких больших Кто по крайней мере заявил Сысоева что мы пришли на его технологию значит Сам он работал в Рамблере значит Рамблер естественно работал там года с третьего наверное на никсе и был ещё такой интересный проект Он наверно Сейчас существует й е это что-то типа тоже мамбы но Эстонская да А мы были третьи А и использовали мкш тоже и более того там Чуваки которые втащили там основной человек который Тогда втащил наверное это был Андрей Нигматулин вот он ещё и разобрал этот мкэш и в общем большую часть сервисов которые мы добавляли там какую-то логику уже свою он делал в обёртке мкш Так что нам просто достаточно было чуть-чуть API там поменять и мы вообще долго жили Вот в такой парадигме знаешь быстрый язык и медленный язык Ну мы отдельно можем поговорить общем стек технологий там был такой база данных myq язык PHP естественно M cash nginx и так далее и потом наверное всё там завелось и распалось на кучу каких-то сегментов Когда уже стало много проектов и очень большое количество экосистем стало расти вокруг в том числе языков программирования не узнаю Не знаю Был ли тогда рубили он тогда появился но очень появился Руби значит помер пел стал достаточно популярен Python Я понимаю Потому что в первую очередь в институтах его полюбили Ну не знаю Это скорее такая моя гипотеза Да CP появился в общем помимо этого в девятом году создаётся Ох вылетел из головы итальянским что ли Сальваторе делает редис значит в девятом году и вот примерно с этого года а начинается ещё вот эта революция SQL New SQ создалось огромное количество продуктов которые во многом реша р балей больших традиционных баз данных которые не могли справляться с таким большим трафиком Вот и в общем Ну сейчас что мы имеем во-первых всё распалось вокруг этих экосистем программистов огромное количество и это конечно хорошо но по большому счёту вот какую-то одну экосистему берёшь или какое-то пересечение экосистем и там есть свои так сказать подходы то есть есть какие-то подходы более фундаментальные они никуда не делись А уже в экосистемах каких-то конкретных фише и вот их все нужно хорошо знать для того чтобы успешно применять Ну вот не знаю насколько я этот обзор сделал в том виде в котором ты хотел если интересно можем куда-то тут погрузиться Угу А давай прямо обсудим пару моментов потому что на самом деле это реально прикольно но тут есть несколько вопросов кстати Одноклассники ещё на Джаве появились в какой-то момент да дада да точно И вообще да они бы сначала были забыл как называлась компания тоже кстати там где-то в Прибалтике в Риге по-моему был центр разработки вот а потом это стал частью да mail.ru или как там холдинг назывался да дадада Они там купили но они как-то всегда Немножко себе были у меня знаешь такой вопрос Вот ты ЖЖ быстро проскочил А мне прям хотелось немножко зацепить чуть больше это же была целая Эпоха да то есть живой журнал все Там писали причём Кстати до довольно до тых наверно годов да Или даже после писали То есть все жили в ЖЖ и я до сих пор не понимаю ЖЖ - это вообще российский проект Нет он не был российским значит там был довольно культовый чел В программистский смысле Брэд Фит Патрик Как как я понимаю Брэд он писал на перле и все мои попытки поговорить потом с русской командой он потом действительно стал как бы русским Потому что его купили Ну фактически купил стратег А И вот все команды которые потом работали с этим кодом Ну всякое говорили про этот код скажем скажем мягко но бред очень интересный был чувак он буквально там не знаю в одно лицо Это всё сделал там у него было Некоторое количество сотрудников кстати говоря Вот Анатолий Воробей А который сделал собственно мкэш на си Ну там Я кстати имел э счастье задать тут прямой вопрос Анатолию откажи что как было Вот он сказал что нет Вот он себя автором прямо в полной мере не считает то что соавтором он скорее себя считает но написал значит носи версию именно Анатолий Воробей Несмотря на то что он Анатолий Воробей это Израиль программист компания которая это всё делала называлась что-то типа D interactive это короче компания бэда фиц Патрика или как-то вот он был с ней связан Короче говоря потом это всё выкупили чуваки В экосистему кажется рамбле Если не ошибаюсь наняли русскоязычную команду и всё стали там переписывать переделывать и поэтому какое-то время он ещё вот пожил в наших руках поэтому там наши чуваки В общем как-то там покоряли посмотрели составили своё мнение ну наверное там очень быстро что написал бфи Патрик вот да И что интересно значит там потом и Патрик пошл работать в Google Если не ошибаюсь чуть ли не до сих пор он работает над НМ вместе с вот всеми этими именитыми чуваками и да и Значит сам Анатолий Воробей тоже проработал там очень долго лет 20 после того как вот это всё уе в
Росно вни все года я хоть уби не помню но хабом по-моему не пахло Ну по крайней мере когда кш появился точно были sce Forge что-то вот какие-то такие названия й там же был какой-то этот что-то типа бит Бакета ещё старого который или не битбакет общем как-то дадада был А как они слились кодом вот мкш выложили как люди про него узнали как ксом люди начали пользоваться ты помнишь слушай я забыл если честно значит Сысоев по-моему пользовался не тоцм не то сном и он у него был локальный кого туда пускал не знаю но никто В общем никому не было интересно Там смотреть на эти патчи патчи кстати присылали Ой ну это надо конечно у ребят спросить кто эти патчи присылал но он выкладывал всё на свой сайт нене не Ну наверняка там он давал какой-то доступ А но он выкладывал всё на свой сайт у него был nginx.org вот сейчас nginx.com - это коммерческая nginx.org по-моему живёт до сих пор и там выкладываются прямо вот э сорц вот то есть он сорц выкладывал и в принципе ну большая часть людей они ну максимум читали код Никто особо не патчи вот так что в какой момент там он и как принимал и насколько она была там Коллективная эта разработка что-то кажется что вот когда проект стартует его как правило стартует прямо один человек и ему там вот эта вся история с многопользовательской управлением этими патчами Она его не очень волнует вот а потом уже ну как-то это всё превращается Да начина своей жизни так что Да ничего не было Сейчас вот кто нас слушает как бы вот знаешь есть такая флр такой то что типа разработка ВС сложнее и сложнее да абстракций больше концепция больше экосистем Но для те базовые вещи которые сейчас делаются просто по щелчку не задумываясь раньше это был конечно капец потому что как такового опен сорса Ну типа вот он есть но только ты попробуй туда что-нибудь да внеси изменения поэтому Понятное дело что первые версии они очень медленно наверно менялись Да пока там не пускали кого-то или как-то всё это не вылилось на опять же когда у тебя там понеслось году появи Так что там был п буквально типа максимум года три-четыре если я сейчас не ошибаюсь год седьмой нет восьмой Слушай а ты прав но переезд Я имею в виду долго шёл Ты же помнишь там ещё 10 лет после этого многие проекты Да даже до сих пор кстати есть проекты которые типа нене мы там где-то в отдельном мире живём и хрен ты к ним просто так зако это да коммерческие особенно проекты Да это уже реже это уже реже да Хорошо теперь вот вот примерно такая была история А вот понятие хауда Я точно помню были вот эти постоянные споры А мы лоуд или не Хад А мы вообще типа в чём Мерим ПС или ещё что-то а нагрузка на базу или на язык до сих пор ведь не решили Смотри у меня есть очень простой и с другой стороны длинный ответ лода не существует Вот давай я развернутую конференция есть мы понимаем О чём это на самом деле вот как таковой термин нуждается в проработке почему его не существует во-первых не существует одного знания Да потому что - это про в целом какое-то погружение под капот раз и обработка большого А чего трафика большого количества пользователей соединений из-за того что сама система довольно сложная там вот упереться можно в разное не бесконечное количество вещей Куда ты упирается но когда ты упирается в разное оно и решается по-разному поэтому по сути это такая штука на стыке системного администрирования и знания как сейчас работают железки и клады Да такою вот инфраструктуру знания на стыке конечно же программирования и каких-то программистский экосистем потому что они тебе навязывают через ранта и какие-то фреймворки дают тебе какие-то рамки экосистем связанных с системой хранения и там кше там С3 Вот какие-то появляются там открытые системы которые позволяют делать там S3 интерфейс типа мини и так далее значит вот ты грубо говоря вот в этом во всём должен вариться понимаете как всё это собрать вместе Ну и там просто много-много всего Вот вот вот это весь лот С одной стороны да с другой стороны лот - это всегда какой-то попытка Ну упереться во что-то H можно устроить и На одном сервере и поэтому можно говорить о том что H - это такая штука такое состояние Да когда тебе стало интересно про лот когда ты с чем-то стал не справляться Вот ты словил лот вот можно так сказать да хотя в принципе ты потом можешь какому-то из своих знакомых сказать что вот у меня там 50 там ПС всё упало скажет Ну что это такое 50 РПС это какая-то ерунда да на самом деле как только ты полез разбираться что у меня там не могу прокачать определённое количество запроса в секунду к ран тайму к базе прокачать какой-то трафик отдать какой-то трафик Да всё это так или иначе вопрос хайлоу раньше кажется что это всё было знанием таким знаешь общим инженерным вот я сейчас попытаюсь как бы немножко Пусть это меня обвинят в том что это какие-то значит
СП ску собрались смотри раньше Просто такая была тема что это просто инженерное знание оно как бы не то чтобы какое-то программисте или сеса админское оно где-то вот на стыке И кстати говоря Это моя давняя идея даже не идея Просто я подчеркиваю что-то последнее время часто что девос в целом как вот проблема она же поднималась то сейчас просто синоним сидна инженера или ещё кого-то она поднималась изначально Так что ребята вот куча появляется проблем связанных в том числе со сложной инфраструктурой с большими проектами на стыке значит вот этого знания если мы отдельно у нас живут сиса админы отдельно живут программисты то значит всё плохо потому что одни не понимают как это всё работает в проде Другие не понимают А что вообще работает и для чего оно работает и если что-то лампочка какая-то погасла то к чему это приводит Вот и изначально весь этот движ бы было вокруг того что типа Давайте вместе Давайте будем более инженер закончилось да закончилось это ещё больше стеной в некотором смысле между вот этими прослойками да прослойка инфраструктуры вокруг инфраструктуры и какие-то значит экосистемы э которые как-то там по кнопке или ещё как-то что-то куда-то уезжает код и и там всё прекрасно Ну я утрирую ну вот грубо говоря так не ну восприятие сейчас такое у тебя новый слой А что там внизу вообще непонятно не рядом а мы мы вот так стали Да друг над другом это раньше было проблемой чуваки такие собрались и сказали Эй алло это проблема и в результате эта проблема стала ещё больше вот я про это очень люблю говорить потому что кажется народ не очень понимает где мы сейчас сейчас проблема ещё больше чем была раньше но вот раньше Мы работали как-то больше вместе Уточни пожалуйста что ты хотел Там куда-то меня в сторону немножко Увела Нет ты ты сейчас Классно я как раз хотел имен на эту тему как раз про восприятие хайлоу то есть мы говорим в принципе да вот в контексте именно не только самого хауда но и действительно изменения вот этого восприятия И что в том числе на конференциях говорят короче Во что всё это трансформировалось это очень классно Так что Давай продолжаем Да смотри вот я уже сказал что как бы есть такая шутка про Хало не существует Вот и дальше возникает вопрос Окей А куда это всё трансформируется я честно говоря не вижу большой философской какой-то трансформации самого термина потому что он по-прежнему означает примерно следующее это некоторая совокупность знаний о том как обработать большое количество пользователей вот если очень грубо соответственно для разных бизнесов для разных инфраструктур для разных экосистем разных компонент которые мы знаем и их собираем проблемы могут быть разные поэтому Коль скоро этих компонентов становится очень много и тут ещё появляется Клауд индустрия прекрасная которая дала на самом деле очень много и буста в первую очередь стартапам Да и не только стартапам с одной стороны с другой стороны поспособствовал вот этой слоисто Да превращению как бы знания в некое ещё более закрытое знание вот кажется что вся трансформация идёт вокруг того что Ну в целом все могут в своих экосистемах устроить лот и решить эти задачи но способы решения разные и то на каком Ну грубо говоря сейчас вот на каком языке они обсуждаются это уже очень глубоко в тусовочка То есть ты не можешь просто сверху есть какие-то фундаментальные проблемы Ну грубо говоря вот двист Будут обсуждать там не знаю проблемы своей виртуальной машины там по-своему да а там не знаю чуваки которые обсуждают как сделан ран тайм ленга Да как-то будут говорить на своём языке как будто бы произошла такая уже сегментация вот лот уехал туда отчасти и ещё хайлоу разъехался по куче компонент которые тут здесь появились вот у тебя был постгрес потом вместо постгрес появилась куча вендоров Потом значит Грин Плам вместо Грин плама российский план потом коммерческий постгрес Ну и в общем понятно что в рамках как бы даже одной экосистемы появляется одной экосистемы постгрес появляется огромное количество нюансов И это тоже в некотором смысле Хало потому что без этого знания ты как бы это вот всё всё вместе Не составишь Может я коне слишком свои стш как бы темы Ну пото что как сет вынужден влезать во все как бы кусочки да А может быть большую часть программистов сейчас это не очень волнует Вот Но мне вот кажется что глобальной трансформации Смысла не произошло но он уехал в кучу деталей плюс наложили какие-то чётко совершенно знаешь такие тренды которые на годы Да тренд облака тренд микросервисы Да вот он явно восприятие и архитектурно и методов немножко не то чтобы поменял но очень сильно поспособствовал тому что разговор стал вестись в том числе и с учётом всего этого дела Угу зна что здесь интересно то есть получается вот если мы допустим возьмём последние лоуд я вот я не знаю сколько ты там бываешь или нет Мне кажется это показательно потому что это как раз конференция на которой вот видны тренды Да а как изменилось то что происходит сейчас то есть какие доклады о чём говорят вообще термин highload используют у меня ощущение что его как будто просто даже перестали использовать насчёт термина Ты знаешь я тут пытался тоже продвинуть такую тему Что И термин то в общем-то не то чтобы суперудары для американца для англичанина это вообще ну как бы Get High Get low вообще ну как бы непонятно про что это то есть Ну понятно но не про явно не про высокие нагрузки Вот в общем Мне всегда казалось что вот очень жаргонный такой метод русского человека дать наименование на английском языке Вот Но тем не менее удачно меня тут стали поправлять люди стали говорить Нет вот в англоязычных коммьюнити тоже значит благодаря в том числе разъехайся по всему миру а нашим согражданам значит использует этот термин Я до сих пор в ПК H То есть я вот каждые два там раза в год я на этих конференциях отбираю какие-то доклады помогают убирать какие-то доклады Так что я конечно примерно вижу что происходит каких-то глобальных трендов Ну давай попробуем посуда Я честно говоря просто вот как-то не задумался смотри что мне кажется происходило это кстати тренд довольно давно уже идёт значит если ты обратишь внимание то большая часть вообще обсуждения большие данные большие большие нагрузки Дани Она идёт вокруг двхм у двхм слои развития сейчас ещё новая тема но смысл такой что вообще если большая компания начинает а обсчитывают какие-то гипотезы проверять эти гипотезы неважно Для чего Вот она начинает считать Ну почти всё сгружать это грубо говоря любой чих сгружать этот любой чих и этот любой чих он ну как бы на больших объёмах становится размером Ну то есть вот инфраструктура которую нужна для того чтобы всё это работало становится размером спрот у тебя та где-то рядом
двхм нае количество вещей связанных именно с хайлоу дом оно идёт вот в парадигме значит Как сохранять большое количество данных Как обрабатывать на литу не на литу колоночные базы взлёт развития и Значит уже повсеместное использование как колоночные баз в целом так и каких-нибудь так кли House и так далее вот такой появился тренд новый Да к сожалению ушёл тренд и в том числе благодаря может быть какой-то нашей слишком а скептического к этому отношению Ну знаешь мне вот очень нравились доклады типа как вот мы из А извините значит велосипедов и костылей так скажем собрали значит классный проект Ну проект которым пользуется большое количество людей внутри он может быть собран не очень оптимально Но вот мы прошли через этот путь Вот они Мы здесь И мы пришли вам про это рассказать Я с удовольствием такие доклады Стараюсь пропущ но в целом как будто бы ПК к таким докладам охладела вот мне на самом деле кажется что вот ээ такого рода доклады они в любом случае полезные кажется что просто записано куча видео и есть куча туториалов да то есть вот альтернативная точка зрения типа уже грубо говоря всё рассказано но я Мне кажется это не совсем правильно Потому что люди в индустрии Они не смотрят на всё на это как знаешь в науке принято типа ой что-то написали статью и не сослались на нашу работу она была на полгода раньше никто таким образом не смотрит на все свои шишки набивают и очень здорово что приходят и про это рассказывают Ну что в ДХ и в целом в базах данных бум всяких разных вещей решений сейчас появляется новый бум кластерных баз которые Ну часть из которых как бы был бум после вотре потом сть даста зарываться прое как-то вот не нашли свою нишу или не вышли больше чем там не знаю на условные там десятки миллионов долларов выручки это как бы ну с точки зрения бизнеса неинтересно и както там тоже болтаются или схлопывается Но какое-то количество интересных баз есть вот и российские базы есть в эту сторону тоже интересные новые вещи по сравнению с тем что там не знаю было не было лет назад наверно вот так ВС что кается
у в разных Иста Знаешь мне сейчас показалось Может быть я неправильно понял но вот я попробую подвести черту у меня прям реально как бы картинка сложилась после того как ты это рассказал проблема именно обработки то есть вот классический веб Да запрос ответ вот именно эта проблема такое ощущение что в целом решена Ну даже Судя по тому что ты говоришь то есть сейчас скорее речь идёт о том что мы уже накопили огромное количество данных их надо потом где-то там на фоне обрабатывать е какието связаные со сложными системами которые настолько огромные что там внутри как-то надо разъезжаться Но если брать Вот конкретную одну систему которая принимает запрос обрабатывает там не знаю база что угодно и возвращает то эта проблема в целом су Ну просто мне так показалось она как будто бы ну решена в большинстве случаев там горизонтально просканировал и в целом плюс-минус неинтересно об этом уже говорить что у тебя тут балансер что у тебя РАУ Робин что у тебя там не знаю синку поставили то есть типа ну это уже нормой стало или нет я всё неправильно понял Наверное ты прав до определённых пределов то есть грубо говоря облака и всякие разные обвязки в том числе которые делаются внутри компаний а внутренние облака они действительно дошли до такого А наверное уровня развития что ну там в определённых пределах у сервиса есть готовые ручки а готовые понятные способы принять этот трафик и кажется даже большое количество проектов Просто даже не доходит точки когда там начинают всё тормозить особенно кстати говоря вот этому способствовала микросервисная движуха потому что в результате там ну большие бюджеты уходят в инфраструктуру Естественно да там легче грубо говоря взять и получить очень дорогую инфраструктуру если ты всё-всё всё порезал особенно если ты следуешь вот этим всем традициям максимальной изоляции и запихивает значит своего микросервиса базу данных сразу же у тебя появляется вопрос стент какое-то взаимодействия между сервисов там усложнение мгновенно ты получаешь очень сильное но всё это естественно так или иначе складывается уходят сказать то есть мы закидываем деньги в инфру и решаем все эти проблемы значит Ирой наверное для определённого количества проектов да да решена но мне кажется что вот если ты не используешь тут проблема такая ты берёшь какую-то базу и дальше тебе говорят Ну вот у нас база скели как угодно вот она тоже скели не как угодно только в ряде скажем так проектов у тебя получится её слить бесконечно Поэтому если вдруг оказывается что в какой-то момент трафик превышает определённый предел Всё ты там уже на вот этом стандартном подходе не выезжаешь ты пытаешься залезть под капот и снова вот всю эту историю про то как проходит трафик Между какими компонентами должен раскова потому что иначе В общем Ну бы не создать проблемы и не решить её пока я я я думаю так то есть но но облака и внутренние облака сделали всё возможное для того чтобы вот эта точка начиная с которой тебе надо разбираться она как будто бы уехала вот в размерах стало значительно более сложно досягаемости Да я вот именно знаешь когда планировал с тобой подкаст я думал вот спросить вот я очень хорошо помню эти типовые проблемы для крупных проектов Ну допустим когда у тебя там 1.000 2.000 там 3.000 5.000 апликейшн серверов да каким-то образом А там же появляется банально такая проблема что у тебя на таком объёме они просто выпадают начинают там чуть ли не каждый час и раньше я прямо помню были разговоры и целая история что у тебя специальные инженеры там знаешь вырабатывают процедуры Как быстро воткнул выт нул там перебан сирова ось всё это добро сейчас я так понимаю вообще про это говорить особо смысла нет Если у тебя облако Ну да оно упало само то есть вот это всё добро оно само куда надо трафик перелила само опустилось с кубернетес и по большому счёту эта проблема ушла на программный с так сказать уровень да то есть это правильно сконфигурированы Нет если мы в облаках Я думаю что ты прав частично во-первых проблемы того что если у тебя там не знаю тысяча серверов при этом что у тебя что-то выпадает постоянно но это тоже не совсем так всё зависит от того вот Облачный ли этот сервер или нет Если этот Облачный наверное да А если это твоя твой парк железа то скорее Нет а да Там постоянно появляются какие-то проблемы всё время что-то не работает но не так что у тебя постоянно на на 1000 всё время что-то вылетает а что тогда что сейчас всё это решается методом определения Ну какого-то там ченга и динамического изменения конфигурации прокси балансера Как как не назови вот сейчас это всё уехало действительно в облака и наверное Ну особо никого не интересно это правда но понимаешь у меня нету опыта работы вот такого свежего в компании в которой были бы облачные инстансы на там не знаю именно тысячи но там похожих нот как-то облака случились после того как случились наши проекты с нашими там десятками миллионами пользователей поэтому мне кажется человек который вот с такими проблемами сталкивается он скажет по-другому с другой стороны зна всё-таки есть тренд что если огромное количество трафика люди уезжают в свою инфру такой тренд есть это кстати интересно да как раз хотел спросить потому что действительно проекты с такими объёмами их конечно много но всё-таки на общем фоне это наверное доля процентов да Если так вот уж посравнить с просто с в принципе с количественным проектом Да ну если говорить в плане работы Вот например возьмёшь там не знаю миллион программистов И сколько из них работает над такими проектами Ну наверное но как вот проценты ты в В каком что ты поделил на что чтобы получить эти проценты ну да давай копать в это глубоко не будем Но скажем всё равно это Это наверное ближе вот к тому посыл Когда обычно говорят вы не Google ребят Не пытайтесь ээ Ну использовать все те подходы которые они используют потому что вы скорее всего просто не Дора до таких масштабов и я тебя как раз хотел спросить вот чтобы эту тему закрыть а потом мы к базам перейдём Потому что ты уже несколько раз про это сказал Вот смотри есть тренд на то что во-первых сначала облака потом появился Куп Да и куб как бы вывел ещё больше управление инфраструктурой на такой программный уровень когда ты всё можешь просто описать и это просто наверное сейчас ну вершина просто наверное да того уровня автоматизации который в принципе можно достичь вопрос правильной ли это и в правильную ли сторону всё это развивается вот я сейчас тебя спрошу и второе - это действительно параллельно обратный тренд который типа ребят слушайте сейчас такой уровень автоматизации опять же Куп там какие-то другие вещи которые позволяют на голом железе уже самим Ну конечно чуть больше усилий но в целом это всё равно не то же самое что 15 лет назад голое железо и вы там офигеете всё это дело самостоятельно вот по сути два параллельных таких тренда существует Давай сначала вот про Куп Мне кажется что во-первых Ну прости это не то чтобы я цепляюсь словам но мне кажется что в целом подход форм какого-то описания конфигураций Да infrastructures C Вот это всё Это очень прикольно и вообще говорят не только Куп Да это просто вопрос скорее такого Ну API взаимодействия с программистами с людьми которые управляют инфраструктурой и поддержкой соответствующей конфигурации это в целом Ну очень прикольно куб сам по себе огромный конечно же Шаг вперёд а с кубом такая есть история то есть вот Давай я попробую перефразировать твой вопрос Ты фактически спрашиваешь не получится ли Так что поскольку уже куб в себе так много вещей умеет а то и в общем э рано или поздно облака Ну просто всё заберут решение всех большинства проблем которые вы решаете в своих там значит ло задачах заберут себе И мы вернёмся так сказать в Наш замечательный мир программирования где В первую очередь мы будем проектировать Там наш код наши классы максимум там ipi и ка там путаться в bounded контекстах Да вот нет Я кстати не думаю что такое произойдёт Но знаешь может быть это произойдёт после того как какие-то технологии железные станут А сильно быстрее что я имею в виду смотри Мне всегда казалось что куб в первую очередь ну помимо значит того что ты действительно описываешь инфраструктуру у прощаешь оркестрация докеров хотя их оркестри ет вообще говоря можно не только кубом Да вот но э значит там есть такая проблема которая только-только вот все говорят что типа куб уже её прекрасно решает это проблема баз данных Но значит Смотри когда у тебя есть вообще всего чего хранится когда у тебя есть какая-то оплеуха которая живёт на Ну там нескольких ядрах может быть да живёт и вот ей поднять А если ты следуешь значит правильным каноном А масштабируемых приближений ты не хранишь стейт в этой оплеухе и поэтому в принципе раскидать трафик на две аплик пухи 22 22 в принципе без разницы и значит то что это вещи которые автоматизирует и делаются по каким-то полиси которые прописываются в конфигах это прекрасно дальше возникает вопрос А вот мы можем также скели например базы и проблема тут как бы двоякая значит во-первых традиционные базы так не поселить то есть есть операторы которые управляют инстанса и могут даже Определённо сценарий как бы сделать но если у тебя есть условно говоря там одна база где там не знаю грубо 10 ТБ то в принципе вот так быстро разъехаться или там не знаю что-то чтобы появилось там рядом появилась какая-то другая традиционная база которая бы также работало Да в принципе это это сделать нельзя и либо получается значит мы должны прийти к ситуации Ну то есть грубо говоря во всём этом уравнении кажется всё что касается касательно сторе оно как было сложным и осталось сложно Несмотря на то что появилась куча операторов именно для там баз данных и так далее Я имею в виду именно вот эту вот как бы слин часть почему это не происходит Ну отчасти это не происходит потому что в принципе взять какой-то кусочек значит данных и увести его на какую-то новую ноду Ну это ну сколько-то времени Это не то же самое что перенаправить трафик на быстро созданный новый и где в докере поднялся твой в эту сторону кстати говоря идут кластерные базы они изначально пытаются всё спроектировать таким образом что некой такой единицей такой маленьким кусочком данных является какая-то не знаю что-то не больше одного терабайта может быть пол терабайта как например по умолчанию вро db да и все операции выстраиваются вокруг значит вот какого-то оркестратор который за этими чанка следит и эти чанки действительно можно там как-то раскидывать ну и может быть Если вдруг какая-то база традиционная станет вот такой кластерной или победит какая-то такая кластерная база то как бы весь пазл сложится но пока это не так либо там когда например вдруг появятся новые диски которые там несколько робай смогут очень быстро переносить копировать Ну может быть тоже это даст какой-то скачок а пока вот именно как бы кажется что вот всё что связано с авто слингом с управлением вот всего хозяйства бы больше приложение и про там гетерогенные гомогенное там управление удобное управление но больше про апы но не про то что хранит данные вот у меня пока как бы взгляд такой ну да ну спамит единственно толь всё равно есть проблема знаешь любят показывать эти картинки когда значит смотрите всё стало просто а потом показывают картинку кубы и там просто такой Ад Ну Мы все знаем сколько Внутри там систем как они взаимодействуют и без поллитра там не разобраться То есть тебе просто нужны отдельные специалисты Потому что если что-то пойдёт не так Спасибо я это тоже хотел сказать И я тоже это хотел сказать то есть кажется что разобраться в какой-то традиционной там истории когда у тебя есть просто Ну давай ладно очень А может быть слишком упрощая просто виртуалка и на ней есть твой докер или даже Докера Нет ну холь скоро всё едет Докера Будем считать что докер есть там даже когда у тебя есть виртуалка и докер там уже появляется некий такой слой да попробуй там ну все знают эту известную проблему что тебя могут в какой-то момент начать конфликтовать P tables на самой машине и потому что когда докер встаёт он там пробрасывается все эти соединения естественно вот А когда у тебя появляется ещё слой оркестрация там всё становится сложнее Я не знаю к сожалению пока ни одного человека который бы сказал что Да блин я разобрался Куп это классно просто не все говорят Блин мы разобрались потратили полгода перешли на Куп Да это очень мощная штука но блин он очень сложный вот фидбек такой я не могу Назвать себя профессионалом как бы Куба не являюсь девос инженером вот что называется что купил Зато продал но в целом тренд шикарный Слушай это удобно всё что удобно оно имеет право на существование да да Ну про второй тренд вот с отъездом от облаков скажем так у меня всё-таки ощущение что это пока только-только зарождается То есть я видел некоторые инструменты на эту тему но вот так чтобы прям готовые экосистемы которые массовые и можно использовать по полной программе вроде бы ещё такого нет Или может я не прав пропустил О каком классе программных систем или или вообще о чём ты говоришь а о чём-то типа ну таниса чтобы делать свои Облака на своём железе или или что нет Облака - это немножко другой слой это всё-таки сложно облака Я подозреваю на своём железе это как раз вот например какой-то крупный бигтех делает внутри свой свою платформу для своих разработчиков Да наверное это вот для них Я скорее просто вот если есть Прямо конкретный проект вот у тебя там десятки программистов и ты Ну достаточно большие нагрузки и ты понимаешь что облака тебе могут обойтись дорого и можно без облаков то есть короче решения которые позволяют это конечно не Куп может быть да это что-то более простое но это иб который просто знаешь там идёт на сервера
пулитцеровской это можно попре парировать потому что она кажется не как обычно это бывает не это решение оно не живёт в каком-то одном компоненте и Даже те компании которые Ну я не просто так сказал про компанию nutanix фактически NAN - это контора которая делает решение компаниям которые ещё не бигтех но уже достаточно большие для того чтобы сказать мы хотим свои облака Ну это может быть по причине комплайенса Да что ты не можешь уносить свои данные куда-то Да но при этом хочешь удобно управлять Ирой или в целом Ты посчитал и понял что это экономически целесообразно поэтому Ну как бы там Спектр значит сейчас есть вот как минимум одна компания новая достаточно которая в России такие вещи делат я думаю что много таких компаний Я просто в этом не очень большой Специалист значит а кажется что такие подходы существуют собрать всё из так сказать вот того что есть Ну условно говоря там не знаю взять какой-нибудь ок да И вот допустим его как-то водрузить и и на железо Да и научиться этим управлять такие в принципе и компании есть и которые перепили openstack и похожие В общем вещи которые позволяют как-то виртуалити свою инфру Ну они как бы есть а софт такой есть надо просто разбираться вопрос действительно всегда экономики легче стартовать на облаках а довольно быстро Ты понимаешь что ты за что-то переплачиваете не нужно создавать единицу фултайм инженера а потом в какой-то момент кстати говоря тут тоже есть известная история что тебе всё равно какие-то инженеры нужны просто они для облачной инфы другими вещами начинают заниматься Вот Но конечно если тебе в какой-то момент надо выстроить пайплайн особенно если ты и на гибридной
инфрейн не не мгновенные не пошёл в магазин и купил там не знаю несколько десятков сотен серверов это тендеры это заказы длинные это поставки это водружение этого всего настройка это ну прям там цикл может быть легко пару кварталов А ну может меньше Но квартал квартал Элементарно если большая поставка поэтому это вопрос всегда экономики ты начинаешь смотреть вот у меня недавно прямо был кейс там я там супер микросервисная инфра и её можно там как-то перепилить и сэкономить сколько мы экономим посчитали деньги и понимаем что в принципе вот команду которую надо собрать для того чтобы просто сделать этот трансфер она будет стоить дороже и её время будет стоить дороже чем вот это экономия Вот и поэтому далеко не всегда это нужно делать но вот огромное количество компаний не очень больших я мне сложно сейчас сказать какой-то должен быть там объём Да в деньгах Вот они все с удовольствием несут деньги в Cloud компанию и не заморачиваюсь развитием внутри вот этой экспертизы создания значит какого-то специального отдела который ещё понимает как это всё работает и так далее это вот в мире особенно в мире особенно больше Cloud oriented как-то вот в России кажется как будто бы больше чуваков пытаются что-то сделать на гибриде или на своём железе но опять же знаешь вот если так считать Вот это тоже мы такие думаем Ну наверное нам в любом случае нужно будет много серверов нам в любом случае нужно будет много машин Поэтому нам нужна какая-то обвязка которая превратила бы значит наши машины в об Я работал в разных компаниях в том числе работал в компании везёт где всё было сделано следующим образом там было много-много маленьких дата-центров вокруг городов которые принимали трафик вот локальный трафик заказ такси локальный трафик заказа такси Ну потому что если ты возьмёшь там не знаю какой-то крупный город Ну Казань да то Вот Все кто в Казани и в области или может быть там ещё какая-то в агломерацию там что-то входит они все ну как бы ездят где-то рядом Да там никто не едет в Москву грубо говоря если человек из Казани приехал в Москву Он там в Москве будет звонить по Московскому телефону и пользоваться грубо говоря приложением в Москве которой соединит его грубо говоря с московским дата-центров поэтому компания строила много-много десятки по всей России мини дата-центров которые были очень простенькие там были достаточно мощные машинки и в общем вот трафик Аля Там миллион заказов в день Ну я сейчас может слишком сказанул Да ну вот Ладно сотни тысяч заказов в день да и миллион наверное заказов в день Да его можно обрабатывать на очень небольшой Фрей которую не надо
виртуалити где В общем Ну вот можно может подойти и совсем такое естественно и управлять этом и рассказывать и как бы обучать новых чуваков работать с этим это всё не так сложно ещё один момент смотри если мы возьмём так очень грубо построим модель мы это делаем кстати говоря достаточно часто такое упражнение очень такой при обучении типа у тебя есть 1 млн активных юзеров за день да вот и ты всё пытаешься выгрузить на один сервер Сколько у тебя будет rps на App Ну там понятно Что тебе нужно построить собственно модель твоего софта вот по большому счёту вот если ты очень грубо вот переложи сделаешь какую-то простую модель твоей сессии и так далее То 1 млн активных пользователей это если не не ошибаюсь типа несколько тысяч rps порядка тысячи rps а 1.000 РПС Ну как бы много это или мало Да ну вот смотря каких ну ты понимаешь Да Что Ну не так и много да то есть Вполне себе А это миллион понимаешь А это миллион вот поэтому Да тут есть о чём подумать Да я завершу вот этот блок одной истории про хекслет потому что он интересный потому что он застрял где-то посередине а потом мы уже к базам с тобой соответственно перейдём Значит есть такая интересная история у нас инфраструктура А ну может быть серверов 10-15 Ну просто потому что там разные роли там всякое разное есть И там есть интересная штука значит вот сам проект клет да а это классический веб и он соответственно понятное дело вот Куп всё хорошо там всё работает при этом но есть интересная штука Мы ещё в тринадцатом году запустили тренажёр да то есть у тебя в браузере открывается редактор все дела И он сделан довольно Прикольно а потом его кстати пытались ну многие другие школы адаптировали и даже к нам приходили спрашивали то есть короче многие на базе него свои тренажёр делали но он у нас крут знаешь тем тем что по сути у тебя там запускается то есть не обвязка способная запустить любой образ контейнер А что внутри вообще неважно Но поскольку ты понимаешь что это как бы это прямо редактор запускаемый внутри и человек этим управляет то получается интересная концепция то есть обычно же как считается докер - это образ это один какой-то сервис То есть это не проект в котором много всего здесь наоборот должно быть потому что управлять Ну представь у тебя одновременно 1.000 человек учатся и для каждого запускать пачку как бы образов Это довольно странно Ну неудобно этим управлять потому что надо Как одним и поэтому у тебя одно упражнение это один контейнер и теперь смотри какая получается Интересная ситуация это очень нестандартная задача с точки зрения вот облаков и не облаков Дело в том что куб не способен обрабатывать это То есть он у тебя работает При том что он весь такой динамический но он у тебя работает по фиксированному набору То есть у тебя структура самого проекта фиксирована у тебя есть какие-то поды У тебя есть там деплоймент ну короче все вот эти их понятия Да они складываются в некую структуру А у тебя здесь получается что есть Ну практика у нас суммарно порядка Ну по разным программам около 3.000 ставь это 3.000 образов каждый из которых в любой момент на любом сервере из кластера обрабатывающем практику может подняться Ну и он там падает по правилам Ну типа не активен редактор там человек не был какое-то время При этом они все йф потому что человек пишет код и получается что эта задача Несмотря на то что она вполне решаемая то есть инженерно она интересная но она не какая-то гипер прямо там какая-то сложная Да но она не укладывается ни в одну из этих систем и получается что как бы с одной стороны хекслет например в кубе Но вот управление этой экосистемой у нас полность ручное то есть ну прямо запросы в докер стартануть опустить понимаешь да вот контроль этот через базу и всё остальное мы пробовали мы изучали Куп насколько он способен к поднятию то есть типа я прямо говорю подними вот этот образ который вообще не связан ни с чем там Опусти Нет он к сожалению не умеет поэтому получается есть набор Да там Всё вокруг полиси боле ролей сервисов более высокоуровневые Да понимаю поэтому получается что у тебя существуют всё-таки всегда проекты которые не укладываются вот никак И ты такой блин Ну придётся что-то тут ручками поделать прекрасно прекрасно да да да да и задачка интересная ну не всегда хочется но да А знаешь что кстати самое интересное мы когда это запускали ладно Нам повезло что в этот момент уже докер появился потому что я ещё до этого момента когда об этом думал я такой как мне изоляцию вообще обеспечить потому что это же тоже геморрой ещё тот и вплоть до того что знаешь какая была идея мы поняли что в какой-то момент наша система очень похожа на сиай вот эти вот онлайновые когда у тебя при старте по сути стартует виртуалка под которую всё Сета Независимо и мы изначально хотели идти по этой идее то есть мы очень быстро Стартуем туда Всё заливаем и человеку в браузере соответственно открывается без Докера Но даже просто сяй проще потому что у них время может быть дольше А у нас люди долго ждать не будут да то есть всё-таки должно быть какое-то адекватное время и мы вот прикинь тестировали короче разные вот эти системы кто а облака на тему того кто С какой скоростью стартует тачку Слушай у меня похожа была задача Да и проблема в том что это не детерминировано вообще у тебя в одном случае может быть 15 секунд а в другом 30 минут И ты ничего с этим сделать не можешь и это везде а там где подешевле у тебя может быть несколько минут и тебе бы хотелось туда Но блин вот тут для тебя блокер что стартует несколько минут ждать никто не будет даже на Гугле в принципе на Google клауде Вот у нас тоже были вот в том образовательном стартапе констрактор г где я работал там есть виртуальные лабы там на любом языке стартует виртуалка и она стартует в Google клауде сейчас не знаю может ребята уже не только сделали Cloud агностик вот в Google клауде она стартовала редко когда меньше одной минуты вот ну то есть бывало что меньше Но там мы закладывали в целом что она что-то и Это всё-таки заметно юзеры не хочет ждать заметно да да да да А у нас особенно когда Ну я понимаю там бывает что ты прямо стартует некое окружение чтобы долго и серьёзно в нём работать А когда тебе просто функцию надо написать ну бывают упражнения бывают где надо с фреймворков просто функцию написать то минуту ждать Конечно тебя не поймёт никто поэтому Да есть такая проблема короче мы решили это ручками Слушай я инфру я инфру раздаю пока вот типа просто вот у тебя твоя виртуалка и всё Ну мы мы маленькие мы можем в какой-то момент Это станет проблемой естественно приходи поговорим да Я кстати даже где-то по-моему докладно эту тему делал как мы это реализовывали хорошо давай теперь к базам данных Я просто хотел у меня прямо в голове крутилась одна парочка историй вокруг одной компании вокруг одной базы данных Возможно ты знаешь что я имею в виду когда ты говорил про скейлинг про автовсе эти штуки Мон db прекрасная база данных которая научила нас много всему что ей не надо пользоваться и проблемам которые возникают если ты пытаешься создать с нуля базу данных и сказать что она максимально скели Сама значит проект for Square ты помнишь эти истории что они сделали К чему это привело Я помню Две истории с транзакциями и потерей данных и второе с как раз перелив кой данных Когда у них А там же мастер мастер репликация если я не ошибаюсь нуно Смысл в том что в общем там была история Когда у них то ли синхронизировались ноды то ли у них там менялся мастер короче что там произошло там вот этот механизм давай так этот selling Point был такой да они всем рассказывали насколько это классно Круто И если мне изменяет память из крупных проектов for Square первые которые на это наткнулись Либо они там ну как-то принудительно запустили эту операцию Что произошло Да эта штука работает она начинает переливать блоки что там внутри наверное что-то есть я не очень хорошо знаю как они это обработали но В общем короче когда и начали переливать Выяснилось что у этой
хернинг эту ситуацию Но тогда Выяснилось что использовать этот механизм на живом проекте Просто нельзя Ты кстати эту историю помнишь или нет Слушай я просто помню в целом что там было как будто бы две части до как-то какой-то там тайр что-то в общем вот этот движок то значит ч движок вот до него монго db до и монго db после и помню что много пока было до значит многие в это всё по упирались я могу сказать несколько я понимаю я знаю где хорошие обзоры прочитать Вот Но в деталях конечно К сожалению нет Да ну а второе было Помнишь у них там отсутствие транзакций и вообще в целом типа новая база данных а на неё серьёзную нагрузку дают там какой-то сбой произошел внутренний именно в базе когда они покатили огромное количество данных они потом там долго восстанавливались Да это вот сейчас смотри вот интересно Знаешь что ты ты смотрел хотя бы по диагонали последнюю статью стон брекера Энди Павло про типа типа где мы сейчас в развитии баз данных там жаргон Ну короче есть обзорная статья летом она вышла вот мы тут её тоже кстати разбирали и короче там интересно там в конце такие знаешь вот я сразу представил себе таких Старцев которые значит Ох там молодёжь значит Вот И там есть такая немножечко меня
покороче примера приводится Мон диби Ну просто как бы там типа чуть-чуть поводили Да чуть-чуть поволи мо db и mysql то есть чел из экосистемы поса который чуть ли не придумал постгрес значит нашёл и ещё вот здесь значит утереть нос этим выскочка которые долгое время вообще говоря были Ну ладно хорошо Это я тут вот сейчас и та и та база хорошая и Мон db вот я забыл как называется этот движок они как бы многие косяки исправили может не все вот но но сейчас вроде как вот большого количества статей или каких-то жалоб нет да жалоб нету Вот и перко вот есть перко кстати Ты знаешь компания пико которая занимается
консалтинговой момент стали расширять спектр услуг Они раньше работали только с Маск потом стали работать с монгой кстати говоря с посо Вот и в общем если бы совсем монго была неудобно конечно никто бы ей пользоваться не стал так вот она конечно многие вещи решает скажу я как чувак такой очень реляционный ну в некотором смысле да то есть я странно Я за сегодняшний день второй раз это говорю значит я базы данных изучал по книжке дейта то есть вот я помню ещё например такие сентенции как третья нормальная форма бойса кода я не помню В чём она отличается от обычной третьей нормальной формы Вот Но вот такого рода вещи и у меня было такое тоже отношение что типа ну что это за какие-то странные такие базы данных до комментарие так тогда все стали в традиционных БАДах значит Джейсон поля и прочие вещи делать И потом я очень быстро своё мнение это изменил но у меня было очень скептическое отношение сначала типа что это это нарушение какой там не топ Первый не то второй нормальной формой значит атрибуты должны быть атомарные какой студенческий синдром какой-то это он регулярно возникает у людей которые в одном русле были обучены Да не ну да я верю единстве то Кстати у нят вопервых мы я не помню с км у меня был подкаст обсуждали Я тоже спрашивал про Мон там знаешь что говорят что при том что база Наверное сейчас уже неплохая стала Ну давай так и года прошли сколько там говорят 10 лет надо да базе данных чтобы настояться если её развивают но там я так понимаю что сейчас она во-первых нифига не открытая Несмотря на то что кот открыт да Или как это правильно называется не свободна ВС время путаю
тоже сделали своё облако И кстати говоря я его использовал на одном из проектов у нас было амонга и там было облако как раз атлас по-моему называется облако именно вот для от от от конторы производителя монго да извини перебил тебя нет Да ты всё правильно говоришь короче там сказали просто что там сейчас такая лицензия И с тебя просто дерут деньги за всё то есть она превратилась не просто в коммерческую базу данных но и какую-то ещё дико дорогую И там народ на реддите есть огромные треды в стиле там монго умри Ну что-то жёсткое очень и народ там её хейтит просто по полной программе Ну ребята пытаются зарабатывать деньги за что купил за то продал Да я в этом так Ну по крайней мере они по-моему там главная проблема в том что они пошли именно в какие-то супер жёсткие ограничения чуть ли не размер коллекции то есть они очень ну по-разному же можно это дела Да вот они сделали как-то Так что вызвали адовый хейт со стороны сообщества Я так понимаю что новый прое ну далеко не все выбирают её именно как новую Это первый момент второе про Петю зайца просто хотел сказать он мы с ним тут вот Он иногда приезжает мы мы с ним гуляем всё-таки в Майами знаешь есть у людей с Севера так сказать ближе к нью-йорку ездить сюда Есть такая привычка Вот и мы с ним тут встречались я не помню последний раз он пару лет назад был но я знаю что он вообще-то ещё помимо прочего занимается инвестициями и я разговаривал с Лёшей поланко в одном из подкастов и он разрабатывает как раз базу данных FA db она построена поверх ПАЗ Гри Ну там со своей историей и вроде как Петя является одним из значит Соин Вестов в этой штуке Я знаю ещё как минимум один проект в котором он тоже как-то участвует Так что да э ну я думаю что там далеко не один проект э в его сфере интересов Это здорово Ну это кстати видимо говорит о том что ситуация наверное такая непонятно что выстрелят то есть реально какой-то бум Пошёл Да у тебя базы поверх баз там разные концепции разные подходы и ты ты смотришь на людей я такой я разрабатываю это я разрабатываю эту базу я разрабатываю эту базу я такой что вообще происходит Мы какой-то кризис переживаем сейчас в базах данных нет Ты знаешь Сейчас скажу вот как будто бы как будто бы про происходит следующее большое количество людей покупает готово купить так сказать какой-то авто скейлинг или какое-то упрощение работы когда ты не
влезает на этом заработать лауды дают свои какие-то опции значит появляются какие-то коммерческие продукты а традиционны базы данных точится на месте потому что это ну в некотором смысле во многом это пересмотр совсем таких глубинных базовых вещей как вообще штуки все должны работать да какой-то архитектуры Вот и сначала люди делали все эти Там и так далее а потом как-то вот этот бум прол особенно после того как все традиционные базы реализовали у Сен поля и прочее мно стала пониже Хотя ВС равно е раз говорю не то чтобы я топлю за то что все эти базы оказались не нужны там оказались очень интересные базы которые до и особенно все колоночные базы вот там много разных баз Да появились теперь вот тренды которые сейчас есть то есть ты говоришь вот я вижу что все разрабатывают базы вот Обрати внимание всё про что ты скорее всего так смотри это ВС То есть раньше бы трен Давай попробуем традиционной базы данных Где уберём транзакции поэтому всё станет сильно проще уберём собственной SQL сделаем какой-то простой протоколы поэтому не будем тратить ресурсы ни на что всё у нас будет летать Ну типа там Ну ещё как такие базовые идеи и поэтому сделаем что-то что будет там в 10 100 раз превосходить базы данных и будем это продавать или там чуть-чуть возьмём и реализуем внутри какие-то примитивы которые в результате превратят базы данных в Application сервера да то есть какие-то сложные индексы и нам не ну нужно будет писать грубо говоря на там компилируемый языке какой-то быстрый сервис Мы из значит из богос питона ПХП там и Руби которые значит в 10 раз или в 100 раз меньше больше ресурсов жрут Ну кому это надо Да они же просто меряют всё вот значит по сравнению с каким-нибудь там CC + Plus Да значит вот пусть работают с редисом в котором там какие-то эти примитивы уже реализованы им не нужно поэтому значит какую-то значит опку можно писать Ну я сейчас это отдельная тема которую можно обсудить Ну это ну типа Тарантула ты имеешь в виду Да просто у меня крутится Аля Аля Тарантул в том числе это тоже вот как бы вся эта история тоже типа Давайте превратим из базы данных Application сделаем это всё А что не пошло хочу сразу уточнить потому что был же вот этот вот все такие вроде вроде вроде вроде и чем закончилось где-то пошло Слушай где-то пошло просто это всё не массовый не массовый рынок Да вот а массовый где там же пог mysql традиционные базы данных которым в принципе по большому счёту до Фени потому что хайло далеко не у всех вот все эти вопросы они интересуют далеко не не всем и вот Обрати внимание значит был вот этот тренд А такие новые значит базы данных там был Ещё один маленький тренд его можно даже как байку рассказать Я был кстати говоря на конференции которую организовал а организовала тоже перко значит там петь или кто-то из его коллег придумал совершенно гениальную вещь Значит я не знаю договорились они или просто это заранее была такая хитрость значит окл тогда уже был и вот Oracle выкупает значит традиционно огромный там не то отель не то конгресс-холл где значит вот вот всё э всё И там есть один Островок Митин Room который забронирован на перко и Пикон говорит вот всем кто значит пришёл на вот эту значит конференцию Мы в нашем митинг руме значит даём свободный вход и у нас там будет своя программа в результате Там просто bitcom э там очень крутые спикеры значит всё Это естественно в разнобой как будто бы Ну впечатление такое что как бы это чуваки которые просто забежали раньше вот здесь палатку поставили Я не знаю может быть изначально они договорились Так вот вот на какой-то такой конференции очень давно я был и Значит так тогда был такой тренд люди приносили сервера говорили Ребята у нас новая прорывная технология баз данных вот смотрите и там даже было такое шоу человек говорит Я сейчас вам расскажу что это такое А пока Покажу значит вот у нас есть сложный аналитический запрос он его опишет на экране запускает и вот у меня есть там не знаю традиционная какая-то база а вот значит лампочки мигают и там сейчас эта база поехала 20 минут будет выполнять значит этот запрос дальше у него всё там синхронизировано так что он делает какой-то очень общий маркетинговый доклад к концу этих 20 минут он подходит к моменту когда он берёт копирует этот запрос выполняет его на каком-то другом сервере который здесь же стоит он его поставил значит всем показал он выполняется за условно говоря там не знаю 10 секунд или 5 секунд и всё
подгадать работу эти запросы при примерно одновременно То есть к концу значит своего доклада да А потто в чём у людей просто SSD диски вот тогда это было как бы ну новостью они говорили мы делаем новое хардвер вот на самом деле это просто SSD диск это какая-то Коти штука которая потом оказалась просто в любом магазине грубо говоря да Ну вот был такой в том числе тренд трендов много разных Да вот эти все тренды они закончились сейчас почти все базы про которые ты говоришь это Cloud native базы базы которые типа скеля без db и много других проектов они Они вот про это а другой проект про который я подумал это проект который тоже типа он про мониторинг Короче говоря тоже упрощение э слежение за инцидентами за инфраструктурой ну да Dog там номер один наверное или где-то да да но это другой проект вылетело название из А стой ты хочешь наверное сейчас мне сказать Про метео Да не это а вот есть был их проект раньше омер Вот который тоже куда-то ушёл а потом это эта же команда или этот же человек сделал вылетело название из головы К сожалению петь там тоже что-то вот я вижу я на линкедине Кстати ты обратил внимание что ндн стал социальной сетью профессиональной вот он Да ме вообще Facebook заменил почти Я офигел точно да да Вот я тоже офигел это произошло это тоже тренд это произошло буквально за пару лет а ну может за три года я не знаю я не следил Вот и Facebook всё уже был когда-то русскоязычный Facebook где действительно писали контент типа Facebook заменил Live Journal Да вот сейчас Facebook там по разным причинам как-то вот как будто бы слился но вот теперь контент И вот я Почему говорю что я часто вижу какие-то статьи именно петины в линкедине shares и прочее Слушай да давай вот тогда такой момент к хайлоу то есть вот у бас действительно есть инфраструктурные проблемы Да связанные с тем что их так вот не за слиш И кстати особенно если ты идёшь не в облака а к себе вот тут-то самая большая проблема Я кстати вот в прошлый раз мы обсуждали систе дизайн и всё остальное на прошлом подкасте кто не посмотрел Посмотрите обязательно и мы там как раз вот этот вопрос затрагивали что даже если ты идёшь к себе в облака скорее всего лучше взять какую-то менеджер базу Да ну то есть типа самостоятельно это делать Это очень страшная история Да и поэтому с базой наверное сложнее всего тебе точно нужны специалисты которые вот тебе помогут Кирилл смотри Подожди Да я тебе вот мы это всё тоже Разбираем и на примерах и на всяких разных прям Ну прямо на инфраструктуре значит С одной стороны ты и действительно Если у тебя есть какая-то штучка которая по кнопочки или по какой-нибудь Там просто внутренней по каком-то внутреннем полисе авто слится это всегда прекрасно во-первых есть то что называется подход его называют наивный шардинг Или микро шардинг когда ты грубо говоря изначально свой код написал таким образом что у тебя изначально есть там не знаю сколько-то кусочков данных которые ты потом средствами Ну стандартными средствами переноса данных можешь раскидать по определённому количеству серверов и вообще горя огромное количество проектов вот если ты заранее там сделал этих кусочков данных не супер много вернее не супер много чтобы всё было очень сложно и не супер мало то ты в принципе можешь слиться в достаточно широких пределах но они это получится в таком немножко в ручном режиме но оно всё будет очень просто если твоё приложение будет это поддерживать там никакой сложности Нет потом у тебя появляется вся эта история типа шардинг
решения которые как бы помогают этому да то что называется shing midle или sharding Proxy Это конечно по-прежнему не так же легко Как какая-то там Cloud na история понимаешь но проблема здесь заключается в следующем что с точки зрения надёжности вот сколько там лет человека лет тысяч десятков тысяч я не знаю вложено например в какую традиционную базу типа там и Да и кажется что вот делать какой-то решение поверх или какой-то SH midle А вообще говоря приводит к Ну более надёжном решению но при этом Да у тебя появляются какие-то платформенные задачи когда ты говоришь давай возьмём Cloud native скорее всего это пока будет что-то такое не очень Ну не то чтобы сырое Да но оно будет с какими-то особенностями Да вот пока не появилось есть какие-то заявки Да в какой-то момент появятся какие-то продукты к которым есть доверие и кстати говоря вот если не деньги Да тот же редис то каким образом в совершенно бесплатной версии и мы это тоже как бы крутим Да на своей
инфрейн просто очень здорово и оно работает и тебе не надо никакие деньги не платить это всё как бесплатно не какие-то гарантии Там нарушены те по умолчанию вообще там можешь данные легко потерять надо немножечко подкрутить параметры для того чтобы гарантий было больше но это всё равно не транзакционная база конечно да вот но я к тому что ра или поздно вот если так попытаться побыть кассандрой Смешно да кассандрой Или Слот то вот значит можно думать так что либо значит традиционные Дора и что-то себе имплементировать либо сверху появится какая-то нахлобучка а или что-то типа либо появится какая-то ба данных одд в кото все поверят и она за говорит мой сын Вот он перечисляет перечисляет он либо нет такой ну ты математик да да А вот дай Вот про слинг да то есть вот если мы всё-таки берём постгрес например ну понятно что когда у тебя там стартап и люди веселятся на все деньги они там любую хрень поставят и будут с ней будет классно проводить время но всё-таки ребята которые чуть может быть где-то порана ней побольше в будущее думают про бизнес думают Они наверное всё-таки Ну ближе к классике чтобы понадёжнее да и всё такое и вот допусти Пустим они берут насколько Сейчас скажем классический баз данных они Ну действительно справляются с нагрузкой Давай допустим что в коде не делают прям совсем уж жести какой-то потому что убить то кого угодно можно типа объёмы которые они способны обрабатывать количество там коннекто в которые к ним можно прийти и всё будет нормально там синхронно асинхронная блокировка построение индексов Да там и какие-то такие вещи то есть насколько Вот они сейчас Ух И когда нужно например там не знаю шардирование там гока Ани Ух Ани Ух давай вот сейчас я смотри вот вообще у тебя очень хороший вопрос я не знаю какой-то методологии И уж тем более компании которые бы внутри или как исследователи бы следуя этой методологии вложили бы достаточное в первую очередь время исследователей инженеров чтобы вот проверить и сравнить Да значит к сожалению это очень ресурсо ёмкая история потому что ну даже традиционных решений много кстати говоря ты знаешь что многие коммерческие базы они Запрещают тестировать своё по вот прям там соглашение написано да типа вот прямо Запрещают Вот ладно А значит мне я недавно делал ч значительно более узкий но на часть вопросов твоих отвечал это кстати буквально вчера по-моему вышла статья на хабре можно посмотреть доклад был в ноябре кажется в декабре на лоде значит там была такая Задачка Давайте попробуем посмотрим на современные кши как они обрабатывают большое количество одновременных соединений сколько ПС они могут выжить тогда вышел Кей это такая типа замена редис И кстати сейчас начинается гонка можно отдельно поговорить
ИМТ засе сильно быстрее там были сделаны некоторые оптимизации насколько я знаю Мы были одними из первых кто взяли это дело потестить в общем мы взяли ш диски ке нагрузили там попробовали сделать миллион rps с каждой а загрузили там каким-то количеством ключей и потом сказали вот давай попробуем такую же нагрузку Хотя база данных может выполнять любую другую нагрузку Давай попробуем такую же нагрузку значит забросить на базы данных и попробуем ответить на следующий вопрос Ну как бы традиционно начиная вот с этих всех dango interactive Life Journal традиционно говорили что все базы надо обмазываться Шами иначе значит вот ну как бы всё плохо потому что база данных так не умеют и Ну по-прежнему на самом деле это вопрос стоит не то чтобы супе остр по-прежнему кэш слой он гарантирует что у тебя всё там почти всё в памяти он тебе гарантирует нси гарантирует отсутствие каких-то прямо ну совсем неприятных моментов когда вдруг база а встала колом Да вот в этом смысле гарантия ответа за там короткий промежуток времени по-прежнему очень важная история и поэтому я ни в коем случае статья называется Нужно ли нам кэш слой перед базой поэтому я на самом деле ни в коем случае не топлю за то чтобы кэш слой убирать но во многих ситуациях кэш - это нагромождение некон
систентки которая не может вытащить большое количество ПС большое количество параллельных соединений уже неправда потому что и pog и myq у нас вытянули 1 млн ПС Ну правда на такой железкой ну Соу там 24 физических ядра 128 гигов памяти Gold с гипертрейдинг 48 виртуальных ядер с одной стороны это не Такая тачка которая типа есть у всех То есть это прямо вот железка которую мя говоря Вот Но с другой стороны железки который супер мощные там не знаю в 10 раз более мощные есть железки есть кстати компании которые продают готовые ле на которых Ну там там много памяти там крутится например там не знаю база с какими-то репликами всё настроено она может сделать там не знаю огромная количество запросов в секунду и какие-нибудь компании просто готовы такую стойку себе купить просто чтобы dba грубо говоря не нанимать и отдать это всё на управление кому-то ещё вот такие бизнесы существуют как минимум одна такая компания в общем-то и вот у нас например есть и оказалось что значит во-первых у меня естественно такая была идея как бы я хотел проверить я думал что пог быстро гнётся Почему Потому что внутри постгрес там Чем отличается там кардинально архитектура постгрес от My это то что внутри постгрес под каждое соединение те открывается отдельный процесс А в myq есть отдельный тред и кто занимается системным программированием с одной стороны понимает что современные ран таймы Они конечно шагнули вперёд в Грин треды в горутины и поэтому там вообще это всё значит там скрыто Да но в целом и треды и значит процесс это затратно всё-таки процессы это прямо сильно затрат нее и я думал что я не смогу выжить там ну из постгрес ничего И это неправда они начиная с пятнадцатой версии или может ещё с четырнадцатой версии довольно сильно оптимизировали э видимо какие-то там аспекты своей архитектуры я вот прекрасно помню ситуацию 5.000 запросов Ой сейчас Извините запрос в секунду там много а мы доходили там до миллиона или даже чуть больше вот 5.000 одновременно соединений на машине есть я делаю PS греб пог PP VC Ну считаю сколько этих процессов вижу их в районе 5.000 ну или там четырёх под 5.000 Вот машина отзывчивая вот я на ней запускаю п да там всё зашкаливает естественно но как бы машина работает большое количество процессов работает а другое дело что нагрузка была специфическая ла да но по крайней мере вот эта обвязка архитектурная она справляет начиная с 5 начинаются проблемы уже ничего не умеет бы там почти ВС теряет соединение и так далее А значит работает но в целом Ну может отдать Ну у кого столько тысяч одновременно соединени есть ну далеко не такой непопулярный сетап вот так что базы данных современные в плане большого количества одновременных соединений вот у них лимиты где-то такие Т простые запрос Милн запросов железки легко Ну на в Облаке там вообще куча будет других проблем начиная с того что у тебя Ну как бы ты в принципе это такая фишка я не знаю аналогию вы там используете такую или нет я такую использую аналогию что облака они как Mercedes который типа Дали в аренду но хитрым образом если обычный ты со своими друзьями арендовал Mercedes с водителем и так сказал что типа каждый может позвонить и у тебя у подъезда будет Mercedes но в какой-то момент вы входите в конфликт на Мерседесе катается значит другой человек и ты просто его не получаешь а облака так работают что ты получаешь Mercedes он приезжает как Mercedes он выглядит в Mercedes ты садишься он как бы управляется как Mercedes но как Mercedes не едет потому что он
поширення вот в общем фишка такая что в облаках вообще нет смысла это всё особо тестировать потому что непонятно что ты сейчас меряешь ты меряешь сейчас действительно этот или ты Риш то в какой степени тебе там дали не додали ресурсов вот поэтому Ну вот вот такой тест мы провели очень много разных йс графиков можно на хабре посмотреть а касательно того когда начинать шардирование
ответить на него Так по количеству данных на машине Я бы даже сказал Да есть специфические нагрузки где ты очень быстро упрётся в проц даже если данных немного это если специфическая нагрузка где ты лопати чтоьы определённым образом но в целом Я наверное скажу что вот если у тебя есть машина в этой машине там вы Привыкли что ну сколько нам нужно дать данных на диск Ну не знаю ну наверное несколько терабайт вряд ли деся Нет есть инсталляции где наверное больше Да но вот дали Там на одну ноду на несколько терабайт и вот если ты в принципе посчитал А это кстати говоря часть системного дизайна или капасити пнин Ты посчитал сколько у тебя кого чего загружает и посчитал этой траектории значит какую-то там даже пессимистичный
не вылезаешь ну всё Добро пожаловать значит в шардинг но ещё раз говорю вот эти вот решения они очень
высокоуровневые начнёшь упираться не в диск например а прос и станет понятно что шардирование
отношусь к таким вещам скорее как к злу неизбежному То есть это надо не хотеть этого а наоборот не хотеть то есть шардирование делаешь тогда когда Ну потому что у тебя просто тупо нет Другого выбора а не потому что ты такой О как классно смотрите у меня Хало я сейчас всем покажу как мы тут классно настроили систему Мне кажется есть такая болезнь Ну всегда была то есть микросервисы же то же самое люди ищут причину Ну какую-то знаешь такую зацепиться чтобы внедрить это как можно сильнее У тебя кстати в этом отношении а Часто ли ты встречаешься в своей практике или вот при по общении с коллегами кто ты прямо чувствуешь что они играют в эту игру им нравится и всё это внедряется ну не по объективным причинам никогда нет простого Мне кажется ответа бывают совсем случае вопиющие когда у тебя есть например не знаю одна команда которая не очень большая но она наплодила большое количество микросервисов просто потому что ну вот так модно но часто конечно это действительно много команд которые вот все эти пайплайн им обязательно надо развязывать И несмотря на то что инфраструктура и в целом архитектура становится дорогой значит микросервисы им дают определённые плюсы и уже вот так просто бинарном додумались очевидно ну такого решения Нет везде есть и плюсы и минусы но конечно ты прав что есть определённый тренд и я честно говоря даже иногда мне стало казаться что некоторые компании как будто бы даже льют воду на этот тренд потому что вообще ты знаешь микросервисная архитектура она во многом очень удобна Но знаешь она е к чему приводит я стал обращать внимание опять же на вот в дискуссиях про системный дизайн разбирая какие-то кусочки я стал обращать на следующее внимание значит микросервис он примерно понятно Как он встраивается в общую экосистему и и примерно понятно что у него там внутри помимо собственно Апа да если ты прямо всё изолирует и как будто бы люди стали размышлять об архитектуре следующим образом вот у меня есть моя э ну там модель доменная по большому счёту да И там есть такие-то данные А как я люблю приводить Пример например возьмём Love Journal или какой-то блогово движок вот что у меня там есть есть моя платформа значит это какая-то абстрактная история такой-то рисуем большой кружочек потом там есть пользователи рисуем один кружочек есть посты рисуем второй кружочек там не знаю какие-то Лента рисуем третий кружочек и потом просто значит нарисовали какие-то стрелочки между ними и кажется что Ну вот практике двадцатилетней давности кажется ребят Так нельзя Ребят давайте подумаем про то как где данные лежат и так далее а тут ты такой понимаешь что блин а оно же будет работать если сделать микросервис Ну да куча данных будет ездить туда-сюда тебе надо синхронизировать кучу данных это всё не оптимально но в принципе-то думать почти не надо а код много э где Гене создаётся То есть как бы кода написать Вот этого не то чтобы сложно и деньги есть на инфру понимаешь че я клоню да что в целом чуть-чуть вот индустрия меняется в эту сторону а с другой стороны ты такой приходишь говоришь погодите это всё можно сделать не так а говорят зачем Смотри вот кружочек нарисовал стрелочку сделал такую веь Наблюдаешь Нет слушай Дане кажется вобще но история касаемо всех вещей которые появляются которые являются критичными начиная от памяти которой сначала было мало потом много и Все перестали экономить и всё что угодно начали делать И я думаю что на каждом на каждом пятилетнем этапе мы можем с тобой найти пару-тройку Вот таких вот штук которые становятся Ну не бесконечным конечно ресурсом но типа Об этом можно не париться Вот как сейчас Код Да сейчас же вообще движется с этими всеми ии вообще в сторону когда Вполне вероятно что каждый конкретный микросервис будет генерить И не надо будет в общем-то в кишки Я конечно очень сильно утрирую Наверное сильно в будущее но общая тенденция что у тебя какую-то маленькую штуку можно Захер вообще не залаз во внутрь она конечно появляется будет интересно Знаешь самое смешное через 5 лет мы будем вспоминать этот разговор и вот как ты говорил вот мы тогда наивные смеялись что у нас значит трафик пришёл Мы тоже будем говорить ха-ха-ха было же очевидно куда всё идёт а мы с тобой этого не видели и не понимали Тото что сейчас же вот эта вот волна Мне очень интересно во что это превратится потому что запускаются миллионы проектов направлений редакторов ты сам знаешь Да там курсоры шму соры проект тратата всё это умрёт и останутся только единицы которые куда-то вырулит и найдут этот баланс во что превратиться Хрен его знает но я уверен что это будет тоже связано с тем чем мы сейчас занимаемся так или иначе потом какая-то Новая волна будет Хотя сейчас Сложно представить Да что после искусственного интеллекта придёт Но ведь что-то придёт и будет дальше продолжать супе интеллект это так забавно когда ты живёшь в этой теме долго довольно Да ты вспоминаешь в каждом этапе в каждом ты почти всегда был уверен что блин мы как будто дошли до некого Пика типа А что там дальше-то будет а потом херак и всё меняется кардинально такой Блин я се и представить не мог это как знаешь с бизнесами люди каждый раз думают Ой уже поздно запускать Youtube канал ой Уже поздно запускать новый бизнес Всё же Придумано до нас ребята если мы Отмотай назад Вот даже то что мы сейчас с тобой обсуждаем Да когда люди Хало все эти проблемы сейчас вообще всё другое Проблемы остались но подходы восприятия там компании это конечно Вау просто вау А знаешь мы сейчас с тобой вот подошли к какой ещё теме по сути вот когда мы заговорили про микросервис Ну вообще две темы Честно говоря мне хотелось разобрать давай одну попробуем я думаю тут быстро и потом пойдём в шины в очереди и как раз особенно когда много сервисов Да вот собственно взаимодействие там же большая история связанная с тем как всё это дружит огромная да да но вот я хотел про кэш немножко потому что мне почему-то кажется поскольку мы уже вот говорили после бас а Правильно ли я всё-таки понимаю что Ну кэши наверное одна из самых простых областей с точки зрения того что у тебя gets если очень грубо и просто Кто быстрее Да там со скейлинг или нет С одной стороны да Значит там есть несколько интересных вещей А куда ты начинаешь копать если превышает ээ там какие-то лимиты Да не знаю условно говоря когда на на твой кластер Шей там не знаю уже десятки тысяч ПС сотни ты ПС попадают сейчас правда люди могут парировать говорить что подожди ты с одной ноды можешь отдавать там 100.000 rps легко мы там вот с этой с этого сервера кшм отдавали по-моему 1,5 млн rps Ну правда на 256 байт нах ключи како их было не очень много порядка до 10 млн Ну на таких инсталляция там будут сотни миллионов кше ключей в в кэше скорее всего Но я к чему это говорю я говорю к тому что там начиная с какого-то момента появляется Интересная история во-первых А какое у тебя распределение как у тебя вытесняются разные ключики потому что каждое вытеснение или каждое протух не - это какой-то Кост Потому что ты полез в базу Ну например если ты используешь кэш так стандартно именно как кэш не как там отдельная база данных Вот И там есть интересные вещи Потому что ты должен эти мисы начать мерить Ну вообще неплохо было бы их регулярно анализировать и в том числе понимать там как от релиза к релизу они меняются Ну тут тут есть интересная штука за которой можно следить потому что в большом проекте даже если вот этот вот небольшой процент запросов которые проваливаются в базу а они не должны То есть это не те запросы которые провалились в базу потому что были обновлены данные да а там у тебя произошло какое-то протух данных Вот это довольно интересно и насколько я знаю обычно Вот народ туда вот глубоко в мониторинг не лезет хотя в принципе там очень много инсайтов на самом деле выдрать можно вот я вот например хочу сказать что мы в своё время просто даже принудительно флашинг делится можно сказать на двух типов людей первый тип людей говорит что надо обязательно прогревать и ты на холодной не стартон вот а другой тип людей говорит не просто надо не просто надо на холодную стартовать А мы ещё
флашинг
утро небольшой трафик значит
флашинг потому что это то как ты используешь кэш как у тебя всё протур нюансов Когда например у тебя часть ключей довольно больша там можно действительно сильно подвесить те треды которые отдают данные Если ты вдруг выкачивает Задачка А давай Может быть там что-то начнём жать и всё это в общем вот нарастает нарастает даже на простом кэше который действительно как ты сказал умеет только Set Get то есть на больших реально больших нагрузках там тоже много во что можно упереться а значит МШ мало кто сейчас использует все используют дис а дис реализовал кучу вот этих примитивов включая того что ты можешь там и очереди организовать и значит разные хитрые индексы там ещё что-то сейчас они то что называется раг или векторные структуры начинают хранить вот туда в сам редис вернулся фаундер редиса Да вот тот чувак который свату который когда-то его сделал Вот они в том числе сейчас Ну по крайней мере я не знаю по результатом это часть маркетинга или каких-то сообщений которые они в мир выдают Вот они смотрят в сторону векторных баз и вот если ты говоришь про кэш просто кэш то вот Ну да действительно как будто бы больше ничего но как будто бы с другой стороны кэш особенно тот кэш который почти все используют редис он оброс таким количеством значит свистел и прочего что не так всё просто так что вот я бы так ответил наверное да но по факту вот не очень ну да но это всё-таки специфические ситуации как правило Я так понимаю что есть просто уже паттерны там типа пользователи онлайн храни так в редисе там эту штуку храни Так ну то есть плюс-минус какие-то наработанные практики и подходы в каких случаях Какие коллекции там можно использовать Да это так да Ну всё равно там кстати да всё равно есть ещё попробуй это всё реализуй это немножко по-другому надо реализовывать именно в коде это ну ну да да Ну и понятно что проблема инвалидация кэша никуда не делось Но тут уже как бы наши полномочия с тобой всё как код пишут так и получают что тут сказать кстати есть единственный нюанс по поводу редиса Я слышал опять видишь я слухами пол что редис они что-то тоже сотворили как монго народ психанул форкнуть
а зарабатываете вы дорогие провайдеры а провайдеры сказали всегда так делаем такого вот и тогда сказал ну нет ребята вот теперь вы не можете пользоваться нашим кодом Если вы специально с нами не договоритесь А мы будем делать также как мон и многие другие делать будет там своё облако свою и Да интересно
редис - Это большой проект ээ они вот этот вот этот финт ушами они сделали довольно поздно когда проект уже был развит очень сильно и в результате этого хватило того чтобы форкнуть какую-то там предыдущую версию или там пред предыдущую версию и на базе неё создать продукт который является во многом клоном редиса вплоть до того что когда ты его собираешь там бинари грубо говоря собираются с префиксом не редис а волки но при этом создаются ещё Сим линки которые называются ris Ну просто чтобы вся обвязка у тебя работала То есть вот всё что тебе нужно ког Benchmark собственно сервер есть млинки со старыми именами и эта команда она как будто бы работала Ты понимаешь обычно в таких компаниях есть большая часть кода которую Действительно делают и привносят из Cloud компаниях то есть вот в том же самом Яндекс клауде команды они контрит Open Source и они контрибьютор в редис тоже тут возникает вопрос а ЧМ мы будем продолжать
контрибьютор
нативно вот в случае с базой данных большой в которую вложено огромное количество времени наверное такое не произойдёт А с редисом это произошло и как я понимаю что всё-таки под эгиды амазона Ну может быть я сейчас слишком упрощают бы появилась группа и теперь все те люди из кладов Хуавея Яндекса амазоны которые раньше контрибьютор как будто бы теперь Эти люди контрибьютор
то же самое есть много оптимизаций и эти оптимизации весьма достойные Вот кстати последнем лоде ребята из Яндекс клауда делали доклад про это в том числе и я тестил В общем вот вот тоже наши результаты можно посмотреть они очень очень достойные эти результаты волки это замена редиса весьма хорошая но довольно Печальная история возможно ждёт редис и знаешь такая будет книжка выпущена Как создать самый успешный в мире базу базу данных там кэш не знаю как они её назовут и закончить неправильно принятым бизнес решением не вовремя сейчас Извини я тебе ещё одну вещь скажу значит что интересно Интересно что тут как будто бы начинается небольшая гонка во-первых до того ещё как появился Валки появился dragonfly там ещё появился kdb который был как будто бы не очень стабильный не знаю насколько серьёз надо его рассматривать мне постоянно говорят типа kdb kdb не знаю вот а значит появился dragonfly но у дгон Флая была такая история он был также он также скели не очень хорошо как и сам редис имеется в виду по ядрам но у в отличие от дис у dragonfly вообще не было никаких возможностей там поселится как кластер и так далее да то есть он вот в таком одноно давом скажем так режиме делал редис был быстрее теперь появился волки который теперь Ну как бы вообще бесплатный и он тоже быстрее непонятно зачем dragonfly dragonfly выходит с апдейта что теперь мы умеем Ну типа в кластер или ещё куда-то буквально вчерашняя новость я ещё не прочитал не разобрался да но вот они стали туда пушить и теперь редис вы вы выходит релиз кандидат Где на первую полосу выходит именно performance то есть они начали конкурировать между собой значит у редиса по-прежнему очень большая часть рынка я бы его не хоронил и пока я на эту ситуацию смотрю как Значит на божественную конкуренцию которая позитивно да для раз разработки это позитивно Да ну понятно но в целом всё равно инструментов не очень много они редиса совместимы и в целом получается что конечно с базами данных не сравнить просто слушай которые используют редис в качестве основного хранилища включая хранение денег не Ну понятно Если редис рассматривать как базу данных Да я имел в виду что если как кши рассматривать то у тебя выбор там очень небольшой он редиса по сути совместимый То есть тут особо большой разницы Ну короче такого разнообразия как вот прямо именно по базам нет потому что дис тоже как базу если рассматривать ещё один вариант со своими особенностями А я понял да ты прав Да хорошо а вот теперь если Давай теперь поговорим вот про связующую историю Да у нас значит были очереди в какое-то время там rit MQ что-то ещё было AC MQ многое было дада да AC MQ был ну в общем это был некий стандарт плюс-минус и вот все работали потом в какой-то момент поняли что-то а тоже это много сообщений нехорошо Давайте там как они правильно стримов называются Да Аля там кавка появились и я тут уже не то чтобы знаю как сейчас происходит вот в этом крупни оно где-то вот в этой части Если я правильно понимаю сохранилось немножко очередей для каких-то задач У тебя есть шина в виде Кафки как-то они там
взаимозаменяемы считаем что с нуля Хорошо попробуем с нуля Хотя вот если говорить про вот опять же нашу компанию вот у нас про Я всё про обучение у нас экспертом является Володя Перепелица у него есть отдельный как бы вот он прошаренный
во-первых Интересно что вот вся эта история про шины про кружочки и про волшебные божественные кусочки архитектуры которые решают все проблемы Просто потому что мы правильные слова нашли и написали шина да они же появились ещё до того как повсеместно появилась вся эта история про там правильную архитектуру очереди и так далее значит вот эта история про то что тебе нужна какая-то шина Да она вообще архитектурно народ стал это чуть не лет 20 или там 15 назад форсить и я стал встречать такие знаешь эквилибристика такую что типа вот давай Нарисуем разные сервисы между ними значит стрелочки Смотри какой бардак Ну хорошо ладно А вот значит Давай Нарисуем также эти кружочки сервисы вот в центре напишем значит шина стрелочки аккуратно пропишет Какой порядок Теперь понимаешь где подвох Да у тебя контракты зависимости они в принципе ну как были так и так и есть Ну картинку по-другому ты нарисовал не пересекаются линии а идут теперь в центр но я к тому что вот вообще какой-то подход архитектурный что вот у тебя есть что-то А через что ты будешь обмениваться он вот желание а так делать было всегда потом появился действительно Первый проект который был достаточно надёжный научился скели это проект кавка и как будто бы действительно я Ну вот ты задавал вопрос типа вот все начинают пользоваться и может не всегда нужно я начинаю видеть это как будто бы в тех местах где где это не очень не очень надо например у тебя есть какие-то сервисы эти сервисы должны общаться между собой многие люди делают так не будем проектировать какой-то специальный API А который чаще всего синхронный синхронный API - это плохо Давай для реалтай мовы задач Ну типа близко рел тайх задач ИС пользователь что-то делает И ждёт Да давай для общения между сервисами использовать кафку Ну понимаешь а с одной стороны Это упрощение Да и
запрограммировать что у тебя байты между чем должны проехать доехать для того чтобы в результате пользователь что-то получил в ответ А ещё значит это всё отладить попробуй потом нормально Вот ну то есть но с другой стороны стандартом действительно это всё А становится значит как будто бы из всего многообразия очередей осталось две очереди и кавка как бы более популярна ребит чуть чуть менее кавка больше про персистентное хранение такой Лог стриминг а ребит больше про такие традиционные брокеры Вот Но тут интересные есть тренды тут появляются новые проекты как обычно новая экосистема начинает как бы пионе потом Дора ет до того что сделал что-то достойное вот в частности мы кафку сейчас даём вместе с нац в сравнения такой есть Като рение и значит про него Вот опять же сыю на нашего эксперта говорят что он очень неплох значит стоит на месте почти всегда вдруг мы обращаем внимание на некон
систентки модными паттернами а по сути это то что в общем делали все всегда Просто как-то даже не думали это превращать в какие-то паттер Да вот не очень хорошо база данных под это подходит Но если гарантировать что у тебя просто вот чётко была консистентная ситуация Да ты и ты хочешь синхронизировать транзакцию с чем-то ещё никакие внешние сервисы К сожалению тебе не поможет тебе нужно будет реализовывать transactional Bo кстати в баду сейчас Извини в баду по большому счёту почти все потом там уже внедрили кафку вот кстати кавка Тогда просто ещё ну не существовала когда мы всё это начинали в пятом году значит в баду огромное количество вещей было построено как раз на на очередях поверх баз данных там по сути грубо говоря все события которые нам нужно было отправлять делились на события которые можно продол бать ничего страшного Это как правило какие-то статистические события события которые лучше не продал бывать Но вообще если они продол бают тоже ничего страшного Это скорее какие-то специфические логи которые используются для аналитики или ещё что-то и события которые нельзя продол бать ни в коем случае то есть фотографию которую мы загрузили обязательно надо продеть сообщени нужно там не знаю доставить в другой дата-центр Да и так далее вот как бы для каждого этого слоя Ну использовался как бы свой транспорт и почти для всех сообщений которые нельзя продол бать использовался именно транспорт баз данных потом туда встроили ещё и кафку просто потому что с ней Ну как бы удобнее Вот но сам по себе факт что нельзя продол бать если ты одновременно пишешь ещё в базу И ещё пишешь в кафку всё Будь добр Получи не консистентность такую маленькую штуку Мы про говорим но проекты без хайлоу Да вот например лет хочу такую сказать вещь мы на рельсе сидим нам хорошо При этом она Понятно развивается меняется и так забавно что как раз вот недавно новый апдейт был и знаешь что они туда добавили они говорят слушайте ребята баз данных это вот ещё и предыдущей теме относится база данных стали настолько хороши и так много проектов на самом деле не нуждаются в редисе как В отдельной системе что они выпустили встроенные механики для знаешь асинхронных Джоб которые обычно поверх очередей строятся и для кше которы работают прямо внутри пос греса Ну или другой базы если она у тебя используется и мы действительно для наших проектов в которых мы видим что там вот не High мы это делаем и такой смотришь Ну как бы у тебя код по сути не меняется потому что там адаптеры просто подменяют да там интерфейс самого фреймворка Но самое главное что мы и кэши и очереди мы всё увели снова знаешь вот в этот old school но на новых технологиях на новых этих штуках и мы такие блин инфраструктура проще жить проще и со Ну нет проблем с нагрузкой потому что мы Извини а это всё хранится в базах данных или это всё хранится в постгрес я не до конца понял где данные хранится дада да то есть у тебя просто раньше например там асинхронные джобы там адаптер редис ушёл там кэш там куда тоже скажешь и они сейчас как бы реализовали внутреннюю имплементации которая может просто в постгрес работать там там прямо набор табличек создаётся автоматом там с лока ещё с чем-то но они не просто знаешь табличка со списком этих событий но смысл в том что это встроенное решение оно для таких ребят которые вот знают что у них есть некий потолок который погреться выдержит им нахер не нужна сложная инфраструктура и мы наоборот как бы сейчас идём в эту сторону знаешь как бы такой по этому по спирали вернулись Короче с чего когда-то начинали потому что это сейчас не по Да я не слышал про это Но наверное это очень прикольно и удобно но вообще это же рельсы всё да рельсы любят вот как бы всё замкнуть значит есть ещё один тренд про который я забыл в контексте Scout Cloud native баз значит там базы начинают делать такие которые поддерживают разные типы хранения разные структуры данных и там например вот тот же по-моему в idb кажется в какой-то момент стал поддерживать и кавка like топики значит разного рода вот такие с Out базы они начинают и как бы делать тебе Stage транзакционный для ltp колоночные для olab А вот такой вот Лог стриминг для значит очередей И вообще говоря Вот это это штука которую видно Ну так же как поз грев строил монго внутрь себя да да по сути Вот они все пытаются в себя вобрать какие-то вещи чтобы быть единой штукой только у Cloud native при этом есть некое преимущество что оно Cloud native и слится так что это довольно интересно да да это тоже интересно потому что я сам этих вещей не использую и как бы ладно В нашем случае мы на фреймворк можем перекладывать он там сам как-то это се реализует и сам понимает с чем работать но вот так что кто-то такой серьёзной сел и такой принял решение Так мы тут заюзал какой-нибудь хитрый там сейчас же не только JB там в постгрес ещё что-то такое вместо монг думаешь Блин ну Это серьёзное решение то есть надо понимать И насколько к чему это приведёт особенно на объёмах больших все эти штуки а Слушай вот если вернуться да вот шины и очереди Я всё-таки до конца сейчас не очень понимаю реально вот в принципе подход с классическими очередями Да с роутинг он вообще актуален или в принципе его можно полностью заменить стриминг Ты что имеешь под роутинг потому что обычно роутинг - это наоборот Как принять запрос и отрути Ну я имею в виду что что у тебя в rit MQ Да вот это вот распределение по очередям на базе там ключей и так далее вот эти вот все хитрые схемы всё это актуально Сейчас или на самом деле нет И можно от очередей вообще отказаться Ну почему нет это актуально А мне просто кажется что в целом в ре бите это не не Ну ладно может быть вкусовщина не очень удобно мне кажется что в целом PS если вот говорить так это простая концепция которая может много вещей Ну почти на там из коробки решить и понимаешь альтернатива поп Сабу это вообще говоря Ну просто какие-то какое-то асинхронное взаимодействие Я просто не знаю может быть ты имел в виду какую-то другую альтернативу И как только у тебя появляется большое количество компонент даже если это не супер просто вот большое количество компонент те асинхронно далеко не всё нужно делать и если у тебя Вот ты попытаешься опять же вот в рамках такого правильного системного дизайна я правильным системным дизайном или системным дизайном здорового человека называют такой системный дизайн где не просто кружочек а кружочек - это сервис а стрелочка - это запрос То есть ты можешь сказать как батики поедут между компонентами Да так вот если ты начнёшь рисовать все свои компоненты и например наложи на это какой-то сценарий какого-то пользовательского действия и посмотришь как значит между различными компонентами поедет запрос то иной раз Ну понятно что если те там для каких-то ретай вещей тебе конечно без синхронной какой-то коммуникации наверное не получится ничего сделать но синхронная коммуникация может быстро привести к определённым проблемам когда у тебя пойдёт большое количество запросов У тебя есть какая-то дополнительная связанность один сервис Значит подтормаживает все кто с него что-то спрашивает тоже начинают подтормаживает
Ну наверное можно продолжать так писать начиная с какого-то момента это просто становится неудобно И теб проще действительно в какой-то момент взять и сказать Слушай я сейчас не знаю кому это понадобится Да давай вот это превратим в такой-то ивент ПУ там куда-то пошёл этот ивент будет никому ритам не нужен вот и дальше Значит на него кто-то подписывается это хороший удобный паттерн проектирования разработки он никуда не денется Я не вижу здесь каких-то рисков Может быть ты что-то специфически имел в виду то да давай уточни Нет я имел в виду Да Помнишь там же история в чём-то Почему собственно от этого в какой-то момент начали отказываться У тебя же очередь под каждого потребителя своя Да и если у тебя Сообщение нужно рассылать большому количеству потребителей у тебя это приводило просто к огромному количеству копий то есть собственно в это же начали упираться в какой-то момент и такие о а есть кавка А давайте перейдём на стриминг грубо говоря они решают часть и своих задач но у них есть вот общий блок связанный как раз с моделью работы которая в одном случае приводит к огромному количеству копирования а в другом случае ну у тебя там копирования нет но есть другая проблема Да там связана с хранением с запоминанием там где ты остановился когда ты вычитывает её и так Дале как-то ты знаешь то что ты сказал это больше проблема РБ Бита и как будто бы действительно почему-то в экосистеме Microsoft очень любят ребит вот кста си шарпи сы очень любят ребит Я не знаю почему я знаешь вот это тот случай когда я тебе скажу что вот я не чувствую се достаточно хорошо и глубоко понимающим как бы эти проблемы Чтобы принять какую-то точку зрения Мне в целом всегда казалось что вот этот кусок просто не очень удобный и мне как-то ребит не очень нравился но опять же ещё раз говорю Может это связано с тем что я просто ним не очень много работал Слушай а действительно знаешь я ведь как бы давно просто про Ну то есть я давно про это не разговаривал ни с кем И сейчас ты сказал такой подумал а действительно Никто же не мешает внутри это реализовать также как это реализовано в кафке И когда ты создашь очередь на самом деле это всего лишь будет просто указатель На то сообщение собственно которое там было по порядку и получается что у тебя это некая надстройка над хранилищем Аа кавка которая позволяет работать в стиле Ну тебе будет визуально казаться что это папп вот то есть копирование сообщения происходить не будет у тебя просто будет указатель в конкретно в твоём топике Хм честно скажу Кирилл я я не умею так быстро соображать и не знаю деталей вот прямо чувствую что будет какая-то фантазия не окей это у меня просто знаешь сейчас такая мысль зашла Надо будет подумать на досуге над этим действительно просто сказал что скорее это проблема рабита И я подумал что действительно То есть это вопрос технической имплементации можно было бы сделать чтобы этого не было и тогда но хранилище тогда получалось бы похожее на кафку но смотри понятно что решает какие у нас задачи да то есть у тебя пропускная Способность у тебя много компонентов чтобы они друг в друга не ходили особенно когда потребителей много да И знать про них все Ну так себе история То есть вообще-то это решает Гигантское количество проблем но это же не может просто решать только проблемы и не приносить новых А тут мы получаем всякие весёлые вещи от распределённых транзакций опять же контрактов интерфейсов и так далее вот можешь чуть поделиться как пацаны правильное сейчас всё это решают У меня нет простого ответа на этот вопрос он сродни вопросу сколько должно быть микросервисов Угу И это вопрос бесконечный Да и можно его обсуждать Ну по крайней мере есть там два-три и ещё может быть там со звёздочками ещё несколько взглядов и все они может бы так или иначе правы значит мне кажется что вот как удобно так и надо простого способа вот верифицировать что вот столько достаточно взаимодействия или вот Надо поменьше Или надо
укрупнения там наука которую там легко верифицировать Я считаю что вот мой личный подход всегда был такой Что лучше лепить лепить сервисы конечно чем Монолит Как бы микросервисы мне не нравится слово микро Да но я думаю что я сечас какие-то очевидные сказал но я думаю что к этому приходит любая большая компания которая в какой-то момент понимает что у них очень много сервисов и они прямо очень микро и конечно это всё потом приводит к тому что ты начинаешь чуть-чуть
укрупнение контракты между этими сервисами во многом начиная с какого-то момента вот если так смотреть типа давай вот укрупнить укрупнить в какой-то момент Ты просто откажешься Вот укрупнить потому что у тебя плой не пойдёт Потому что ты начинаешь в границ организации или каких-то разделени упираться Знаешь это и распространённая точка зрения про то что значит тебя микросервисы во многом повторяют структуру организа Ну на самом деле это ещё и закон как конвея Ну в общем короче говоря что ВТО второй подкаст подряд Уже вспоминаю Вот его Да но вот его его приложение на сервисы и микросервисы оно могло бы о звучать таким образом что эти сервисы Они во многом повторяют Или там клубки этих сервисов повторяют структура организации в какой-то момент ты просто не будешь туда идти потому что иначе у тебя организация не будет работать да Вот и кажется что как раз следуя вот такому подходу ты и найдёшь этот баланс он он в меньшей степени в архитектуре в большей степени вот в организации работы потому что ты начинаешь резать и делить ответственность не только потому что ты посчитал что Ну вот Наверно это хороший кандидат на какую-то изоляцию А ещё и чтобы развязать взаимодействие между командами Мне кажется вот это вот в моём бы случае это варова но думаю что есть команды которые иче Я не хочу ты так спросил как правильно пацаны Да кто его знает Вот я бы я бы делал вот так конечно я очень общий вопрос задал Я просто думал банально ты скажешь там я опять же не помню потому что с этим сам особо не работаю но например там для Рейсинга там распределённых транзакций там же прямо инструментарий есть который тоже типа там и всё
сигно тоже интересно Там тоже интересно вот если посмотришь на то метри что выходит значит наш бигтех Ну потому что вот Да кстати говоря тоже хороший вопрос что в Америке есть типа раньше был вело А сейчас я вижу только самит слы какой-то там Scale Monster Scale как-то Так а у других как будто бы остальные померли конференции Но вот Hell можно посмотреть значит С какими про он телеметрию туда выходят люди почти все которые выходят говорят типа О телеметрия классно но ну как бы ни одна готовая история у нас не заходит потому что мы можем обработать только там тысячную часть этих там событий и так далее да и поэтому мы там что-то делаем своё вот можно прямо посмотреть проследить эти доклады вот поэтому он телеметрия в целом Да инструментарий есть всё заработает но как бы как только будет Хало потому что вот это он телеметрия - это куча обвязка из кучи каких-то данных Если у тебя есть много взаимодействий то Вот как раз ты получаешь значит
двхм которое как-то нужно протянуть куда сложить для того чтобы потом все их поднять весь этот трейс распределённый по значит span ID выдрать посмотреть инструментарий есть но данных Куча и там можно получить ло просто за счёт того что у тебя много разных сервисов туда плюётся одновременно Это очень смешно да то есть хайлоу то может у тебя Изначально и не было но если ты подключил он телеметрию ты его получил Да окей Ну да Понятно В общем шина в целом нормальна главное уметь пользоваться и всё такое мы говорили про любые базы данных но мы не говорили про распределённые базы данных типа консула такие штуки активно используются в рамках например того же самого Куба Да внутри в в обязательном порядке там р El Вот это всё очень важно А насколько ты часто сталкиваешься с потребностью использовать это вне Ну в смысле прям вот прямо реально как базу Там Консул или какой-то аналог или это супер специфично или это не надо или это вот там оно живёт и хрен с ним нет смотри что мне кажется тут стоит немножечко Взглянуть на все эти термины и немножечко их разграничить во-первых откуда появились истории это сиди и консула У тебя есть большое количество нот эти ноды между собой должны договорится о том грубо говоря Как выглядит конфигурация кто помер Кто жив вот и тебе нужны вот эти все кворум истории А как правило количество данных которые общаются это просто Като какие-то Конфи и это как бы компактные данные Да там весь вопрос в том как это всё запрограммировать с учётом того что вылетать может много что да и все между собой должны договориться но сейчас кстати говоря уже есть готовые насколько мне кажется не для любого алгоритма Но для по крайней мере для для рафта или для пакса Я уже забыл вот этих алгоритмов кворум д Но для каких-то есть уже готовые фреймворки в ряде экосистем где ты просто уже вот берёшь и используешь по-моему в Гош экосистеме уже что-то такое есть Ну не знаю общем короче мы там будем Но количество данных которыми обмениваются вот такие значит ребята Да их они Ну это не очень большое Коли скопический да да конфигурационные В основном история и дальше если ты посмотришь на дальше распределённые базы настоящие то ты увидишь две тенденции тенденция номер один люди которые пытались всё быстро создать они втаскивают CD Ну про Консул не знают чаще втаскивают CD и они общались через etcd Ну как Вот как раз для того чтобы там договориться между собой а потом значит появилось ну когда уже все поняли что из себя представляют все эти алгоритмы консенсуса и прочее значит люди стали это втаскивают вот например есть ребята которые поверх Тарантула делают кластерный Тарантул Да Пика дата это кстати Костя Осипов сотоварищи делают который когда-то влру собственно и занимался в том числе тарантова и вот они в какой-то момент как я понимаю втащили а как раз вот всю эту историю во внутрь и Теперь у них вот всё что связано с конфигурацией э как бы вся эта кворум ная логика Она сидит внутри значит А вот проблемы Ты знаешь у меня может быть слишком упрощённый сейчас взгляд Но вот смотри теперь когда ты говоришь про кластерные базы там по сути вот эта логика она используется где почти все кластерные базы работают приблизительно по такому алгоритму тебе нужно разбить всё множество твоих ключей на определённое не очень большое и не очень маленькое количество чанков хэш слотов виртуальных шардов в разной экосистеме в разной базе это будет называться по-разному одно и то же какое-то виртуальное представление которое как-то мапи на физическое представление всё таблетки это ещё называют там в экосистеме по-моему в idb В общем куча этих значит слов а по сути это какой-то кусочек данных и дальше ты кворум должен договориться кто для этого куска Мастер и где реплики и ещё там есть некая механика как ты откопировать
просто а реализовать конечно значительно сложнее И множество сервисов типа etcd - это вот как вот эту вот мелкую фигню конфиг между собой раскидать А вот эти ребята которые решают вот такие задачи множество других Ну там просто я не знаю даже как сравнить это как сравнить там единичку и миллион или единичку миллиард Ну там сложность на на куче порядка я не могу просто не сказать что есть кейсы вот даже для небольших проектов где это используется вот у нас есть кол прямо вот напрямую и почему не etcd кстати тоже стоит сказать etcd всё-таки это просто база данных а у конла есть Service Discovery Да который позволяет тебе оценивать живость сервисов кстати раньше может быть в etcd это изменили но на тот момент когда ещё я его смотрел это корос если ты помнишь был мы с ним экспериментировали тогда там в нём Ну не было этого так вот У меня есть две микрозадач которые мы используем помнишь я говорил по поводу старта практики так вот эти сервера они управляются Не ну нами ручками потому что это как раз не входит вот в ту экосистему кубернетес потому что это нереально сделать по тем причинам которые я тогда озвучивал и при этом нам нужно делать балансировку потому что много машин и нужно стартовать соответственно практику А у тебя знаешь у тебя в одном случае может Ну не знаю ЕС Человек проходит базовый курс Ну у тебя там Ну допустим Не знаю функцию надо выполнить да А если он например курс проходит по какому-нибудь плей или сприн то во-первых у тебя запуск Ну прикинь сколько там стартует всего во-вторых когда ты жмёшь кнопочка проверка у тебя там 2 ГБ с диска в оперативки ты и улетела за секунду ну и там таймаут Конечно есть но на 10 секунд он тебя тачек может так неплохо нагрузить И в итоге получается что у нас ручная балансировка соответственно там это используется а во-вторых редактор который мы используем то есть знаешь как сделано там же stateful и редактор у тебя запущен и получается что если ты выпускаешь новую версию редактора мы не можем это Ну то есть она происходит вобще независимо от приложения прямо на машины туда и этот деплой он ни с чем не связан поэтому мы как делаем мы стартуем редактор в Консул кладём новую версию редактора А когда уже приложение стартует его с алике серверов туда идёт говорит стартуй мне то он собственно версию редактора забирает из консула это микроскопическая Задачка Ну опять же это какая-то конфигурация компактная Да Дада То есть это чуваки которые гарантирует тебе вот что в случае чего всегда всегда вот эти ребятам потому что они обо всём Договорились да да вот такая микро Задачка Но вот полезно оказалась потому что остальное реально геморрой ней было потому что с тех серверов доступа к базе нет И через базу тут не обменяет А по пишки делать что-то Даже геморрой какой-то был вот как бы по основной части Мне кажется мы очень круто прошли Даже захватили больше чем надо те кто послушал и офигел Наверное потому что после прошлого подкаста тоже некоторые написали говорит я останавливал каждые 5 минут чтобы выписать термин и пойти погуглить вот я надеюсь что здесь вы тоже много всякого нового полезного узнали но Лёш я всё-таки хотел ещё знаешь что спросить мы много-много говорили но мы не проговорили вообще историй которые у вас случались потому что я уверен в баду за столько лет ты наверное натерпелся Как си всякого разного есть ли у тебя истории с хайлоу дом связанные где ты можешь поделиться весёлыми падениями ночными ты знаешь все все все мои истории они просто весёлые но они не то чтобы какие-то науко образные да Ну например есть известная история
высокопроизводительный Значит мы как-то мы вообще ребята простые мы иногда тестировали на стейджинг Ну собственно Для чего ещё нужен стейджинг Вот иногда даже что-то приходилось и в проди ковырять вот что в принципе конечно не рекомендуется делать но что только не делали и как-то раз вот там надо было что-то отладить и ВМ это было втом
короче Hello world просто всем юзера Вот и все юзеры открывали страничку а на этой страничке всё было очень аккуратно красиво но в самом начале наверху на белом фоне было написано Hello world Вот и я не ты в продакшене поправил файл я не заметил это Слушай это было очень давно Да и я не заметил это мне человек позвонил и сказал Лёха А что там за хреновина вот вот это было очень давно Ну вот да потом был ещ такой момент тоже довольно известный фейл ну его просто помнят из нашей компании буквально там несколько человек потому что мы были очень маленькими Ты знаешь есть вот сейчас это называется миграции значит какие-то подходы к миграции автоматика вокруг миграции мы накосячили в планировании мы посчитали что релиз Ну пройдёт за час и все миграции которые мы тогда не называли миграция пройдут за час на самом деле помимо этого там был ещ маленький кусочек который мы забыли планировать этот кусочек был связан с тем что сильно менялись данные и поэтому запускалась специальная Джаба которая там что-то перелопатила то есть это не просто миграции на уровне ddl Data Definition alter и так далее Нет там была какая-то Фигово которая должна была там что-то пройти что-то изменить и честно говоря это вообще антипаттерн для больших проектов мы только потом стали думать что Вообще является Анти паттерном Какой сценарий релиза и последовательности изменени базы данных и кода вообще правильный пришли более правильному скажем так последовательности действия но тем не менее Вот тогда вдруг оказалось что релиз не час а два а потом три а потом четыре Я уже сплю Там под столом теннисным у нас в офисе был теннис уже туда подушку значит принёс Вот в общем короче говоря вот такой был фейл но закончилось без ошибок не умер Да просто работали не работали нени час а всю ночь но но тем не менее А вы не работали прям то есть у вас был простое Сер не работали то есть мы у нас было простое сервисы Но это вот была прямо малюсенькая ещё Команда А проект уже был там не знаю Ну миллионы пользователей Точно Вот а может быть и десятки миллионов но ещё раз говорю это было лет 20 назад наверное так что как говорится простить Ну может быть там 19 простительно последнюю какую-нибудь байку уже такую больше с архитектурной точки зрения Ты знаешь когда ты порезал на кучу сервисов и делаешь асинхронные запросы Я уже про это сказал бывают ситуации когда у тебя кластер заваливается каскадно из-за одной проблемы потому что есть очень много связей между кусками у тебя в одном месте начинает тормозить если у тебя есть есть асинхронное взаимодействие у тебя начинают подвисать там какие-то другие воркеры что-то другое начинает тормозить вот мы такую проблему один раз ловили причём не в Ах ну как бы в ах но на самом деле в шардирование
базы были довольно часто используемый кейс Когда нужно было пытались всё сделать побыстрее для юзера и поэтому у нас были воркеры которые писали одновременно в две базы с некой логикой там то что мы потом назвали межсерверный транзакции то есть долгая транзакция с одной базы И с другой по-моему сценарий был типа у нас на базе данных и была ренона коммуникация между пользователями и по-моему мы таким образом обменивались не то сообщениями не то ещё чем-то Ну вот вот короче когда я пишу тебе привет и так далее вот мы поняли что такая схема заваливает весь кластер вообще вот элементарно и вс переписали на более асинхронное взаимодействие когда ты вот сначала работаешь с одной базой и меж сены транзакции просто не делаешь но на тот момент казалось что да что пожалуйста Давай сделаем Ну вот пару раз завалились и поняли что это антипаттерн сейчас как будто бы везде Ну или не везде Но много где уже Ну понятно что так не надо делать что релиз надо планировать а мы вот по всем этим граблям в своё время прошлись ну дата deploy там обратная совместимость баз данных много-много всяких интересных слов Я кстати не могу не сказать Ты просто мне напомнил У меня тоже был Очень забавный случай он не связан вообще с хайлоу дом но он связан с форк бомбой которую мы получили Ну в смысле аналог Вот потому что когда у нас значит тоже пошло с торможение которое привело к катастрофе и сотням писем которые мы отправили пользователя то есть каждому человеку мы отправили по несколько сотен писем знаешь что случилось у нас значит там есть система событий Ну типа ты например комментарии оставляешь в топике а у тебя нотификации об этом надо разослать разным людям всем кто прокомментировал плюс автору топика и соответственно у тебя получается некий набор людей и для каждой системы там вот свой набор людей и асинхронную задачу которую выполняет собственно отправку мы реализовали первую имплементации Так что она выгреба сразу из базы всех кому надо отправить но и почему всех сразу пото что там никогда не было много там ну до десяти поэтому как бы думали Ну о'кей и соответственно она по ним циклом шла и отправляла только Проблема была в том что когда начал тупить и они начали то есть отправ а там ещё сервак тупил Не потому что сервак тупил а потому что email сервис тупил да спиш Ну и как ты понимаешь 30 секунд проходит он такой Ага значит не обработал никто сообщения возвращает его в очередь и он снова запускается и он снова из базы выгреба ет этих 10 человек и вот мы потеряли контроль сервера и в течение примерно часа он тысячам пользователей отправил по несколько сотен писем вот такой был фе Но мы потом конечно переделали у нас отправка письма это всегда стало вот как бы гарантировано то есть каждая эта штука порождала ещё одну отправку ко ещ один ивент и ты уже работаешь только с этим эвенто и конкретно его помечает когда те smtp ну понятно Ну стандартно Мне кажется вполне такая ну там ещё есть на самом деле Интересно что ты как-то это написал я где-то у тебя читал что ты про это можно обсудить на интервью правда Действительно это проект можно обсудить на интервью и знаешь там ещ есть Интересно теперь Если у тебя есть коммуникации мно Ты очень Я думаю что ты с маркетинговой точки зрения тоже смотрел как так сказать реактиви да юзеров и появляется что у тебя есть много каналов через которые ты реактиви ешь юзеров и у тебя появляется другая проблема что ты заспамленность
Как сделать так чтобы спамить не чаще чем А может быть ты дойдёшь до того что в какой-то момент ты будешь объединять какие-то значит сообщения в группы и Ну в общем вот вот вот это вот всё это называется Да CRM Маркетинг это прямо надо делать отдельный технический на эту тему подкаст потому что это огром самое знаешь смешное что в начале когда ты продукт делаешь Ты думаешь что Ну вот у тебя фичи и продукт все дела А потом в какой-то момент оказывается что у тебя половина если не 80% всей работы это вот как раз вот эти вещи сообщения доставки СМСки ты такой типа я же вроде Я же вроде людей учить собирался Я здесь теперь этим занимаюсь не на самом деле конечно в современном мире у большинства проектов которые не Google они используют конечно готовые решения то есть там у тебя мейлчимп всякие ти Кай и ты ещ других оно там всё са Они не умеют объединять они умеют просто принять Что называется одно письмо но по-моему они не умеют делать Ну какую-то вот сложную оркестрация сейчас тебе поме что вот этой вот вот это а теперь вот давай вот это всё возьмём и отошёл это просто некий API Call для отправки письма нет нет нет нет совсем сложного конечно никто тебе не сделает но не совсем вот то что ты говоришь Это скорее какой-нибудь сгд Вот они Да это такой типа А mtp продвинутый А я говорю именно про CRM маркетинг тузы это знаешь туза в которую это так называемый CDP customer Data что-то там не знаю короче Смысл в том что ты заводишь там кастомер у тебя хранятся все абсолютно события То есть это чисто Тина система а внутри с помощью визуального редактора ты строишь цепочки если то отправить то там тратата да да Всё я Поня Да но тоже это Ma это именно отправка Я почему ты сказал эти названия я подумал что я знаешь почему сказал Потому что ты скорее запомнил Ma chimp ещё когда он был Только таким потому что если сейчас ты зайдёшь ты увидишь что у них прям всё Теперь они это умеют они просто долго Почему к этому не шли Да это называется есть Ну в американском мире Поэтому ты увидишь что у них есть они теперь сейчас хап спот там по-моему был самый такой сейчас забыл как называется ну общем короче на H как-то самый был Пионер и все маркетологи е да ну хап спот пспо просто там много направлений То есть у них есть CRM В смысле продаж CRM В смысле маркетинга у них есть там ещё что-то Да а вот из самых крупных - это всё-таки в первую очередь Active Cain intercom кстати тоже самое примерно из этой же серии Ну это мы конечно ушли и Ребят я точно сделаю про это отдельную большую историю и кстати ты не поверишь вот сейчас в Telegram канале у меня тут недавно 99.000 человек случилось Я буквально вчера решил сделать серию постов посвящённых маркетингу для программистов Я как раз знаешь задал вопрос на тему того что А что вам мешает стать предпринимателем стартануть И там мне там 150 комментариев на тему сложностей типичных для всех нет денег времени там дети риски и всё такое и я говорю Ребят я вам напишу серию постов и вот там просто один из постов Я обещал как раз делать Вот на эту тему потому что она очень интересная и для людей не в теме непонятная А без неё бизнес ну честно говоря не совсем получится CRM Маркетинг - это очень важная часть почти любого бизнеса Да Лёш тебе огромное спасибо за то что мы с тобой разложили эту тему тебе спасибо что позвал вот очень приятно было с тобой пообщаться Взаимно Не забудьте подписаться на подкаст на юбе или ВК ещё он выходит в аудио режиме есть ссылка в описании там много разных систем и Яндекс музыка и ВК и Spotify короче кто кто что хочет Подписывайтесь Ну и Заходите в Telegram канал я там пишу чаще и всякое разное интересное про разработку и про бизнес всем спасибо Пока До новых встреч
[музыка]
Creators and Guests

