Личный блог с мыслями и наблюдениями

Список постов с тэгом код

The uWSGI Spooler

13.04.2017   техническое   код   uwsgi   spooler  

Когда проектируешь масштабируемые системы, где приходится обращаться ко множеству внешних компонент, например, использование стороннего API, отправка почты или конвертация видео, лучшим способом реализации является асинхронная модель с системой очередей, которая является связующим звеном для взаимодействия всех компонент системы…

Самой популярной системой очередей в Python является Celery, она обладает широким набором возможностей по управлению задачами.

К сожалению, сложные системы на базе Celery сложно поддерживать в работоспособном состоянии и когда что-то идёт не так, то найти проблему бывает весьма не просто. Можете спросить любого девопса об опыте работы с Celery, но будьте готовы услышать не очень приятные слова.

К счастью, есть альтернативное решение и сейчас я расскажу о нём.

Читать далее →


nginx for frontenders

26.04.2016   техническое   код   nginx   frontend  

Очень часто бывает, что фронтенд-разработчику необходимо добавить или изменить функционал сайта, но нет возможности получить его dev-версию, на которую можно повлиять. Обычно это пытаются обойти запуском браузера с отключенной безопасностью, но не всегда это помогает.

Я расскажу как при работе с «чёрным ящиком» иметь возможность воздействать на его ответы, а также как решать проблемы связанные с безопасностью.

Читать далее →


Логирование изменений в Postgresql


Иногда нужно добавить логирование изменений в некоторых таблицах, для этого приходится городить сложную систему, которая будет отслеживать изменения и записывать в нужное место что поменялось, и есть большой риск забыть добавить логирование в каком-то месте, эту проблему можно изящно решить сделав триггер на изменение таблицы (весь исходный код доступен на (github)[https://gist.github.com/ad/24b606793aa73e8fd5bf1fe4a89c9507] или можно скопировать нажав на кнопку).

Читать далее →



Язык Rust

30.07.2013   техническое   код   rust  

Rust — это экспериментальный язык программирования, разрабатываемый Mozilla Research. Основная задача Rust — быть удобным языком для написания больших клиент-серверных приложений, работающих в сети Интернет. Такое позиционирование привело к возникновению набора функциональности с акцентом на безопасность, контролем за использованием памяти и параллельным выполнением задач. Производительность приложения на Rust должна быть сравнимой с производительностью C++ приложений. Выдержка из Википедии

Синтаксис Rust похож на C/C++ с блоками разделенными фигурными скобками и операторами такими как if, else, do, while и for.

А теперь вольный перевод хорошей, хотя и немного старой статьи A Quick Look at the Rust Programming Language.

Читать далее →


Riak — как универсальное решение

30.07.2013   техническое   riak   код  

Riak — это документно-ориентированная база данных с поддержкой HTTP, JSON, REST.

На основе Riak можно реализовать полноценный проект с CMS, поддержкой пользователей и загрузкой файлов.

Возможности

  • Хранение объектов
  • Ссылки(связи) между объектами
  • Использование в качестве кэша
  • Map/reduce, distributed grep
  • Отказоустойчивость
  • Поиск

Читать далее →