• Stars
    star
    171
  • Rank 221,398 (Top 5 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created almost 16 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

distributed, and persistent key-value storage

flare

flare is a distributed, and persistent key-value storage compatible with memcached, with several additional features (as follows):

  • persistent storage (you can use flare as persistent memcached)
  • pluggable storage
  • Tokyo Cabinet
  • Kyoto Cabinet (experimental)
  • data replication (synchronous or asynchronous)
  • data partitioning (automatically partitioned according to the number of master servers (transparent for clients)
  • dynamic reconstruction, and partitioning (you can dynamically (I mean, without any service interruption) add slave servers and partition master servers)
  • node monitoring and failover (if any server is down, the server is automatically isolated from active servers and another slave server is promoted to master server)
  • request proxy (you can always get same result regardless of servers you connect to, so you can think of a flare cluster as one big key-value storage)
  • over 256 bytes keys, and over 1M bytes values are available

flare is free software base on GNU GENERAL PUBLIC LICENSE Version 2.

Supported Operating Systems

flare is mainly developed under following platforms:

  • Debian GNU/Linux (etch or later, both i386 and amd64)
  • Mac OS X (Darwin 9.5.0, i386, amd64)
  • FreeBSD
  • other UNIX like OSs.

Dependent library

Run-time

Build-time

  • gcc
  • autoconf
  • automake
  • libtool

Install from source code on Ubuntu 14.04 (Trusty Tahr)

Installation of depending packages

First, install depending packages by apt-get.

$ sudo apt-get install \
	git \
	locales \
	zlib1g-dev \
	build-essential \
	autoconf \
	automake \
	libtool \
	libboost-all-dev \
	libhashkit-dev \
	libtokyocabinet-dev \
	uuid-dev

Installation of flare

Download source code, and compile it.

$ git clone https://github.com/gree/flare.git
$ cd flare
$ ./autogen.sh
$ ./configure
$ make
$ make check
$ sudo make install

If you want to optional packages, you should run ./configure with options.
You can see available options by ./configure --help.

For example (when use Kyoto Cabinet):

First, you must install libkyotocabinet-dev in addition to depending packages.

$ sudo apt-get install libkyotocabinet-dev

And run ./configure with --with-kyotocabinet option.

$ ./configure --with-kyotocabinet=/usr/include

Install flare via Nix on Ubuntu or MacOS

We experimentally support development with nix package manager.

Installation of flare

Just type following commands.

# Install nix package manager
$ curl -L https://nixos.org/nix/install | sh
# Install flare
$ nix profile install github:gree/flare

Development of flare via Nix

# Clone source code
$ git clone [email protected]:gree/flare.git

# Enter a development environment of nix
$ nix develop

# Build source codes
$ ./autogen.sh
$ ./configure
$ make
$ make test

Create configuration file

Copy default configuration files from etc, and modify it.

$ sudo cp etc/flarei.conf /etc/
$ sudo cp etc/flared.conf /etc/

Run

Now, you can run flare.

$ sudo /usr/local/bin/flarei -f /etc/flarei.conf --daemonize
$ sudo /usr/local/bin/flared -f /etc/flared.conf --daemonize

More Repositories

1

unity-webview

Objective-C++
2,229
star
2

lwf

LWF - Lightweight SWF
C++
622
star
3

Orion

PHP
126
star
4

observed

Observed is a scripting framework for Ruby which is inspired by reactive programming and flow-based programming. It is created to meet needs of today's scripts: reusability and extensibility, ability to deal with many data sources and destinations, reactiveness.
Ruby
89
star
5

pure2d

Pure2D Native Android Game Engine
Java
80
star
6

tesspathy

JS library for converting vector graphics paths into triangles for GL-like APIs
JavaScript
60
star
7

lwfs

LWFS - LWF conversion/preview system for designers/developers
Ruby
58
star
8

sf2synth.js

JavaScript
54
star
9

MuscleCompressor

C#
53
star
10

haskell-tutorial

52
star
11

patapata

Patapata is a framework built on Flutter for creating applications of production quality quickly and reliably. It provides a collection of best-practices built directly in to the various APIs so you can build apps that are consistent, stable, and performant.
Dart
47
star
12

futurama

A mysql backed priority queue for scheduling delayed events
Go
42
star
13

lwf-demo

C#
36
star
14

cascade

Cascade defines a lightweight, consistent interface for accessing databases in PHP
PHP
35
star
15

aurora

AuroraはI/OをシャーディングするためのJava/Scala向けライブラリです。
Java
32
star
16

haskell-jobqueue

Haskell
32
star
17

YoyaMagick

Most of the fixes in YoyaMagick have already been merged into ImageMagick-6.8.7-4. There is an unmerged bug fix targeting old AU devices, but it isn't a problem for newer devices.
C
30
star
18

smfplayer.js

JavaScript
29
star
19

unity-bitmapfontrenderer

C#
27
star
20

hubs-docs-jp

Japanese Translation from Mozilla Hubs.
26
star
21

MagicSpice

PHP
26
star
22

unity-systemfontrenderer

Objective-C
25
star
23

php-fuse

PHP FUSE extension
C
24
star
24

GreePlatformSDKCocos2dx

C++
23
star
25

php-dbus

PHP DBus extension
C
20
star
26

lwf-loader

lwf-loader provides many functions which support LWF usages in game development.
JavaScript
14
star
27

sysload

Python
12
star
28

subiam

Ruby
11
star
29

aws_ro

"Ruby Object" or "ReadOnly wrapper" of AWS SDK for Ruby
Ruby
9
star
30

haskell-test-sandbox

Haskell
8
star
31

GreeFastProcessor

C
8
star
32

gree.github.io

GREE's open source projects on GitHub
JavaScript
8
star
33

gcm3.shader.sample

2015/11/12開催のGCM#3にて紹介したシェーダのサンプルプロジェクトです
GLSL
8
star
34

awesome-creators

GREE Creators' Portfolio
HTML
8
star
35

fractaljs

JavaScript
8
star
36

superexporter

Extend memcached_exporter interface to support multiple remote target pattern
Go
8
star
37

UniUnitTest

UniUnitTest is a testing framework for Unity applications. UniUnitTest suppots the unit testing related to asynchronous communications.
C#
8
star
38

haskell-prefork

Haskell
6
star
39

flare-tools

This is a repository of flare-tools used for packaging.
Ruby
6
star
40

flare-tests

Flare system test suite
Haskell
6
star
41

smy

Ruby
5
star
42

Relay

JavaScript
5
star
43

pulse

JavaScript
3
star
44

master-slave-redis

PHP
3
star
45

smy-flappy-unity

C#
2
star
46

techconf2013

GREE Technology Conference 2013 - HTMLJavaScript Performance - Jason Parrott
JavaScript
2
star
47

memcache-haskell

Haskell
2
star
48

GREE-Platform-API-Client-for-php

1
star
49

smy-flappy-cocos2dx

C++
1
star
50

php-custom-environment-variables

PHP
1
star