t1.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. var database = null;
  2. var MongoClient = require('./').MongoClient;
  3. function connect_to_mongo(callback) {
  4. if (database != null) {
  5. callback(null, database);
  6. } else {
  7. var connection = "mongodb://127.0.0.1:27017/test_db";
  8. MongoClient.connect(connection, {
  9. server : {
  10. reconnectTries : 5,
  11. reconnectInterval: 1000,
  12. autoReconnect : true
  13. }
  14. }, function (err, db) {
  15. database = db;
  16. callback(err, db);
  17. });
  18. }
  19. }
  20. function log(message) {
  21. console.log(new Date(), message);
  22. }
  23. var queryNumber = 0;
  24. function make_query(db) {
  25. var currentNumber = queryNumber;
  26. ++queryNumber;
  27. log("query " + currentNumber + ": started");
  28. setTimeout(function() {
  29. make_query(db);
  30. }, 5000);
  31. var collection = db.collection('test_collection');
  32. collection.findOne({},
  33. function (err, result) {
  34. if (err != null) {
  35. log("query " + currentNumber + ": find one error: " + err.message);
  36. return;
  37. }
  38. log("query " + currentNumber + ": find one result: " + result);
  39. }
  40. );
  41. }
  42. connect_to_mongo(
  43. function(err, db) {
  44. if (err != null) {
  45. log(err.message);
  46. return;
  47. }
  48. make_query(db);
  49. }
  50. );