Пример #1
0
Файл: web.py Проект: HVF/diesel
    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)
Пример #2
0
    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
Пример #3
0
    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
Пример #4
0
# 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)
Пример #5
0
# 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()