Skip to content

qimj/smf

 
 

Repository files navigation

smf is pronounced /smɝf/

Site Link
Mailing List https://groups.google.com/forum/#!forum/smf-dev
Documentation https://senior7515.github.io/smf/

Please visit our official documentation, it'll get you up and running in no time!

If you are using smf, drop us a line on the mailing list introducing your project.

Analytics

What is smf?

smf is a new RPC system and code generation like gRPC, Cap n Proto, Apache Thrift, etc, but designed for microsecond tail latency*.

Current benchmarks in microseconds

60 byte payload latency
p50 7us
p90 8us
p99 8us
p9999 15us
p100 26us

Getting started

Build Seastar

git clone https://github.com/scylladb/seastar.git
cd seastar
git submodule update --init --recursive

# --enable-dpdk to build w/ dpdk 
#
./configure 
ninja

Build smf

git clone https://github.com/senior7515/smf
cd smf
git submodule update --init --recursive
mkdir build
cd build
cmake -DSEASTAR_DIR=/path/to/seastar ..
make 

# to run test do 
ctest -V

Maintainers have a few handy scripts:

SEASTAR_DIR=/path/to/seastar ./release

# or

SEASTAR_DIR=/path/to/seastar ./debug

That's about it!

About

Fastest RPC in the west

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C++ 81.6%
  • CMake 8.9%
  • Python 6.1%
  • Shell 3.3%
  • Emacs Lisp 0.1%