def run(self, port=8080, iface='', verbosity=loglevels.DEBUG, debug=True): set_log_level(verbosity) if debug: self.debug = True from diesel.protocols.wsgi import WSGIRequestHandler from diesel.protocols.http import HttpServer http_service = Service(HttpServer(self.handle_request), port, iface) self.schedule(http_service) quickstart(*self.jobs, __app=self.diesel_app)
def append_stats(): rawstats = subprocess.Popen(['ps -p %d -f' % pid], shell=True, stdout=subprocess.PIPE).communicate()[0] header, data = rawstats.split('\n', 1) procstats = [d for d in data.split(' ') if d] cpustats.append(int(procstats[3])) while True: diesel.sleep(1) diesel.thread(append_stats) def main(): diesel.fork(track_cpu_stats) actor_pairs = int(sys.argv[1]) done = Countdown(actor_pairs) for i in xrange(actor_pairs): pair(done) start = time.time() done.wait() print "done in %.2f secs" % (time.time() - start) diesel.sleep(1) diesel.quickstop() if __name__ == '__main__': diesel.set_log_level(diesel.loglevels.ERROR) diesel.quickstart(main) print cpustats
diesel.fork(producer, q) diesel.fork(consumer, q, done) def track_cpu_stats(): pid = os.getpid() def append_stats(): rawstats = subprocess.Popen(['ps -p %d -f' % pid], shell=True, stdout=subprocess.PIPE).communicate()[0] header, data = rawstats.split('\n', 1) procstats = [d for d in data.split(' ') if d] cpustats.append(int(procstats[3])) while True: diesel.sleep(1) diesel.thread(append_stats) def main(): diesel.fork(track_cpu_stats) actor_pairs = int(sys.argv[1]) done = Countdown(actor_pairs) for i in xrange(actor_pairs): pair(done) start = time.time() done.wait() print "done in %.2f secs" % (time.time() - start) diesel.sleep(1) diesel.quickstop() if __name__ == '__main__': diesel.set_log_level(diesel.loglevels.ERROR) diesel.quickstart(main) print cpustats
# vim:ts=4:sw=4:expandtab '''Example of event firing. ''' import time import random from diesel import (quickstart, quickstop, sleep, fire, wait, log, loglevels, set_log_level) set_log_level(loglevels.DEBUG) def gunner(): x = 1 while True: fire('bam', x) x += 1 sleep() def sieged(): t = time.time() while True: n = wait('bam') if n % 10000 == 0: log.info(str(n)) if n == 50000: delt = time.time() - t log.debug("50,000 messages in {0:.3f}s {1:.1f}/s)", delt, 50000 / delt) quickstop() log = log.name('fire-system') quickstart(gunner, sieged)
# vim:ts=4:sw=4:expandtab '''Example of event firing. ''' import time import random from diesel import (quickstart, quickstop, sleep, fire, wait, log, loglevels, set_log_level) set_log_level(loglevels.DEBUG) def gunner(): x = 1 while True: fire('bam', x) x += 1 sleep() def sieged(): t = time.time() while True: n = wait('bam') if n % 10000 == 0: log.info(str(n)) if n == 50000: delt = time.time() - t log.debug("50,000 messages in {0:.3f}s {1:.1f}/s)", delt, 50000 / delt) quickstop()