Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rhinouser0/riverpass
A handy local disk based cache for hot content from remote storage.
https://github.com/rhinouser0/riverpass
cache caching object-storage oss training-module
Last synced: 14 days ago
JSON representation
A handy local disk based cache for hot content from remote storage.
- Host: GitHub
- URL: https://github.com/rhinouser0/riverpass
- Owner: rhinouser0
- License: apache-2.0
- Created: 2023-02-17T13:55:19.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-08-04T13:39:57.000Z (11 months ago)
- Last Synced: 2024-06-22T17:03:59.788Z (19 days ago)
- Topics: cache, caching, object-storage, oss, training-module
- Language: Go
- Homepage:
- Size: 9.85 MB
- Stars: 15
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-stars - rhinouser0/riverpass - A handy local disk based cache for hot content from remote storage. (Go)
README
[简体中文](README_zh.md) | English
## Riverpass | [Documentation](docs/)
[![GitHub license](https://img.shields.io/badge/license-apache--2--Clause-brightgreen.svg)](./LICENSE)A handy file cache service
```bash
$ wget http://localhost:getFile?url=$YOUR_REMOTE_URL
```* Cache for hot content from remote cloud object storage(or public image)
* Extremely simple start and stop command, no heavy configuration
* Cache item persistence ability: previous items will be reloaded after server restart## Design
[Detailed design document](docs/original-design-doc.md)## Docker Image
* Download Program Image: [https://riverpass.oss-cn-shanghai.aliyuncs.com/images/oss.tar](https://riverpass.oss-cn-shanghai.aliyuncs.com/images/oss.tar).
* Download Database Config:[https://riverpass.oss-cn-shanghai.aliyuncs.com/images/data.tar](https://riverpass.oss-cn-shanghai.aliyuncs.com/images/data.tar)
* Load Images
```bash
docker load -i oss.tar
```
* Load database config in `server` folder
```bash
tar -xvf data.tar
```## HowTo
* How to use
* Enter `server` folder, run `./oss_docker_start.sh 100`, '100' means cache size 100MB. Cache data default flushes to server/localfs_oss/ folder.
* Use `wget ` command, replacing host path by localhost and cache port. eg.: `wget http://localhost:10009/getFile?url=https://raw.githubusercontent.com/open-mmlab/mmdeploy/master/resources/mmdeploy-logo.png`
* Run `./oss_docker_stop.sh` to stop the cache. Data will be left on disk.
* Run `./oss_docker_restart.sh` to restart the cache, data and their metadata will be loaded.
* How to build
* Enter `server/holder` folder, run `./oss_start.sh` to build the go program and start server for debug.
* [How to contribute](docs/how-to-contribute.zh.md)## Dependency
* MySQL 8.0
* Aliyun OSS SDK## Coming Soon
- CI and test coverage
- Stale metadata GC in DB
- OSS download optimization
- Object service from other cloud provider
- Cache eviction algorithm improvement## Contact Us
* Issue: [this link](https://github.com/rhinouser0/riverpass/issues)
* Email: [email protected]## License
- [Apache 2.0](LICENSE)