Skip to content

pomerium/autocache

Repository files navigation

Build codecov Go Report Card Go Reference LICENSE discuss

Autocache

Autocache pairs groupcache with memberlist for distributed peer discovery.

Note: This project is experimental, not intended for production use, and may be archived in the future.

Quick start

See _example/ for usage.

Run

docker-compose -f _example/docker-compose.yaml up --scale autocache=5

Client

for i in `seq 10`; do curl "http://autocache.localhost/get/?key=hunter2"; echo; done

Server

autocache_2  | 2020/01/06 06:10:51 bcryptKey/key:"hunter2"      time:969.8645ms
autocache_2  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[969.9474ms]
autocache_1  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[1.3559ms]
autocache_3  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[1.1236ms]
autocache_4  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[1.2935ms]
autocache_5  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[985.2µs]
autocache_6  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[1.2163ms]
autocache_2  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[23.3µs]
autocache_1  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[495.3µs]
autocache_3  | 2020/01/06 06:10:51 cacheHandler: group[bcrypt]  key["hunter2"]  time[497.3µs]
autocache_4  | 2020/01/06 06:10:52 cacheHandler: group[bcrypt]  key["hunter2"]  time[770.5µs]

License

Autocache is licensed under the Apache 2.0 License.

About

Distributed cache with gossip peer membership enrollment.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7