Можно ли принимать MongoDB в процессе?
Вопрос
В настоящее время все, что я прочитал, указывает на то, что вы должны запустить MongoDB как отдельный процесс/сервис. Есть ли способ разместить MongoDB в процессе? Если нет сейчас, то их известные планы по реализации такой функции?
Решение
Основываясь на моем опыте работы с MongoDB и моей ссоры билетов на трекер http://jira.mongodb.org/browse/server, Я не знаю ни одного способа размещения MongoDB в процессе. Я также не нашел никаких доказательств планов на будущее.
Я бы порекомендовал задать этот вопрос в списке рассылки пользователя MongoDB: http://groups.google.com/group/mongodb-user
Другие советы
MongoDB имеет лицензию GNU AGPL, поэтому, если вы включите (ссылку) в свое приложение, то источник этого приложения также будет лицензирован GNU AGPL. Конечно, вы можете запустить MongoDB из своего приложения при запуске и снова завершить MongoDB, когда приложение останавливается.
Вы можете использовать Встроенный mongodb Библиотека, хотя она была разработана для целей модульного тестирования.
У другого вопроса о переполнении стека есть ответы, относящиеся к этому вопросу.
Встроенный MongoDB при запуске интеграционных тестов
В частности, в нем упоминается монгодб в памяти для JVM по имени Фонго.
Похоже, Фонго в основном для интеграционных тестов и/или обучения. Он может не обрабатывать все использование монго, но стоит посмотреть.