6. Frontend
Ключевые моменты кода:
● Деление на события и состояния
● Обработка ссылок через pjax
● Использование $.fn.on(action, selector,
callback)
● Трансляция ссылок в события
● Слоистая архитектура плеера
11. Backend
Постановка проблемы:
● 2.8М треков
● Сомнительное качество базы
● Отсутствие части информации
Решение проблемы:
● Создание списка файлов в SQLite
● Парсинг ID-тегов
● Дополнение из Last.fm
12. Backend
● Отдача статики с псевдо-CDN
○ Cookieless под-домены
○ Expires + ETag
○ Параллельная загрузка графики
● Проксирование графики альбомов
○ nginx + flup + bottle + PyLast
○ Возврат картинки по исполнителю и альбому
○ Кэширование в промежуточном источнике
○ Все преимущества псевдо-CDN