<div dir="ltr"><span style="font-family:arial,sans-serif;font-size:13px">Hi,</span><br style="font-family:arial,sans-serif;font-size:13px"><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">
  I am having a requirement on to send async some 300,000 or more rest api url calls..</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">When I work with the code for 150,000 it works fine .It takes around 8 minutes.Is it possible to improve the performance</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">When the count increased to some 200,000  ,I am getting the error.</div><div style="font-family:arial,sans-serif;font-size:13px">
<br></div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">-------------------------------------------------------------------------------------------------</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><div>Traceback (most recent call last):</div><div>Failure: twisted.internet.error.TimeoutError: User timeout caused connection failure.</div>
<div>Unhandled error in Deferred:</div><div>Unhandled Error</div><div>Traceback (most recent call last):</div><div><br></div><div>-----------------------------------------------------------------------------------------------</div>
<div><br></div><div>As my server is <span style="color:rgb(31,73,125);font-family:Calibri,sans-serif;font-size:11pt">8 CPU quadcore box, 2.40 Ghz, with 96G of RAM</span></div><span lang="EN-US" style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span><div>
<br></div><div><b>Can you please suggest me how can I overcome this error </b></div><div><b><br></b></div><div><b>Make the performance better</b></div><div><br></div><div>This is my piece of code where I have implemented twisted</div>
<div>------------------------------------------------------------------------------------------------</div><div><div>from twisted.internet import defer, reactor, task</div><div>from twisted.web.client import getPage</div>
<div>import sys, argparse, csv, collections, time, datetime </div><div><br></div><div>maxRun =32</div><div>urls = ""</div><div><br></div><div>def pageCallback(result):</div><div>  print len(result)</div><div>  return result</div>
<div> </div><div>def doWork():</div><div>  for url in urls.split(','):<br></div><div>    d = getPage(url)</div><div>    d.addCallback(pageCallback)</div><div>    yield d</div><div> </div><div>def finish(ign):</div>
<div>  reactor.stop()</div><div> </div><div>def test():</div><div>  deferreds = []</div><div>  coop = task.Cooperator()</div><div>  work = doWork()</div><div>  for i in xrange(maxRun):</div><div>    d = coop.coiterate(work)</div>
<div>    deferreds.append(d)</div><div>  dl = defer.DeferredList(deferreds)</div><div>  dl.addCallback(finish)</div><div><br></div><div><br></div><div>if __name__ == '__main__':</div><div>  </div><div>   filename = sys.argv[1]</div>
<div>   #I open the file ,read the files and create the url's</div><div>    </div><div><span style="white-space:pre-wrap">                    </span><span style="white-space:pre-wrap">                        </span>                                      </div>
<div>      test()</div><div>      reactor.run()</div></div></div></div>