MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Повторно използване на връзки към база данни с функции на Azure с помощта на Javascript

Да, има много близка еквивалентност между C#/SQL, съхраняващ един екземпляр на SqlConnection в статична променлива, и JS/MongoDB, съхраняващ един екземпляр на Db в глобална променлива. Основният модел за JS/MongoDB във функциите на Azure е (ако приемем, че сте актуални за async/await – като алтернатива можете да използвате обратни извиквания според вашата свързана статия):

// getDb.js

let dbInstance;

module.exports = async function() {
    if (!dbInstance) {
        dbInstance = await MongoClient.connect(uri);
    }
    return dbInstance;
};

// function.js

const getDb = require('./getDb.js');

module.exports = async function(context, trigger) {
    let db = await getDb();
    // ... do stuff with db ..
};

Това ще означава, че създавате само един Db обект на екземпляр на хост. Обърнете внимание, че това не е едно за всяко функционално приложение - ако използвате специален план за услуга за приложения, тогава ще има броя на екземплярите, които сте посочили в плана, а ако използвате план за потребление, тогава той ще варира в зависимост от това колко натоварено е вашето приложение.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. CouchDB срещу MongoDB (използване на паметта)

  2. импортиране на JSON в mongoDB с помощта на pymongo

  3. „Статични“ методи на Mongoose срещу „инстанционни“ методи

  4. Отчитане на MongoDB и BIRT?

  5. Не мога да стартирам meteor в cloud ide, имам нужда от помощ, за да разбера използването на паметта на meteor