A-A+

数据结构服务器 KnuckleBall

2016年08月10日 Linux 软件 暂无评论 阅读 786 次

KnuckleBall是一款在内存中的数据结构服务器,它提供类似Smalltalk语法特性来创建和操作简单的数据类型,比如: booleans, characters, integers, floats,strings, 类似vectors的容器, 集合和字典。KnuckleBall也实现了单一线程和异步,所以能处理多连接、并发。KnuckleBall也可以用来做缓存或者消息代理服务器。

快速入门:

$ cd build
$ ./knuckleball --bind 127.0.0.1 --port 8001
$ ./knuckleball --help

采用远程客户端演示如何实例化和操作一个整数:

$ telnet 127.0.0.1 8001
Integer create: i withValue: 42;
> null
i add: 8;
> null
i get;
> 50

演示操作命名空间:

$ telnet 127.0.0.1 8001
Vector<Integer> create: mynamespace::points;
> null
mynamespace::points pushBack: 3;
> null
mynamespace::points pushBack: 7;
> null
mynamespace::points pushBack: 5;
> null
mynamespace::points popFront;
> 3
mynamespace::points get;
> [7,5]

演示操作字符串:

$ telnet 127.0.0.1 8001
Set<String> create: players;
> null
players add: "Babe Ruth";
> null
players add: "David Ortiz";
> null
players add: "Paulo Orlando";
> null
players contains? "Jake Arrieta";
> false
players get;
> {"Babe Ruth","David Ortiz","Paulo Orlando"}

演示操作字典:

$ telnet 127.0.0.1 8001
Dictionary<String, Float> create: ERAs;
> null
ERAs associateValue: 1.82 withKey: "Ed Walsh";
> null
ERAs associateValue: 2.21 withKey: "Mariano Rivera";
> null
ERAs associateValue: 2.39 withKey: "Clayton Kershaw";
> null
ERAs getValueForKey: "Mariano Rivera";
> 2.210
ERAs get;
> (("Clayton Kershaw",2.390),("Ed Walsh",1.820),("Mariano Rivera",2.210))
标签:

给我留言

Copyright © SEARU.ORG 保留所有权利.   Theme  Ality 网站地图 360网站安全检测平台

用户登录

分享到: