ledisdb/index.html

267 lines
8.4 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<link rel="icon" href="favicon.ico">
<title>LedisDB</title>
<!-- Bootstrap core CSS -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/font-awesome.min.css" rel="stylesheet">
<link rel="stylesheet" href="css/github.css">
<!-- Custom styles for this template -->
<link href="css/style.css" rel="stylesheet">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="container">
<div class="header">
<ul class="nav nav-pills pull-right" role="tablist">
<li role="presentation"><a href="/">Home</a></li>
<li role="presentation"><a href="/news.html">News</a></li>
<li role="presentation"><a href="/contact.html">Contact</a></li>
</ul>
<a class="logo" href="/"><img src="/img/logo.png" alt="LedisDB"></a>
</div>
<div class="jumbotron">
<h1>LedisDB</h1>
<p class="lead">A high performance NoSQL like Redis based on LevelDB implemented by Golang.</p>
<p><a class="btn btn-lg btn-ledis" target="_blank" href="https://github.com/siddontang/ledisdb" role="button">
<i class="glyphicon glyphicon-eye-open"></i>
View on GitHub</a></p>
</div>
<div class="row features" id="features">
<div class="col-lg-6">
<h3 class="">Data Structure</h3>
<p>Rich advanced data structure: KV, List, Hash, ZSet, Bitmap.</p>
<h3>LevelDB Rocks</h3>
<p>Uses leveldb to store massive data, disk-based storage, over the memory limit.</p>
<h3>Expiration & TTL</h3>
<p>Supports expiration and ttl in all kinds of data structures.</p>
<h3>CLI Support</h3>
<p>Redis clients, like redis-cli, are supported directly.</p>
</div>
<div class="col-lg-6">
<h3>Multi-Clients </h3>
<p>Multiple clients API supports, including Golang, Python, Lua(Openresty).</p>
<h3>Easy Embedding</h3>
<p>Easy to embed in Golang application.</p>
<h3>Data Protection</h3>
<p>Replication to guarantee data safety.</p>
<h3>Useful Tools</h3>
<p>Supplies tools to load, dump, and repair database.</p>
</div>
</div>
<div class="row examples" id="examples">
<h2>Examples</h2>
<pre><code class="Bash">
./ledis-server -config=/etc/ledis.json
//another shell
ledis-cli -p 6380
ledis 127.0.0.1:6380&gt; set a 1
OK
ledis 127.0.0.1:6380&gt; get a
"1"
</code></pre>
<h2>Lib Example</h2>
<pre><code class="Bash">
import "github.com/siddontang/ledisdb/ledis"
l, _ := ledis.Open(cfg)
db, _ := l.Select(0)
db.Set(key, value)
db.Get(key)
</code></pre>
</div>
<!-- /benchmark-->
<div class="row benchmark" id="benchmark">
<h2>Benchmark</h2>
<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
<table class="hide" id="datatable">
<thead>
<tr>
<th></th>
<th>Redis</th>
<th>SSDB</th>
<th>LedisDB</th>
</tr>
</thead>
<tbody>
<tr>
<th>SET</th>
<td>42735.04</td>
<td>35971.22</td>
<td>38759.69</td>
</tr>
<tr>
<th>GET</th>
<td>45871.56</td>
<td>47393.37</td>
<td>40160.64</td>
</tr>
<tr>
<th>INCR</th>
<td>45248.87</td>
<td>36630.04</td>
<td>36101.08</td>
</tr>
<tr>
<th>LPUSH</th>
<td>45045.04</td>
<td>37174.72</td>
<td>33003.30</td>
</tr>
<tr>
<th>LPOP</th>
<td>43103.45</td>
<td>38167.94</td>
<td>27624.31</td>
</tr>
<tr>
<th>LPUSH-lrange</th>
<td>44843.05</td>
<td>37593.98</td>
<td>32894.74</td>
</tr>
<tr>
<th>LRANGE_100</th>
<td>14727.54</td>
<td>905.55</td>
<td>7352.94</td>
</tr>
<tr>
<th>LRANGE_300</th>
<td>6915.63</td>
<td>327.78</td>
<td>2867.79</td>
</tr>
<tr>
<th>LRANGE_500</th>
<td>5042.86</td>
<td>222.36</td>
<td>1778.41</td>
</tr>
<tr>
<th>LRANGE_600</th>
<td>3960.40</td>
<td>165.30</td>
<td>1590.33</td>
</tr>
<tr>
<th>MSET</th>
<td>33003.30</td>
<td>33112.59</td>
<td>21881.84</td>
</tr>
</tbody>
</table>
<br>
<p>For more information, please take a look at <a href="https://github.com/siddontang/ledisdb/wiki/Benchmark"><em>benchmark.md</em></a>.</p>
</div>
<div id="footer-wrapper" class="gradient">
<div id="footer" class="row">
<div class="large-4 columns col-sm-4">
<h2 id="contribute" >Get Involved</h2>
<ul class="underline-link">
<li><a target="_blank" href="https://github.com/siddontang/ledisdb/issues?state=open">Issue Tracker</a></li>
<li><a target="_blank" href="https://github.com/siddontang/ledisdb/issues?labels=todo&page=1&state=open">Todo</a></li>
</ul>
</div>
<div class="large-4 columns col-sm-4">
<h2>Quick Links</h2>
<ul class="underline-link">
<li><a target="_blank" href="https://github.com/siddontang/ledisdb/wiki">Wiki</a></li>
<li><a target="_blank" href="http://ledis-py.readthedocs.org/">Ledis-py</a></li>
<li><a target="_blank" href="https://godoc.org/github.com/siddontang/ledisdb">Godoc</a></li>
<li><a target="_blank" href="http://blog.csdn.net/siddontang/article/category/2264003">Author's Chinese Blog</a></li>
</ul>
</div>
</div>
<div id="about" class="about">
<div class="foot">
<p>LedisDB was created and maintained by <a class="underline-link" href="https://github.com/siddontang">SiddonTang</a>.
<a class="underline-link" href="https://github.com/siddontang/ledisdb/blob/master/LICENSE">MIT License</a>.</p>
</div>
</div>
</div>
</div> <!-- /container -->
<script src="js/jquery-1.11.1.min.js"></script>
<script src="js/highlight.pack.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/data.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
<script>
$(function () {
Highcharts.setOptions({
colors: ['#df4810', '#3d4c4e', '#45a797']
});
$('#container').highcharts({
data: {
table: document.getElementById('datatable')
},
chart: {
type: 'column'
},
title: {
text: 'Redis vs SSDB vs LedisDB'
},
yAxis: {
allowDecimals: false,
title: {
text: 'Units'
}
},
tooltip: {
formatter: function() {
return '<b>'+ this.series.name +'</b><br/>'+
this.point.y +' '+ this.point.name.toLowerCase();
}
}
});
});
</script>
</body>
</html>