Юрий
Друзья, у меня такой вопрос, не совсем по монге наверно, а может и по ней. Есть ли какие минималистичные nosql БД для слабых серверов. К примеру у меня сервер на 1гб оперативки, из которых занято 990. Т.е. все работает на максимально допустимом пределе, но хочется ещё и бд поставить. Монга она как вообще с этим? или есть аналоги под такие цели?
yopp
Купите подписку, включите бэкапы. Содержать свою монгу будет на порядки дороже, просто тупо по трудозатратам
Юрий
Если 500 мб хватит, регай на атласе, если нет, то получи 300 баксов на год бесплатно на гугл клауд и подними там базу и/или просто норм сервак
Сервак обслуживает 10 постоянных пользователей. Всё что он принимает можно хранить в файлике весом 500кб. Как бы не сложно всё так и оставить, но хочется же бд)
yopp
Если сильно хочется приключений и заводить в таких условиях, то пробуйте завести SQLite через биндинги к вашему языку. Там куча всяких ручек, которыми можно накрутить так, что оно будет почти всегда ходить на диск
Юрий
TinyDB? https://tinydb.readthedocs.io/en/latest/intro.html#why-use-tinydb
интересно, потестирую, спасибо
Anonymous
Купите подписку, включите бэкапы. Содержать свою монгу будет на порядки дороже, просто тупо по трудозатратам
Всем спасибо за советы. Хочется минимум головной боли и сосредоточиться на разработке, так что скорее всего так и поступлю. Единственное, было бы круто, если бы в России были аналоги (либо хотя бы серваки Атласа в России). Пока только яндекс что-то похожее предлагает, но с ними связываться особого желания нет (особенно после истории случайного удаления клиентских vps).
Oleg
Так-то все фейлят время от времени
JASWGO
Всем привет. Такой вопрос, у меня бэкенд на java+mongodb. Я незнаю java, на знаю golang и теперь я хочу написать новый функционал на golang. Как мне узнать момент изменения записи в БД когда это делает java?
JASWGO
Триггеры есть в монго?
Denis
Триггеры есть в монго?
в монгусе есть хуки pre/post save/update и тд, если я правильно понял суть проблемы
Denis
"Как мне узнать момент изменения записи в БД когда это делает java?" А зачем это важно знать?
Denis
Мне надо знать когда поступил заказ в систему например...
База здесь не при чем Раз у тебя часть на жаве часть на го, пили микросервисы И общайся между микросервисами
Denis
Мне надо знать когда поступил заказ в систему например...
Соответственно внутри логики создания заказа в жаве, после успешного создания заказа, шлешь евент в другой микросервис
Bro
🤪
Через очереди сообщений. Можно реализовать
Bro
В монге есть оплог
Bro
Есть еще db.collection.watch
привет
не подскажите как внедрить монго в пайтон приложение
просто я не совсем непонимаю, как это происходит
ага
вот
а если я хочу распространять это приложение
у моего клиента тоже должно быть установлено это приложение бд
?
Anonymous
Потом загуглить ,что там есть в pip который помогает взаимодействовать с монго
мне надо именно на персональной машине
или так все базы данных работают?
что только на сервере их запускают
Anonymous
Можешь арендовать в mLab
Anonymous
Если не хочешь сервер заводить
Anonymous
mlab.com
то есть на компе другого человека, если он установит мое приложение, она не будет работать?
ну без сервера и т.д.
а есть базы данных, к которым можно будет обращаться как к файлу без подключений к локалхосту и серверам?
Anonymous
Хотя если установит монго то будет
Но твоих данных не будет
Ilya
BoltDB
Ilya
но да она будет пустой)
она будет работать везде, без установки, а просто, создав ее из приложения своего?
походу, вы не понимаете
благодарю
ikasymov
Ребят пишу свой сервис, как вообще надо коннектится к монго? На каждый тред один коннект, или на каждый запрос один коннект?
ikasymov
где можно почитать про это
Anonymous
https://www.w3schools.com/nodejs/nodejs_mongodb.asp
ikasymov
монго может держать одновременно 8к коннектов?
yopp
а если я хочу распространять это приложение
В этом случае вам нужна встроенная база данных. Монга для такого сценария не подходит. Посмотрите в сторону SQLite3 или подобных embedded решений.
Seos
На Atlas
Так и подумал, спасибо. А не могли бы вы немного подробнее рассказать о содержании монги на виртуальном сервере. Выбираю между монгой и еще одной бд, пытаюсь выяснить с какой будет удобней работать.
Ivan
Да, может.
А сколько разумный максимум? 20к?
ikasymov
Использовать пул соединений. Скорее всего ваш драйвер уже это делает
У меня вопрос на счет пула, если все коннекты в пуле занято, что он делает дальше?
yopp
У меня вопрос на счет пула, если все коннекты в пуле занято, что он делает дальше?
Зависит от языка и драйвера. Либо вызов будет блокироваться в случае синхронного выполнения, либо запросы будут стоять в очереди, в случае асинхронного.
yopp
По числу тредов
Со стороны приложения. 20к это в большинстве случаев не разумно, если только у вас не несколько десятков тысяч параллельно выполняющихся инстансов/тредов приложения. Устанавливать соединение на каждый запрос это затратно и долго, особенно в случае если используется TLS.
Исмаил
всем мир, оч нужна ваша помощь, ловлю E11000 duplicate key error гуглю, но не могу понять в чем проблема, может кто в двух словах объяснить?
Slava
всем мир, оч нужна ваша помощь, ловлю E11000 duplicate key error гуглю, но не могу понять в чем проблема, может кто в двух словах объяснить?
На коллекции есть уникальный индекс, и вы делаю вставку документа, который уже есть в коллекции
Slava
Сделайте db.collection.getIndexes() и по слову unique будет виден какой именно индекс уникальный и какие роля содержит
Slava
https://docs.mongodb.com/manual/core/index-unique/
Исмаил
ну в том то и дело, что я сам уникальные индексы не открывал, ловлю при добавлении в одну коллекцию
Исмаил