Android и монго

У меня есть приложение, подключающееся к серверу mongodb. Однако выполнение запроса из моего приложения может занять от 2 до 10 секунд. Мои коллекции не большие. Самый большой только 527 записей.

Я знаю, что в идеале вы не должны подключать свое приложение напрямую к dong монго, но именно так оно и работает (пока что в любом случае).

Мне было просто любопытно, кто еще сделал это, если у них была похожая проблема? Я использую сайт mlab.com для моей базы данных Монго.

ОБНОВЛЕНИЕ 1:

Вот один из моих запросов. Он получает всех игроков для указанной команды. 10 секунд - это редкое явление, но 5 - обычное явление, до 7 вообще не редкость. Я вызываю запрос в AsyncTask. У меня есть индексы на команду и название коллекции игроков. Но в любом случае их всего 527 записей, это не так уж и нужно.

    uri = new MongoClientURI("mongodb://user:password@<server>/fantasydraft");
    mongoClient = new MongoClient(uri);
    mongoDB = mongoClient.getDatabase(uri.getDatabase());
    MongoCollection<Document> playerCollection =  mongoDB.getCollection("players");
    String result = "";

    MongoCursor<Document> cursor = playerCollection.find(
            new Document("team", team)).sort(new Document("name", 1)).iterator(); // Sort by name

    while(cursor.hasNext())
        searchResults.add(cursor.next().getString("name"));

База данных размещена на сайте www.mlab.com. Я собираюсь связаться с ними в следующий раз, но мне было просто любопытно, была ли это проблема с андроидом, напрямую соединяющимся с монго, который является известной проблемой какого-то рода.

Я проверил счетный звонок, и это заняло несколько секунд. Я никогда не делал монго через Android прежде, но я предполагаю, что для таких простых вещей это должно быть намного быстрее?

0 ответов

Другие вопросы по тегам