Bertlet, BERT-RPC in Eventlet
Bertlet is at version 0.2. Current features supported:
- BERT-RPC cast and call
- Preliminary informational berp support
- "Private" functions are not accessible; anything beginning with an underscore
- Protocol error handling
See Roadmap for upcoming features.
- ssl (either Python >= 2.6 or pyopenssl)
Bertlet is intended to be incredibly easy to use. BERT-RPC uses modules and
functions to expose functionality; Bertlet uses Python modules and functions
in the same manner. Creating a service with Bertlet is a two-step process:
create your modules and functions, then expose them with a
def bar(): return "Hello, world!"
Example server runner:
#!/usr/bin/env python from bertlet import serve import foo serve(foo, certfile="mycert.crt", keyfile="mycert.key")
It's that simple. Your BERT-RPC service is now running on 2133 with the
foo module exposing the
bar function. Note: this example also shows how
SSL is used.
This roadmap is subject to change. Just like your mom.
- Caching directives
- Streaming binary support
0.5 - ???
0.6 - ???
- Multiprocess support
- API stability for 1.0 release
- Full API documentation
- Full test coverage
- "Stable" release with full BERT-RPC 1.0 support
Bugs and Code Submissions
If you find a bug, please let me know! If you wish to contribute, please note that while I accept patches, it is possible that I will modify the changes before I integrate them into the trunk.
Bertlet is released under the MIT License. Please see the LICENSE file for the full text of the license.