LinkedIn Sourceforge

Vincent's Blog

Pleasure in the job puts perfection in the work (Aristote)

In the series of Fast Asynchronous Python web servers

Posted on 2019-06-15 08:22:00 from Vincent in OpenBSD fapws

As already discussed on this blog, I'm a user of Fapws3 since several years. I like his small foot print in memory, simplicity to use in Python. But it runs only with Python-2.x and cannot manage correctly POST commands with big files.

So, I've decided to jump into the C programming language and develop Fapws4. An evolution of Fapws3, that do not have those pain points.

In this blog, I will show you first results of Fapws4


Introduction

This is a small blog about Fapws4. I'll present Fapws4 in the next days; explaining the how, what, why, ...

I've call it Fapws4, because it is compliant with the basic principles of Fapws3: small memory foot print, fast, asynchronous and compliant with wsgi. Nevertheless, it's a kind of evolution since it is based on Python-3.x. It use libuv instead of libev

Fapws4 is still in the early stages of development, but I cannot resist to share the results I already have with it.

I'm developing it since several weeks, but It can already manage several features:

  • fast
  • light
  • wsgi compliant

Here after a comparison of both, fapws3 and Fapws4 running on my Dell laptop on OpenBSD 6.5:

Memory Comparison

USER       PID %CPU %MEM   VSZ   RSS TT  STAT  STARTED       TIME COMMAND
vi       41745  0.0  0.1  7136 11636 p3  I+    Thu08PM    0:03.55 fapws4 hello.py
vi       64982  0.0  0.2  6012 12724 p5  I+    Thu08PM    0:04.77 python2 hello_world.py

Speed comparison


Stay tuned :-)



33, 31
displayed: 6396



What is the first vowel of the word Python?