A remote procedure call framework based on gevent