http://fallabs.com/kyototycoon/spex.html
Table of Contents
- Introduction
- Installation
- Tutorial
- Tips and Hacks
- Protocol
- License
Introduction
Kyoto Tycoon is a lightweight database server with automatic expiration mechanism, which is useful to handle cache data and persistent data of various applications. Kyoto Tycoon is also a package of network interface to the DBM called Kyoto Cabinet. Although the DBM has high performance and high concurrency, you might bother in case that multiple processes share the same database, or remote processes access the database. Thus, Kyoto Tycoon is provided for concurrent and remote connections to Kyoto Cabinet. Kyoto Tycoon is composed of the server process managing multiple databases and its access library for client applications.
The server features high concurrency due to thread-pool modeled implementation and the epoll/kqueue mechanism of the modern Linux/*BSD kernel. It can handle more than 10 thousand connections at the same time. Because such system-specific features as epoll/kqueue are encapsulated and abstracted as the same interface, Kyoto Tycoon has high portability and works almost all UNIX-like systems and Windows.
The server provides hot backup so that you can make backup data without stopping the server while copying the database files. Update logging is also supported and it compensates for the difference between the contents of backup files and the current database. Moreover, the server implements asynchronous replication. A server sends update logs to other servers, which evaluate the logs immediately and keep their databases catching up to the master database.
The server and its clients communicate with each other by HTTP. So, you can write client applications and client libraries in almost all popular languages. Both of RESTful-style interface by the GET, HEAD, PUT, DELETE methods and RPC-style inteface by the POST method are supported. The RPC-style interface is based on the protocol called TSV-RPC. The entity bodies of the request and the response are text data formatted as tab-separated-values so that parsing them is very easy. In addition, several operations are available in an efficient binary protocol.
The server can embed Lua, a lightweight script language. Even if you cannot find any built-in operation matching your requirement among the client API of Kyoto Tycoon, you can define arbitrary operations by defining functions in Lua. The API for Lua scripts provides full set of database operations of Kyoto Cabinet including visitor, cursor, and transaction mechanisms.
The server can load a shared library file which implements a pluggable server mechanism. It can run arbitrary network services and operate database objects shared by the main server. It is useful to implement other network protocols. An implementation to support the memcached protocol is included in the source package. In a similar way, the server can load a shared library file which implements a pluggable database mechanism. It is useful to use other database libraries except for Kyoto Cabinet.
The server program of Kyoto Tycoon is written in the C++ language. It is available on platforms which have API conforming to C++03 with the TR1 library extensions. Kyoto Tycoon is a free software licensed under the GNU General Public License. You can write client applications which are not under control of our license, by making them just communicate with the server by HTTP without using the core library.
分享到:
相关推荐
Fundamental of Computer Graphics, 扫描版,经典书籍
《Fundamental Mechanics of Fluids》是美国大学广泛采用的一本流体力学经典教材,由G. Currie在多伦多大学撰写。这本书深入浅出地介绍了流体流动的基础理论,适用于机械工程、航空航天工程以及物理等相关专业的学生...
《fundamental of power electronics》被称为电力电子行业的圣经,值得一看。
Alpha Chiang 1984 Fundamental Methods of Mathematical Economics 3rd djvu
《Fundamentals of Power Electronics》(电力电子基础)一书是电力电子领域的经典著作,作者Robert W. Erickson和Dragan Maksimović详细介绍了电力电子的基础知识和应用。下面是本书的知识点总结: 一、电力电子...
Fundamental of wireless communications 非常不错的通信教材,主要是介绍MIMO,
根据提供的文件信息,本文将对自动化测试设备(Automated Test Equipment, ATE)的基本测试原理进行深入探讨。主要内容包括半导体测试介绍、项目计划与规范、直流参数测试、数字功能测试、交流参数测试、混合信号...
"Fundamental of speech recognition"(语音识别基础)是由Lawrence Rabiner 和 Biing-hwang Juang 编著的,它被认为是该领域的权威著作。 由于给定文件内容并没有提供《语音识别基础》的具体章节或内容,我们可以...
1. **电磁波理论**:无线通信的基础是电磁波的传播,包括频谱分配、波长与频率的关系、天线设计以及传播模型。这部分内容会帮助读者理解无线信号如何在空间中传播。 2. **信道编码与调制**:无线通信中的信号通常...
混合信号测试基础 混合信号测试(Mixed Signal Testing)指的是对混合了模拟信号和数字信号处理电路的设备进行测试。随着数字信号处理技术的发展,混合信号测试已成为一种更普遍的方法,它涉及到利用数字处理技术来...
- **表述**:库仑定律是描述静电力大小的定律,公式为 \(F = k\frac{q_1 q_2}{r^2}\),其中 \(F\) 是两个电荷之间的力,\(q_1\) 和 \(q_2\) 是两个电荷的电量,\(r\) 是两电荷之间的距离,\(k\) 是比例常数。...
1. **多普勒扩展与相干时间**:解释了多普勒效应如何影响信号的频率,并讨论了相干时间的概念。 2. **延迟扩展与相干带宽**:介绍了由于多径效应引起的信号延迟扩展现象,并定义了相干带宽这一重要参数。 #### 五、...
Examples of such fundamental concepts are the use of Boolean algebra to describe the signals and interconnections in a logic circuit, use of systematic techniques for simplification of a logic ...
电力电子基础知识涵盖了电力电子技术的基本概念、原理、设备和应用领域。电力电子技术是电子技术的一个重要分支,主要涉及到电能的高效转换和控制。在当今社会,电力电子技术广泛应用于工业、交通、通信和日常生活等...