blob: bbe4192ba76e734c1c5f0a0d18a93e527064b4d8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# Storehouse: Object storage HTTP server
Storehouse is a simple HTTP service to store text objects organized by buckets,
written in Go.
The service has two backends: one stores the objects in-memory, the other uses
files for persistence.
The in-memory backend features a proactive de-duplication mechanism that avoids
the creation of objects with duplicate content inside the same bucket.
## Building Storehouse
Simply run `make` or `go build` in the root directory.
## Usage
The options are displayed with -h/--help:
```
$ ./storehouse -h
Usage of ./storehouse:
-datadir string
The directory where the objects are stored with the file backend (default "data")
-memory
Memory backend with de-duplication (default: file backend w/o de-dup)
-port int
The port on which the server will listen for connections (default 8080)
```
## Potential improvements
* More and better tests, including integration and e2e tests.
* Implementation of the de-duplication mechanism for the file backend.
* Better logging, using a log package instead of printf.
* ...
|