kestrel用java来利用

kestrel用的是scala,java无法直接使用。如想用java来运行kestrel,需要利用Xmemcached库。

创建queue_kestrel.java

# cd

# mkdir test

# export source_dir=~/test

# vi queue_kestrel.java

-----------------------------------------------------

import net.rubyeye.xmemcached.MemcachedClient;

import net.rubyeye.xmemcached.XMemcachedClientBuilder;

import net.rubyeye.xmemcached.command.KestrelCommandFactory;

import net.rubyeye.xmemcached.utils.AddrUtil;

public class queue_kestrel {

public static void main(String[] args) throws Exception {

XMemcachedClientBuilder builder=null;

MemcachedClient client=null;

int expirationTime=0;

String queueName="test";

String host="192.168.172.99";

String port = "22133";

builder=new XMemcachedClientBuilder(AddrUtil.getAddresses(host+":"+port));

builder.setCommandFactory(new KestrelCommandFactory());

try {

client=builder.build();

client.set(queueName,expirationTime,"hello");

String res=client.get(queueName);

System.out.println(res);

} catch (java.io.IOException e){}

}

}

----------------------------------------------------

准备必要的库。

xmemcached

# wget http://xmemcached.googlecode.com/files/xmemcached-1.3.7-bin-with-dependencies.tar.gz

# tar zxvf xmemcached-1.3.7-bin-with-dependencies.tar.gz

# cp xmemcached-1.3.7/xmemcached-1.3.7.jar xmemcached-1.3.7/lib/slf4j-api-1.5.7.jar $source_dir

slf4j

# wget http://www.slf4j.org/dist/slf4j-1.6.6.zip

# unzip slf4j-1.6.6.zip

# cp slf4j-1.6.6/slf4j-jdk14-1.6.6.jar $source_dir

kestrel

# cp /usr/local/kestrel/kestrel_2.9.1-2.2.0.jar $source_dir

运行

启动kestrel服务器。

# java -jar /usr/local/kestrel/kestrel_2.9.1-2.2.0.jar &

编译queue_kestrel.java并运行。

# cd $source_dir

# javac -cp ./xmemcached-1.3.7.jar:./slf4j-api-1.5.7.jar:./slf4j-jdk14-1.6.6.jar:./kestrel_2.9.1-2.2.0.jar: queue_kestrel.java

# java -cp ./xmemcached-1.3.7.jar:./slf4j-api-1.5.7.jar:./slf4j-jdk14-1.6.6.jar:./kestrel_2.9.1-2.2.0.jar: queue_kestrel

时间: 2024-08-06 20:21:58

kestrel用java来利用的相关文章

【Hibernate】Hibernate的在Eclipse+Mysql的配置、安装,纯Java,利用Annotation与HQL完成数据库的增删改查

这篇文章有很多槽点,在Hibernate4.x上面用着Hibernate3.x的写法去写.而且程序中放到Eclipse中会有一大堆警告,但是这好歹也在一定程度上完成了Hibernate的入门.毕竟现在很多介绍Hibernate的书籍都是用Hibernate3.x的写法去写.上次那篇<[Hibernate]最简单的Hibernate工程--账号注册系统>(点击打开链接)杂糅Struts的技术其实是不对的.因为Hibernate完成的是,从Java到数据库,从数据库到Java的任务.之后Java与

java中利用反射机制绕开编译器对泛型的类型限制

首先看下面这个例子 public static void main(String[] args) { ArrayList<Integer> al1 = new ArrayList<Integer>(); al1.add(1); ArrayList<String> al2 = new ArrayList<String>(); al2.add("hello"); //int型链表和string型链表,结果为true System.out.pr

Java中利用Optional处理字符串转数字问题

最近在利用JavaFx开发时,由于没有只能输入数字的控件,每次都要对用户输入的string进行转换,但是Java中利用Double.parseDouble()方法转换时如果转化失败就会抛出异常,每次都try,catch很繁琐,而我在业余学习Swift时发现Swift的Optional和 as?的配合就可以极其优雅的解决这个问题,转换成功则获得该值,失败则为nil(Java里的null),而Java8也引入了Optional类,于是自己试着封装了一下,代码如下: public class Stri

Java中利用MessageFormat对象实现类似C# string.Format方法格式化

我们在写C#代码的时候常常会使用到string.Format("待格式化字符串{0},{1},....",参数1,参数2,...),来格式化字符串,特别是拼接字符的时候,这种方式使得代码更为直观清楚. 最近使用java时候却java的string.Format与c#重点string.Format用法不一样,java中的string.format更类似于C语言的sprintf()方法 例如: String str=null; str=String.format("Hello,%

Excel导出学习之道:Java Web利用POI导出Excel简单例子

采用Spring mvc架构: Controller层代码如下 [java] view plaincopy @Controller public class StudentExportController{ @Autowired private StudentExportService studentExportService; @RequestMapping(value = "/excel/export") public void exportExcel(HttpServletReq

[Java][Js]利用Rhino在服务器端执行JavaScript

途牛网 5 月 9 日挂牌 5 月 9 日消息,据美国财经网站 iposcoop 网站报道,途牛旅游网将于今晚(5 月 9 日)在纳斯达克正式挂牌上市. 途牛网 4 月 4 日首次提交 IPO 招股书,最新版招股书显示,途牛网计划在纳斯达克上市,股票交易代码为"TOUR",发行价区间为每股美国存托股(ADS)9 美元至 11 美元,发行量最高 920 万股 ADS,最高融资额为 1.012 亿美元,销商为摩根士丹利国际.瑞信证券和华兴资本证券.OPPENHEIMER. 进入微软.亚马逊

Java在利用反射条件下替换英文字母中的值

(1)创建两个Class: ReflectTest类如下: package cn.itcast.day01; import java.lang.reflect.Constructor; import java.lang.reflect.Field; public class ReflectTest { public static void main(String[] args) throws Exception { changeStringValue(pt1); System.out.print

在JAVA中利用public static final的组合方式对常量进行标识

在JAVA中利用public static final的组合方式对常量进行标识(固定格式). 对于在构造方法中利用final进行赋值的时候,此时在构造之前系统设置的默认值相对于构造方法失效. 常量(这里的常量指的是实例常量:即成员变量)赋值: ①在初始化的时候通过显式声明赋值.Final int x=3: ②在构造的时候赋值. 局部变量可以随时赋值. 1 package TomText; 2 //利用if语句,判断某一年是否是闰年. 3 public class TomText_28 { 4 p

TreeMap和TreeSet即Java中利用二叉搜索树实现的Map和Set

一:概念二叉搜索树又称二叉排序树,它或者是一棵空树**,或者是具有以下性质的二叉树:若它的左子树不为空,则左子树上所有节点的值都小于根节点的值若它的右子树不为空,则右子树上所有节点的值都大于根节点的值它的左右子树也分别为二叉搜索树. 二:操作--查找先和根节点做对比,相等返回,如果不相等,关键码key>根节点key,在右子树中找(root=root.rightChild)关键码key<根节点key,在左子树中找(root=root.leftChild)否则返回false 三:操作--插入根据二