cassandra自带例子portfolio安装调试问题

  前两天 装了个cassandra的服务端,cli下运行,建立keysapce,clomun family,再show 一切都正常。看似可以了,也就没有怎么在意它的配置,比如conf/cassandra.yaml文件。


   今天想利用它提供的一个客户端程序做一个简单的增删改操作。先不管具体的表关联怎么实现,先跑起来一个客户端demo吧。

    

     结果一上来就出现一个socket错误,这个肯定是没有连上服务端(虚拟机)里面的cassandra。

dos下ping ip,能通。不解其中原因,上网查了一下,有个外国网站上说如果想远程调用 conf/cassandra.yaml文件需要修改,

 具体的就是把listen_address: localhost改为本地ip.具体原因也没有说清楚。

改完果然ok.

  

   在去运行cassandra自带的例子,地址栏输入http://10.1.54.2:8983/portfolio/(注:10.1.54.2是装cassandra的机器,也就是我的虚拟机),

也报socket错误,内容和之前的一模一样,很可能是连接数据库问题、。很可能是demo中连接地址,写的是localhost.  。

  

      在下载的例子中找portfolio的源码,找不到,反编译,搜索。果然在com.datastax.demo.portfolio.controller.PortfolioMgrHandler中有一处localhost.

还有另一处PortfolioMgrHandler也出现一个localhost连接服务器的代码、

   

    很显然这个地方处理的不好,地址硬编码了,想修改地址很麻烦。

    不清楚为什么有两个包下出现.PortfolioMgrHandler类。这个明天继续看下————今天还要一些手头任务。

    第一想到的解决办法 就是反编译修改代码中的ip即"localhost"

  

    修改代码,改读取property文件中的配置。下面是编译写的文件,dos下javac,出现一大堆找不到类的错误。这个麻烦,好像需要在编译路径下添加java类库。

    想要eclipse帮我编译,可以根据提示导入相应包。可惜gui的错误率实在太高,错误多到没法去手动修改。

   

    哎。还是修改ip映射吧,即localhost和我的地址(10.1.54.2)对应起来,查了一下是在、etc/hosts里面修改。改完,http://10.1.54.2:8983/portfolio/可以出现数据。


  总结一下,为了跑通这个例子portfolio,前后走了不少弯路,也是在弯路中学到了很多东西,比如熟悉了linux系统内部文件,复习了java的编译,学习了cassandra的客户端



 





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值