node.js - Maintaining Postgre connection while waiting for new tweet from Twitter Streaming API -


i'm writing app catches tweets specific hashtag using twitter streaming api. each tweet caught must inserted db , need perform query db.

this not trending hashtag let's assume there's around 400 tweets caught per hour. open new connection db each time catch tweet, process queries close connection.

t.on('tweet', function(tweet) {     client.connect(function(error) {         if (error) {             console.error('error while connecting postgresql db: ', error);         }         else {              client.query('<myquery>',                 <myparameters>,                 function (err, result) {                      if (err) {                         return console.error('error running query', err);                     }                     else {                         client.query('<myquery>', function (err, result) {                             client.end();                              if (err) {                                 return console.error('error running count query', err);                             }                             else {                                      io.emit('infos', {infos: {}});                                 }                                  return console.log('tweet added');                             }                         });                     }                 });         }     }); }); 

i post tweet after running server, process ok, when posting 1 2 minutes later, following output:

tweet added events.js:85       throw er; // unhandled 'error' event             ^ error: write epipe     @ exports._errnoexception (util.js:746:11)     @ writewrap.afterwrite (net.js:775:14) 

can tell me what's best way have app listening new tweet , insert db? way creating new connection each time (but don't understand why it's crashing) or opening single connection @ launch , maintain opened during several weeks (i guess it's not option)?

i ended instantiating whole new client each time rather calling connect() , end() methods.

t.on('tweet', function(tweet) {     client = new pg.client(constring); 

Comments

Popular posts from this blog

asp.net mvc - SSO between MVCForum and Umbraco7 -

Python Tkinter keyboard using bind -

ubuntu - Selenium Node Not Connecting to Hub, Not Opening Port -