Рубрика «mongodb» - 8

Привет Мир! По просьбам заинтересованных в GraphQL, подготовил full-stack пример с авторизацией, регистрацией, личным профилем, изменением и удалением данных.

Читать полностью »

Здравствуйте, меня зовут Александр Зеленин, и я веб-разработчик сисадмин.

К сожалению, вся информация о полноценной развёртке приложения на MeteorJS довольно разрозненна, и приходится вручную решать миллион задач. В этой статье я хочу разобрать самую базовую (но уже достаточную для безопасной работы в продакшене) настройку сервера и последующий процесс ручного деплоя.

Разворачивать будем на Ubuntu 16, но, в целом, схема на 99% совпадает и для Debian 8.

Читать полностью »

Как пережить масштабирование и синхронизировать-таки всё между дата-центрами - 1
Если нет, то он гонит трафик на Amazon, где продает булыточку воды за $26, а мы расскажем о сайтах в нашем SaaS-конструкторе

Ни одна площадка не может гарантировать бесперебойную работу в течение, например, года — это данность по целому ряду причин. Значит, надо иметь “план Б” — обеспечить отказоустойчивость на уровне дата-центра и создать резервную площадку, которая чуть что подхватит трафик. Синхронизируют сервера все — и Яндекс, и Гугл, и герои под катом.

Читать полностью »

В этой статье используется MathJax для рендеринга математических формул. Нужно включить JavaScript, чтобы MathJax заработал.

Многие распределённые системы хранения (в том числе Cassandra, Riak, HDFS, MongoDB, Kafka, …) используют репликацию для сохранности данных. Их обычно разворачивают в конфигурации «просто пачка дисков» (Just a bunch of disks, JBOD) — вот так, без всякого RAID для обработки сбоев. Если один из дисков в ноде отказывает, то данные этого диска просто теряются. Чтобы предотвратить безвозвратную потерю данных, СУБД хранит копию (реплику) данных где-то на дисках в другой ноде.

Самым распространённым фактором репликации является 3 — это значит, что база данных хранит три копии каждого фрагмента данных на разных дисках, подключенных к трём разным компьютерам. Объяснение этому примерно такое: диски выходят из строя редко. Если диск вышел из строя, то есть время заменить его, и в это время у вас ещё две копии, с которых можно восстановить данные на новый диск. Риск выхода из строя второго диска, пока вы восстанавливаете первый, достаточно низок, а вероятность смерти всех трёх дисков одновременно настолько мала, что более вероятно погибнуть от попадания астероида.
Читать полностью »

Как Discord хранит миллиарды сообщений - 1

Discord продолжает расти быстрее, чем мы ожидали, как и пользовательский контент. Чем больше пользователей — тем больше сообщений в чате. В июле мы объявили о 40 млн сообщений в день, в декабре объявили о 100 млн, а в середине января преодолели 120 млн. Мы сразу решили хранить историю чатов вечно, так что пользователи могут вернуться в любой момент и получить доступ к своим данным с любого устройства. Это много данных, поток и объём которых нарастает, и все они должны быть доступными. Как мы это делаем? Cassandra!
Читать полностью »

Security Week 09: Тяжесть уязвимости Cloudflare, приватность IoT-медвежат - 1День у директора отделения банка «Прорыв» Ивана Петровича Хататапасова не задался. Накануне прислали мутную и многоообещающую бумагу из центра о внедрении каких-то новых практик и метрик. С утра во двор банка заехал грузовик и прямо на землю выгрузил бесформенную кучу денег. По телефону Ивану Петровичу объяснили, что в рамках оптимизиции региональной сети небольшая часть средств будет временно храниться в данном отделении, за что Иван Петрович может получить комиссию: «Ну возьмите там ведро денег. Нет, расписок не нужно, но только одно ведро».

Просидев всю ночь с берданкой на куче бабла, Иван Петрович запротестовал, но ему дали понять, что это новая прогрессивная эджайл методика банкинга, инкорпорированная на основе лучших образцов мировых кейс стади, и нечего тут вообще возникать. Куча осталась без присмотра: ее удачно присыпало снегом, и в общем с улицы было не так заметно, хотя попытки пересчитать деньги все время давали разную сумму: непонятные молодые люди на грузовичках периодически что-то отвозили и привозили, считая на глазок.

То есть, кхм, о чем это я. Приведенный выше абсурд в контексте хранения персональных данных в сети регулярно превращается в суровую реальность: то у Yahoo! миллиарды! паролей! украдут!, то у Cloudflare в результате ошибки (новость) важные данные распылит тонким слоем по сайтам клиентов и гуглу. Сегодняшний выпуск — про приватность. И правильную оценку рисков.
Читать полностью »

MySQL и MongoDB — когда и что лучше использовать - 1

Петр Зайцев показывает разницу между MySQL и MongoDB. Это — расшифровка доклада с Highload++ 2016.

Если посмотреть такой известный DB-Engines Ranking, то можно увидеть, что в течении многих лет популярность open source баз данных растет, а коммерческих — постепенно снижается.
Читать полностью »

Это — не статья, это — фейлбук. То, что вы прочтете под катом, — выжимка наших нелепых техно-промахов за все 5 лет работы над флагманским продуктом — iFunny. Возможно, наша фейловая история поможет вам избежать ошибок, а возможно, вызовет смех. Что тоже хорошо. Смешить людей — призвание FunCorp уже 13 лет.

Остроумие и отвага: как мы много раз ошибались, создавая iFunny - 1

Читать полностью »

Так как колоночная СУБД ClickHouse (внутренняя разработка Яндекс) стала доступна каждому, решил использовать эту СУБД заместо MongoDB для хранения аналитических данных. Перед использованием сделал небольшой тест производительности и хочу поделиться результатами с IT сообществом.
Читать полностью »

image

В начале января этого года группа из 21 хакера провела масштабную серию кибератак, жертвами которой стали системы, использующие MongoDB. За пять дней было инфицировано порядка 21600 баз данных MongoDB, а только злоумышленники, называющие себя Kraken Group получили выкупов на сумму в 9,8 BTC (около 7700$).

Но даже после активного противодействия атаке и освещения проблемы в зарубежной профессиональной прессе и блогосфере, хакеры останавливаться не собираются. К концу января все кто хотел заплатить — заплатили, но группа останавливаться не собирается.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js