Skip to content

leo-project/cherly

 
 

Repository files navigation

Cherly

Cherly (sher-lee) was originally developed by Cliff Moon for erlang to deal with in memory caching based on LRU. Its functionality and performance were awesome, but as time goes on, its implementation gradually obsoletes and it's hard to maintain. To overcome these problems, I forked and made Cherly improve with original purposes. Main improvements are described below.

  • Replaced the hash storing structure (originally used Judy hash) with the combination of Open addressing and Tree structure based on golang's hash implementation. This structure is very scalable and stable.

  • Implemented slab allocator on off-heap.

  • Replaced implemantations of port driver with NIFs.

  • Rebarized

Dependencies

  • Runtime
  • Erlang >= R14B
  • Check for C Unit tests

Installation

  • Install Check from package systems

    • deb

      sudo apt-get install check

    • rpm

      sudo yum install check

  • "Cherly" uses the "rebar" build system. Makefile so that simply running "make" at the top level should work.

  • "Cherly" requires Erlang R14B or later.

About

Cherly (sher-lee) is an in-VM caching library for Erlang.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 75.9%
  • Erlang 24.0%
  • C++ 0.1%