From c5de6f188dac491f114861648aafb30737da131f Mon Sep 17 00:00:00 2001 From: "Kali Kaneko (leap communications)" Date: Sun, 10 Apr 2016 18:42:27 -0400 Subject: move PoCs to its own subdir --- Makefile | 22 +--------------------- server-solsync.py | 1 + server.py | 17 ----------------- server2.py | 20 -------------------- server3.py | 42 ------------------------------------------ soledad_sync.py | 4 ++-- tasks.py | 29 ----------------------------- toys/Makefile | 20 ++++++++++++++++++++ toys/server.py | 17 +++++++++++++++++ toys/server2.py | 20 ++++++++++++++++++++ toys/server3.py | 42 ++++++++++++++++++++++++++++++++++++++++++ toys/tasks.py | 29 +++++++++++++++++++++++++++++ 12 files changed, 132 insertions(+), 131 deletions(-) mode change 100644 => 100755 server-solsync.py delete mode 100644 server.py delete mode 100644 server2.py delete mode 100644 server3.py delete mode 100644 tasks.py create mode 100644 toys/Makefile create mode 100644 toys/server.py create mode 100644 toys/server2.py create mode 100644 toys/server3.py create mode 100644 toys/tasks.py diff --git a/Makefile b/Makefile index 59bac0e..e943803 100644 --- a/Makefile +++ b/Makefile @@ -1,27 +1,7 @@ -# Simple PoC toys - -perf: - httperf --server localhost --port 8080 --num-calls 200 --num-conns 20 --uri / - -perf-little: - httperf --server localhost --port 8080 --num-calls 5 --num-conns 20 --uri / - -perf-easy: - httperf --server localhost --port 8080 --num-calls 5 --num-conns 20 --uri /hi - -inline-server: - python server.py - -thread-server: - python server2.py - -ampoule-server: - python server3.py - # Actual soledad sync soledad-sync-server: - python server-solsync.py + ./server-solsync.py measure-ping: httperf --server localhost --port 8080 --num-calls 5 --num-conns 20 --uri /ping diff --git a/server-solsync.py b/server-solsync.py old mode 100644 new mode 100755 index b183f86..d47b06f --- a/server-solsync.py +++ b/server-solsync.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python from klein import run, route import soledad_sync as sync diff --git a/server.py b/server.py deleted file mode 100644 index 4afa31b..0000000 --- a/server.py +++ /dev/null @@ -1,17 +0,0 @@ -import os -from klein import run, route -import tasks - -FIB = os.environ.get('FIB', tasks.FIB_DEFAULT) - - -@route('/') -def home(request): - return 'answer is >>> %s\n' % tasks.fib(FIB) - -@route('/hi') -def ping(request): - return 'easy!' - -if __name__ == "__main__": - run("localhost", 8080) diff --git a/server2.py b/server2.py deleted file mode 100644 index 268c7c5..0000000 --- a/server2.py +++ /dev/null @@ -1,20 +0,0 @@ -import os -from klein import run, route -from twisted.internet.threads import deferToThread -import tasks - -FIB = os.environ.get('FIB', tasks.FIB_DEFAULT) - - -@route('/') -def home(request): - d = deferToThread(tasks.fib, FIB) - d.addCallback(lambda result: 'answer is >>> %s\n' % result) - return d - -@route('/hi') -def ping(request): - return 'easy!' - -if __name__ == "__main__": - run("localhost", 8080) diff --git a/server3.py b/server3.py deleted file mode 100644 index d737d4b..0000000 --- a/server3.py +++ /dev/null @@ -1,42 +0,0 @@ -import os -import sys -from klein import run, route - -from twisted.internet import defer -from twisted.internet import reactor -from twisted.python import log - -from ampoule import pool - -import tasks - -log.startLogging(sys.stdout) - -FIB = os.environ.get('FIB', tasks.FIB_DEFAULT) - - -@route('/') -def home(request): - d = pp.doWork(tasks.Fib, n=int(FIB)) - d.addCallback(lambda res: 'answer is >>> {r}\n'.format(r=res['fib'])) - return d - -@route('/hi') -def ping(request): - return 'easy!' - - -pp = None - - -@defer.inlineCallbacks -def start_pool(): - global pp - # TODO get max number of processors - pp = pool.ProcessPool(tasks.FibCalculator, min=1, max=4) - print 'starting pool' - yield pp.start() - -if __name__ == "__main__": - reactor.callWhenRunning(start_pool) - run("localhost", 8080) diff --git a/soledad_sync.py b/soledad_sync.py index 136b02c..ca93206 100644 --- a/soledad_sync.py +++ b/soledad_sync.py @@ -4,8 +4,8 @@ from twisted.internet import defer # EDIT THIS TO MATCH YOUR TEST ENVIRONMENT ------------- UUID = 'deadbeef' -HOST = 'http://futeisha:2323' -# HOST = 'http://localhost:2323' +#HOST = 'http://futeisha:2323' +HOST = 'http://localhost:2323' #NUM_DOCS = 20 NUM_DOCS = 1 PAYLOAD = '/tmp/payload' diff --git a/tasks.py b/tasks.py deleted file mode 100644 index 3f8b85d..0000000 --- a/tasks.py +++ /dev/null @@ -1,29 +0,0 @@ -import os -from twisted.protocols import amp -from ampoule import child - -FIB_DEFAULT = 30 - - -def fib(n): - '''very silly fibonacci function. - do not try to optimize this, the idea is to make your cpu suffer for a - while''' - n = int(n) - if n <= 2: - return 1 - else: - return fib(n-1) + fib(n-2) - -# ampoule stuff - -class Fib(amp.Command): - arguments = [('n', amp.Integer())] - response = [('fib', amp.Integer())] - - -class FibCalculator(child.AMPChild): - @Fib.responder - def fib(self, n): - #print "FIB FUNCTION CALLED WITH", n - return {"fib": fib(n)} diff --git a/toys/Makefile b/toys/Makefile new file mode 100644 index 0000000..33761a1 --- /dev/null +++ b/toys/Makefile @@ -0,0 +1,20 @@ +# Simple PoC toys + +perf: + httperf --server localhost --port 8080 --num-calls 200 --num-conns 20 --uri / + +perf-little: + httperf --server localhost --port 8080 --num-calls 5 --num-conns 20 --uri / + +perf-easy: + httperf --server localhost --port 8080 --num-calls 5 --num-conns 20 --uri /hi + +inline-server: + python server.py + +thread-server: + python server2.py + +ampoule-server: + python server3.py + diff --git a/toys/server.py b/toys/server.py new file mode 100644 index 0000000..4afa31b --- /dev/null +++ b/toys/server.py @@ -0,0 +1,17 @@ +import os +from klein import run, route +import tasks + +FIB = os.environ.get('FIB', tasks.FIB_DEFAULT) + + +@route('/') +def home(request): + return 'answer is >>> %s\n' % tasks.fib(FIB) + +@route('/hi') +def ping(request): + return 'easy!' + +if __name__ == "__main__": + run("localhost", 8080) diff --git a/toys/server2.py b/toys/server2.py new file mode 100644 index 0000000..268c7c5 --- /dev/null +++ b/toys/server2.py @@ -0,0 +1,20 @@ +import os +from klein import run, route +from twisted.internet.threads import deferToThread +import tasks + +FIB = os.environ.get('FIB', tasks.FIB_DEFAULT) + + +@route('/') +def home(request): + d = deferToThread(tasks.fib, FIB) + d.addCallback(lambda result: 'answer is >>> %s\n' % result) + return d + +@route('/hi') +def ping(request): + return 'easy!' + +if __name__ == "__main__": + run("localhost", 8080) diff --git a/toys/server3.py b/toys/server3.py new file mode 100644 index 0000000..d737d4b --- /dev/null +++ b/toys/server3.py @@ -0,0 +1,42 @@ +import os +import sys +from klein import run, route + +from twisted.internet import defer +from twisted.internet import reactor +from twisted.python import log + +from ampoule import pool + +import tasks + +log.startLogging(sys.stdout) + +FIB = os.environ.get('FIB', tasks.FIB_DEFAULT) + + +@route('/') +def home(request): + d = pp.doWork(tasks.Fib, n=int(FIB)) + d.addCallback(lambda res: 'answer is >>> {r}\n'.format(r=res['fib'])) + return d + +@route('/hi') +def ping(request): + return 'easy!' + + +pp = None + + +@defer.inlineCallbacks +def start_pool(): + global pp + # TODO get max number of processors + pp = pool.ProcessPool(tasks.FibCalculator, min=1, max=4) + print 'starting pool' + yield pp.start() + +if __name__ == "__main__": + reactor.callWhenRunning(start_pool) + run("localhost", 8080) diff --git a/toys/tasks.py b/toys/tasks.py new file mode 100644 index 0000000..3f8b85d --- /dev/null +++ b/toys/tasks.py @@ -0,0 +1,29 @@ +import os +from twisted.protocols import amp +from ampoule import child + +FIB_DEFAULT = 30 + + +def fib(n): + '''very silly fibonacci function. + do not try to optimize this, the idea is to make your cpu suffer for a + while''' + n = int(n) + if n <= 2: + return 1 + else: + return fib(n-1) + fib(n-2) + +# ampoule stuff + +class Fib(amp.Command): + arguments = [('n', amp.Integer())] + response = [('fib', amp.Integer())] + + +class FibCalculator(child.AMPChild): + @Fib.responder + def fib(self, n): + #print "FIB FUNCTION CALLED WITH", n + return {"fib": fib(n)} -- cgit v1.2.3