Как стать автором
Обновить
17
0
Алексей @optio

современный веб

Отправить сообщение
> и наше огромное желание показывать им лучший футбол и фильмы.
Цель оправдывает средства :/
По-моему, очень полезная задумка.

А пользователи как считают?
«Потдержка» от слова «пот»?
Мне больше проблем доставляет PhantomJS: он стремится выжрать всю доступную ему память и занять весь процессор.
Просто полнотекстового поиска недостаточно. Нужен полнотекстовый префиксный поиск с учётом морфологии.
Так же требуется агрегировать данные для отчётов (например, нам интересно знать динамику размещения и выполнения заказов по рубрикам и регионам)

Всё это можно сделать на PostgreSQL. Первое решение как раз было реализовано на PostgreSQL, но работало достаточно медленно и серьёзно нагружало CPU. Можно основательно разобраться в документации, правильно настроить индексы и написать оптимальные запросы. Но сколько это займёт времени и будет ли результат — мне сложно сказать.

С другой стороны — в ElasticSearch достаточно просто выгрузить данные и тут же получить результат. Что и было сделано.
По этой статье и сделано
Memcached никогда не освобождает занятую память, в отличии от Redis. В облачном окружении это превращается в финасовые потери на пустом месте.

Выбор делал достаточно давно — с тех пор что-то могло поменяться.
При текущей нагрузке проекта — RabbitMQ не более чем клей между django и celery. Настраивается однажды по документации, обслуживания не требует.

Если возникают проблемы с выполнением фоновых задач, то они в самих задачах, а не в транспорте нескольких сообщений между серверами.
На проекте настроено обновление с нулевым простоем серверов. Детально расписывать — получится отдельная статья. Если кратко:

  1. Пока перезапускается процесс uwsgi — запросы ждут в очереди, либо уходят на другой сервер
  2. Версия кода на сервере строго связана с версией скриптов и стилей (чтобы не получилась новая разметка со старыми стилями)
  3. Так как миграция схемы БД выполняется до перезапуска сервера, то старый код должен уметь работать с новой версией схемы БД.


Не все изменения можно выложить на проект при таком подходе. В таких случаях — обновление производится по ночам или субботам с остановкой работы проекта.
Передам Татьяне, что её не существует :)
Спасибо. Я полностью с Вами согласен. Рано или поздно это будет реализовано.

Но тут важно понимать как мы расставляем приоритеты задач: мы задаём вопрос «Как это влияет на основные показатели?»
В итоге в первую очередь реализуем то, что требуется для роста проекта и его монетизации. Lean startup в чистом виде.

Вы бы слышали как она поёт джаз :)
www.youtube.com/watch?v=ktqe9ZoDl7E
Кратко:
  1. В стандартной поставке celery уже хорош. Я доволен и не ищу «легковесных» альтернатив.
  2. Обязательно нужен веб-мониторинг celery flower. Когда какая-нибудь задача сходит с ума и забивает все рабочие процессы — только так можно быстро всё наладить.
  3. Приоритетов задач в celery нет, но они нужны. Помогает запуск нескольких сервисов celery с различными очередями. Приоритетные и важные задачи отправляются в одну очередь, медленные и неприоритетные — в другую. В результате задачи не блокируют друг друга.
  4. В качестве очереди задач в теории можно использовать Redis, но стабильно у меня работает только RabbitMQ.
так и есть, draw.io
Не томите, ребята! Запускайте первую волну!
Где-то недалеко премия Дарвина…
Это с точки зрения пользователя.
А с точки зрения маркетолога вы — брендовый траффик :) Ещё есть траффик с СЕО/Контекста/Агрегаторов/Партнёрок…
Согласен. Но отмечу: что бы вы зашли на юлмарт — юлмарту потребовалось потратить десяток миллионов рублей на маркетинг. Что бы вы про них вспомнили, когда потребуются наушники.
Это если посетитель заходит на главную сайта.

Где вы будете покупать книги? Скорее всего зайдёте на Озон и через его поиск найдёте то что требуется.
А если нужно купить подвесное кресло-гамак? Гугл/Яндекс приведут вас сразу на карточку товара noname-магазина, про который вы никогда не слышали.
Это всё безусловно имеет смысл, если клиент использует витрину для подбора товаров.

Но как правило основной канал привлечения: контекстная реклами/сео/агрегаторы. В этом случае пользователь сразу заходит на нужную карточку товара минуя каталог/поиск.
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Томская обл., Россия
Дата рождения
Зарегистрирован
Активность