TGViewer
2pegramming 2pegramming @pepegramming · 4.5K subscribers
Post #654 2.61K
Пятничное чтиво

Буду рад предложениям, вопросам и идеям связанным с каналом или архитектурными/техническими вопросами. Можно написать в личку, а можно анонимно. А ответы на вопросы можно прочитать на сайте.

—————————————

How Instacart Built a Search for Billions of Products

Статья от компании instacart (аналог купера), в которой рассказывается о том, как решалась проблема поиска. Идея в том, что люди по разному ищут продукты. Запросы выглядят как «здоровые продукты», «соус для пасты 227г» и так далее. При этом, результат семантического поиска и поиска по ключевым словам должен соответствовать ожиданиям. Для этого, в компании, решили сделать два параллельных способа поиска, о чем в статье рассказывается.

Текст начинается с описания проблемы с параллельными флоу поиска. Причем, особенность поиска в том, что товары быстро появляются и также быстро «пропадают» со склада. Для этого ввели два параметра для оценки поиска — полнота и точность. Далее описывается, почему отказались от elasticsearch (переиндексация на изменения подвела) и как переезжали в постгрес. Следующий этап — добавление семантического поиска с помощью FAISS, который заменили на pgvector. В конце найдете информацию о проблемах подхода и рассуждения о скейлинге поиска.

#how_it_works #search

—————————————

Going Critical

С начала этого года разбираюсь в network science, поэтому сегодняшняя статья по теме. Текст выше о диффузиях в сетях, т.е. о том, как «информация» распределяется в сети (пожары, мемы в интернете, сплетни, вирусы и так далее). Причем статья интерактивная, что редкость для подобных текстов. А если думаете зачем читать о сетях — подобным образом можно симулировать отказы в software systems.

Начинается текст с создания «простой» модели в виде сети 7х7, в центре которой «зараженная» нода. При этом, «заражение» происходит с 100% вероятностью для заражений. Далее вводится понятие SIR model, которая состоит из нод в трех состояниях (восприимчивый, зараженный, удаленный). Но такая модель не симулирует ситуации, когда «зараженная» нода перестает быть зараженной и становится снова восприимчивой. В таких случаях помогает SIS simulation (вместо удаления, нода снова становится восприимчивой). Далее рассказывается о critical threshold, точке «перелома» между субкритической и сверхкритической сетью. Также рассказывается о том, как симулируются «заражения» в разных частях сети, иммунитеты у нод, влияние degree (количество связей у ноды, причем, через degree можно «симулировать» города). Ближе к концу найдете примеры симуляции «знаний». А в конце автор рассматривает feedback loop между технологиями и знаниями (знания создают технологии, которые увеличивают знания).

#network_science

—————————————

The Map of System Topologies

Текст выше — не статья в привычном смысле, скорее это попытка систематизировать архитектурные стили и паттерны вокруг структуры кода. Т.е. автор раскидал паттерны на плоскости, в результате чего получил пять «регионов», о которых и рассказывается в статье.

В начале текста описывается методология, которой придерживался автор. Так предлагается делить паттерны на техническое разделение (слои), бизнес разделение (сервисы) и шардирование. В результате чего, от шардирования пришлось отказаться, как и от экзотики (в итоге я насчитал 40 паттернов). Далее, автор выделяет пять групп:
- Monolithic, система целиком — один компонент;
- Layered, система делится технически на слои;
- Services, система делится по бизнес функциям;
- Fragmented systems, система состоит из множества мелких частей;
- Plugins, система состоит из cohesive core и модулей.

В самом тексте подробно описывается каждая группа, причем с разбивкой на виды. Так монолиты бывают с плагинами, с auxiliary layers и так далее. А в конце найдете выводы автора по топологии.

#patterns
  • 🔥 11
  • ❤ 10
More from @pepegramming
  1. Sep 25, 2026Пятничное чтиво Буду рад предложениям, вопросам и идеям связанным с каналом или архитектур…
  2. Sep 18, 2026Пятничное чтиво Буду рад предложениям, вопросам и идеям связанным с каналом или архитектур…
  3. Sep 11, 2026Пятничное чтиво Буду рад предложениям, вопросам и идеям связанным с каналом или архитектур…
  4. Sep 4, 2026Пятничное чтиво Буду рад предложениям, вопросам и идеям связанным с каналом или архитектур…
  5. Aug 28, 2026Пятничное чтиво Буду рад предложениям, вопросам и идеям связанным с каналом или архитектур…
  6. Aug 21, 2026Третий поток «Коммуникации систем», старт 30 сентября В течение месяца будем искать формал…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →