Browse Source

API-Hour FrameworkBenchmark: Update benchmarks for API-Hour improvements

Ludovic Gasc (GMLudo) 10 years ago
parent
commit
5dbb00f3e4

+ 1 - 0
.travis.yml

@@ -115,6 +115,7 @@ env:
     - "TESTDIR=PHP/php-zend-framework"
     - "TESTDIR=PHP/php-zend-framework1"
     - "TESTDIR=PHP/phreeze"
+    - "TESTDIR=Python/API-Hour"
     - "TESTDIR=Python/bottle"
     - "TESTDIR=Python/django"
     - "TESTDIR=Python/falcon"

+ 6 - 6
frameworks/Python/API-Hour/hello/etc/hello/logging.ini

@@ -35,37 +35,37 @@ handlers=console,smtp,syslog
 
 # You can add smtp in handlers list to receive e-mail alerts
 [logger_warnings]
-level=ERROR
+level=WARN
 handlers=console,syslog
 qualname=py.warnings
 propagate=0
 
 [logger_asyncio]
-level=ERROR
+level=WARN
 handlers=console,syslog
 qualname=asyncio
 propagate=0
 
 [logger_gunicorn]
-level=ERROR
+level=WARN
 handlers=console,syslog
 qualname=gunicorn
 propagate=0
 
 [logger_aiohttp]
-level=ERROR
+level=WARN
 handlers=console,syslog
 qualname=aiohttp
 propagate=0
 
 [logger_api_hour]
-level=ERROR
+level=WARN
 handlers=console,syslog
 qualname=api_hour
 propagate=0
 
 [logger_hello]
-level=ERROR
+level=DEBUG
 handlers=console,syslog
 qualname=hello
 propagate=0

+ 6 - 1
frameworks/Python/API-Hour/hello/hello/__init__.py

@@ -28,7 +28,12 @@ class Container(api_hour.Container):
         self.servers['http'].router.add_route('GET', '/plaintext', endpoints.world.plaintext)
 
     def make_servers(self):
-        return [self.servers['http'].make_handler()]
+        return [self.servers['http'].make_handler(logger=self.worker.log,
+                                                  debug=self.worker.cfg.debug,
+                                                  keep_alive=self.worker.cfg.keepalive,
+                                                  access_log=self.worker.log.access_log,
+                                                  access_log_format=self.worker.cfg.access_log_format)]
+
 
     @asyncio.coroutine
     def start(self):

+ 1 - 1
frameworks/Python/API-Hour/hello/hello/endpoints/world.py

@@ -2,8 +2,8 @@ import logging
 import asyncio
 
 from aiohttp.web import Response
+from api_hour.plugins.aiohttp import JSON
 
-from ..utils import JSON
 from ..services import queries_number
 from ..services.world import get_random_record, get_random_records, update_random_records
 

+ 1 - 14
frameworks/Python/API-Hour/hello/hello/utils/__init__.py

@@ -1,16 +1,3 @@
 import logging
 
-from aiohttp.web import Response
-import ujson
-
-LOG = logging.getLogger(__name__)
-
-class JSON(Response):
-    """Serialize response to JSON"""
-
-    def __init__(self, json, status=200,
-                 reason=None, headers=None):
-        body = ujson.dumps(json).encode('utf-8')
-
-        super().__init__(body=body, status=status, reason=reason,
-                         headers=headers, content_type='application/json')
+LOG = logging.getLogger(__name__)

+ 1 - 1
frameworks/Python/API-Hour/setup.sh

@@ -1,3 +1,3 @@
 #!/bin/bash
 
-$PY3_API_HOUR -k api_hour.Worker hello:Container -c api_hour_conf.py &
+$PY3_API_HOUR -c api_hour_conf.py --chdir=hello/ --config_dir=hello/etc/hello/ hello:Container &