java在本地访问阿里云OCS

来源:互联网 发布:unity3d汉化补丁 编辑:程序博客网 时间:2024/05/29 05:09

今天开通了阿里的OCS服务,但是阿里的官方文档介绍说在ECS上装开发环境,调试OCS。因为访问OCS只能通过ECS内网访问。阿里的介绍如下:

第一步,登录已有的阿里云ECS服务器,在上面安装Java JDK和常用的IDE(比如Eclipse);(注意:只有在阿里云的ECS服务器上,才能通过内网访问OCS实例。所以,用家里或是公司的电脑直接执行下面的代码示例是看不到结果的)

阿里ocs论坛上也提供了一种解决方案,但是还是比较麻烦。
解决方案的大致示意图如下:
这里写图片描述
在本地调用阿里的OCS进行本地调试,下面是我们团队的具体解决方案:
1、下载putty。这个工具不用安装,也不用激活,而且大小特别小。(484 KB)
下载地址:http://download.csdn.net/download/zl544434558/9184159
2、下载后双击软件,执行如图所示的三个步骤,运行程序即可连接阿里云的OCS.具体截图如下:
双击软件出现如图所示:
这里写图片描述
这里写图片描述
画红色横线上分别填写ECS的用户名和密码
点击open后,会出现最后一张图,在画红色横线上分别填写ECS的用户名和密码。
3、以上三个配置完成后,运行下面的main方法即可。main方法依赖的一个jar包,下载地址如下:
下载spymemcached-2.8.4(Java)(大于2.8.1).jar

package com.evan.test;import java.io.IOException;import java.util.concurrent.ExecutionException;import net.spy.memcached.AddrUtil;import net.spy.memcached.ConnectionFactoryBuilder;import net.spy.memcached.ConnectionFactoryBuilder.Protocol;import net.spy.memcached.MemcachedClient;import net.spy.memcached.auth.AuthDescriptor;import net.spy.memcached.auth.PlainCallbackHandler;import net.spy.memcached.internal.OperationFuture;public class AliOCSDemo {    public static void main(String[] args) {        final String host = "127.0.0.1";// 本机地址        final String port = "8888"; //putty配置的端口号        final String username = "145ff695d4284fa4";// 控制台上的“访问账号“        final String password = "Ocsadmin201ddd";// 邮件或短信中提供的“密码”        MemcachedClient cache = null;        try {            AuthDescriptor ad = new AuthDescriptor(new String[] { "PLAIN" },                    new PlainCallbackHandler(username, password));            cache = new MemcachedClient(            new ConnectionFactoryBuilder().setProtocol(Protocol.BINARY)            .setAuthDescriptor(ad)            .build(),            AddrUtil.getAddresses(host + ":" + port));            System.out.println("OCS Sample Code");            // 向OCS中存一个key为"ocs"的数据,便于后面验证读取数据            OperationFuture future = cache.set("ocs", 6,                    " Open Cache Service,  from www.Aliyun.com");            // 向OCS中存若干个数据,随后可以在OCS控制台监控上看到统计信息            for (int i = 0; i < 100; i++) {                String key = "key-" + i;                String value = "value-" + i;                // 执行set操作,向缓存中存数据                cache.set(key, 1000, value);            }            System.out.println("Set操作完成!");            future.get(); // 确保之前(mc.set())操作已经结束            // 执行get操作,从缓存中读数据,读取key为"ocs"的数据            System.out.println("Get操作:" + cache.get("ocs"));        } catch (IOException e) {            e.printStackTrace();        } catch (InterruptedException e) {            e.printStackTrace();        } catch (ExecutionException e) {            e.printStackTrace();        }        if (cache != null) {            cache.shutdown();        }    }// eof}

main方法运行完成后,就出现调用阿里的OCS日志。截图如下:
这里写图片描述
注意:
1、上线时候记得把ip改成ocs的内网地址,把端口改为11211
2、用本地调试时,不要关闭putty的命令窗口。

0 0