
Обзор
CASTROOM - это поисковая система подкаста. В первую очередь он был сделан, чтобы научиться сделать распределенного веб -гусеника с помощью Kubernetes. Он способен собирать сотни тысяч подкастов в течение нескольких часов, и его можно легко увеличить с помощью одной простой команды.
Структура проекта
Открытие
Владелец
- координирует все
crawler места - Поддерживает локальный кэш (с использованием leveldb), чтобы предотвратить ползание одного и того же URL -адреса несколько раз
- получает данные из узлов
crawler и выдвигает очередь - Узлы
crawler отправляют все данные в этот узел после ползания веб -сайта - Отправить данные в Elasticsearch по завершению
- управляется двигателем Google Kubernetes
Груплер
- Страницы подкастов Crawls iTunes и отправляют пакетные данные в
master -узел для кэширования - проходит прокси, чтобы обойти определенные ограничения
- управляется двигателем Google Kubernetes
API
- Обеспечивает конечные точки для запроса Elasticsearch и получения информации о корме подкаста
- Хозяин на Героку
Веб -
- фронт для поисковой системы
- Управляется хостингом Firebase

Технологии используются
- Докер
- Google Kubernetes Engine
- Amazon Simple Queue Service
- Amazon Elasticsearch Service
- Хероку
- Firebase Hosting
- Реагировать
- Node.js
- Leveldb
- DataDog
Скриншоты


