- leo_gateway, LeoGateway is one of the core components of LeoFS. Main roles are described below.
- LeoFS's Gateway use Cowboy as Erlang's HTTP server.
- Able to speak Amazon S3 compatible REST API.
- Implemented a subset of Caching in HTTP(RFC2616).
LeoFS Gateway consists of the fast HTTP-Server - Cowboy, the API handler and the cache mecanism. It provides the REST-API and Amazon S3-API. You’re able to easily access LeoFS with S3-Clients such as s3cmd
, DragonDisk
, program languages - Erlang
, Java
, Ruby
, Python
, Go
and so on.
A client requests an object or a bucket operation to LeoFS Gateway then LeoFS Gateway requests the message of operation to a storage-node.
A destination storage node is decided by the routing-table. It is called RING which is generated and provided at LeoFS Manager and which is based on consistent-hashing.
Also, LeoFS Gateway provides built-in support for the object-cache mechanism in order to realize Keeping high performance and reduction of traffic between LeoFS Gateway and LeoFS Storage.
- The detail document is here.
leo_gateway
uses rebar build system. Makefile so that simply running "make" at the top level should work.leo_gateway
requires Erlang R16B03-1 or later.
LeoProject/LeoFS is sponsored by Rakuten, Inc. and supported by Rakuten Institute of Technology.