Впервые слышите о tornado? Слышали, но боялись асинхронности? Смотрели на него более полугода назад? Тогда я посвящаю эту статью вам :)
Рубрика «mongodb» - 16
Современный Торнадо: распределённый хостинг картинок в 30 строк кода
2014-07-21 в 15:33, admin, рубрики: async, mongodb, python, tornadoОсобенности использования MongoDB
2014-07-08 в 10:55, admin, рубрики: mongo, mongodb, социальные сети 
Чуть больше года назад меня попросили поучаствовать в развитии одной известной в узких кругах (но не всегда с хорошей стороны) социальной сети. В то время я уже был фанатом языка Haxe, поэтому с тем на чём писать вопросов не возникало. А вот с БД они появились. Опыт использования MS SQL Server и MySQL говорили о том, что когда дело касается больших объёмов информации, то порой случаются сложности (практически невозможным становится изменение структуры БД, а когда-то быстрые запросы работают уже критически медленно). Посовещавшись с коллегами (у которых уже был опыт с Mongo), мы решили использовать именно эту СУБД. А о тех особенностях, которые всплыли в течение этого года я и расскажу ниже.
Читать полностью »
Как я проект с JavaScript на Scala переписывал
2014-07-07 в 6:02, admin, рубрики: javascript, mongodb, nodejs, play framework, scala, боль, хипстеры
Я никогда не смогу ходить! Потому что я ползаю.
—Цитаты великих
Меня всегда учили прежде всего здороваться, так что — здравствуйте. Сегодня я расскажу про творческие (и не очень) муки, страдания и боль, которые я испытывал на протяжении определенного периода своей жизни, который я обозначу как ПРОЕКТ. Сначала он был на JavaScript (node.js), а теперь он на Scala (Play). Сразу скажу, что я — один из самых субъективных негодяев в обозримой Вселенной, поэтому некоторые обороты, высказывания и иже с ними могут быть восприняты уважаемыми читателями весьма неоднозначно. Короче, я предупредил. И у меня еще одна небольшая просьба — если уж взялись прочитать статью, то не кидайтесь сразу строчить разоблачающие комментарии. Дочитайте. Я не Пастернак, правду говорю. И вообще, почти все спорные моменты так или иначе освещаю, объясняю.
Читать полностью »
Немного тестов производительности сетевых фреймворков
2014-07-02 в 15:03, admin, рубрики: autobench, eventlet, express.js, gevent, mongodb, nginx, node.js, python, siege, tornado, twisted, Веб-разработкаПривет! Пару месяцев назад я захотел провести тестирование производительности некоторых сетевых фреймворков, c целью понять насколько большая разбежка между ними. Надо ли использовать Node.js там, где хотелось бы Python с Gevent или нужен Ruby с его EventMachine.
Я хочу обратить ваше внимание на то, что эти материалы не являются руководством к выбору фреймворка и могут содержать спорные моменты. Я вообще не собирался публиковать результаты этого исследования, но когда они попадались мне на глаза я ловил себя на мысли, что это может быть кому-нибудь полезно. На этот пост я выделил не больше 4-ех часов, иначе он не появился бы, поэтому от орфографических ошибок, как и от любых других, я не застрахован. Теперь, когда вы ко всему готовы, я начну забрасывать вас графиками.
Читать полностью »
Связываем Doctrine Entity и Doctrine Document на форме в Sonata Admin Bundle
2014-07-02 в 14:47, admin, рубрики: Doctrine ORM, Doctrine2, mongodb, sonataadmin, symfony, symfony2В процессе разработки интернет-магазина была поставлена задача реализовать адресную книгу для авторизованного пользователя. Таким образом, чтобы сам пользователь хранился в базе mysql, а связанные с ним адреса — в mongoDB. Отдельного внимания данная задача заслуживает в части управления пользователями и их адресными книгами из админки, основанной на SonataAdminBundle.
Исходные данные:
Есть доктриновская сущность User и доктриновский документ Address. Между ними должна быть установлена связь один-ко-многим. Всё это должно управляться с формы добавления пользователя в админке на базе сонаты. Поскольку у 1 юзера может быть много адресов, на форме добавления пользователей должна быть реализована коллекция форм добавления адресов с кнопками «добавить», «удалить» и inline редактированием полей связанных адресов. Этим мы и займёмся далее.
Что нам надо:
1) Установить @GedmoReferences doctrine-extension
Это нужно, чтобы мы могли получать коллекцию связанных адресов для заданного юзера из монго, и наоборот — привязанного юзера к каждому адресу из mysql.
Читать полностью »
3 новинки в MongoDB 2.8
2014-06-27 в 21:05, admin, рубрики: mongodb, new york, nosql, метки: mongodb, new yorkНа днях я посетил грандиозную тусовку любителей NoSQL — World MongoDB Conference.

Eliot Horowitz, Co-Founder и CTO в MongoDB, рассказал о 3 новшевствах, которые будут доступны уже в ближайшем релизе.
Каждое из анонсированных нововведений нацелено на достижение следующих принципов в архитектуре MongoDB:
- Продуктивность разработчика
- Горизонтальная масштабируемость
- Операционная масштабируемость
- Администрирование одного вебсервера должно быть простым. То же самое касается кластеров
Видео презентации можно посмотреть здесь.
Читать полностью »
MongoDB Sharded Cluster на Centos 6.5
2014-06-24 в 10:05, admin, рубрики: mongodb, nosql, метки: mongodb, nosqlВ этой статье мы рассмотрим только конфигурацию MongoDB, не затрагивая вопросы подключения репозитория монги и установки пакетов в систему.
Распределенный кластер MongoDB состоит из следующих компонентов:
Шард
Шард — это инстанс mongod, который хранит часть данных шардированной коллекции. Для использования в production, каждый шард должен быть набором реплик (replicaSet).
Сервер конфигураций
Так же экземпляр mongod, который хранит метаданные кластера. Метаданные указывают какие данные хранятся на каком шарде.
Сервер маршрутизации
Экземпляр mongos. Его задача — маршрутизация запросов от приложений к шардам.
Ниже приведена схема работы шардированного кластера MongoDB
Доброе время суток. Этот топик — продолжение цикла статей, основанных на материалах онлайн курса M101 от 10gen. Поскольку вторая неделя является одной из самых насыщенных, она будет разбита на две статьи. Читать полностью »
Книжка Discover Meteor переведена на русский
2014-05-26 в 11:21, admin, рубрики: javascript, Meteor.JS, mongodb, книга, метки: javascript, Meteor.js, mongodb, web программирование, книга 
Автор картинки: Donovan Shortey, использовано по лицензии Creative Commons.
Познавательная книжка Discover Meteor теперь переведена усилиями сообщества на русский язык и находится в свободном доступе. Английская версия по-прежнему требует подписки и стоит (разумных) денег.
В начале марта авторы оригинальной книжки Sacha Greif и Tom Coleman бросили клич, приглашая любителей фреймворка MeteorJS перевести ее на все языки мира. Локализированные версии книжки выкладывались бы под свободной лицензией Creative Commons, свободно доступные для всех желающих быстро познать мир Meteor. В настоящий момент существуют переводы на 22 языка мира, в разной степени готовности. Проект доступен на GitHub, и если кто-то заметил опечатку, или желает как-то дополнить перевод — добро пожаловать в команду.
Читать полностью »
DevConf 2014: Андрей Аксенов, автор Sphinx — расскажет как устроены внутри NoSQL хранилища
2014-05-23 в 7:39, admin, рубрики: devconf, mongodb, nosql, sphinxsearch, Блог компании DevConf, Веб-разработка, конференция для разработчиков, разработка, метки: devconf, mongodb, nosql, sphinxsearch, конференция для разработчиков 
Если вы уже знаете, что такое B+tree, Fractal tree, LSM, SSTable, columnar storage, Bloom filter, read/write amplification, что значат буквы No в слове NoSQL, каким чудом поколоночные базы жмут данные в 100+ раз, и почему файл на диске тоже NoSQL, только маленький и злой, вам совершенно нечего делать на этом докладе. Для всех остальных мы устроим краткий обзор всего цветничка разных структур хранения данных, использующихся в современных постреляционных БД и, понятное дело, попытаемся еще сильнее запутать ответы на главные вопросы бытия («Так все же SQL или NoSQL победит?», «Какую базу брать?» Читать полностью »

