Metadata-Version: 2.1
Name: mrhttp
Version: 0.13
Summary: A python web framework written in C
Home-page: http://github.com/MarkReedZ/mrhttp/
Author: Mark Reed
Author-email: markreed99@gmail.com
License: MIT
Keywords: web,asyncio
Platform: x86_64 Linux and MacOS X
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: Environment :: Web Environment
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: C
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Internet :: WWW/HTTP
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: uvloop >0.9.0

# Mrhttp
Async Python 3.5+ web server written in C

# Benchmarks

```
  Pipelined
    Hello (cached)  8,534,332 Requests/second
    Hello           6,834,994 Requests/second
    More hdrs       6,193,307 Requests/second
    Sessions        4,396,364 Requests/second
    File Upload     3,510,289 Requests/second
    mrpacker        2,052,674 Requests/second
    Form            1,182,228 Requests/second

  One by one
    Hello           707,667 Requests/second
    Hello hdrs      728,639 Requests/second
    Cookies         588,212 Requests/second
    many args       691,910 Requests/second
    404 natural     763,643 Requests/second
    404             580,424 Requests/second
    Form parsing    338,553 Requests/second
    mrpacker        533,242 Requests/second
    Sessions        325,354 Requests/second
    File Upload     292,331 Requests/second
    get ip          503,454 Requests/second
    
```

Versus sanic a pure python async server

```
Hello World       22,366 Requests/second
Cookies           20,867 Requests/second
404                8,256 Requests/second
forms             11,104 Requests/second
sessions           4,053 Requests/second
File upload        1,457 Requests/second
```

Hello World Example
-------------------

```python

import mrhttp

app = mrhttp.Application()

@app.route('/')
def hello(r):
  return 'Hello World!'

app.run(cores=2)

```

Installation
------------

```
sudo apt install python3-dev -y
pip3 install mrhttp
```

Building from source

```
pip install .
```

