文档章节

Couchbase学习笔记(5)——服务器连接管理

IT特种兵
 IT特种兵
发布于 2015/03/18 17:47
字数 719
阅读 404
收藏 1

一、配置客户端

1、编程方式配置

通过ClientConfiguration对象以编程的方式配置

var config = new ClientConfiguration{
  Servers = new List<Uri>
  {
    new Uri("http://192.168.56.101:8091/pools"),
    new Uri("http://192.168.56.102:8091/pools"),
    new Uri("http://192.168.56.103:8091/pools"),
    new Uri("http://192.168.56.104:8091/pools"),
  },
  UseSsl = true,
  BucketConfigs = new Dictionary<string, BucketConfiguration>
  {
    {"default", new BucketConfiguration
    {
      BucketName = "default",
      UseSsl = false,
      Password = "",
      PoolConfiguration = new PoolConfiguration
      {
        MaxSize = 10,
        MinSize = 5
      }
    }}
  }}; 
using (var cluster = new Cluster(config)){
  IBucket bucket = null;
  try
  {
    bucket = cluster.OpenBucket();
    //use the bucket here    
  }
  finally
  {
    if (bucket != null)
    {
      cluster.CloseBucket(bucket);
    }
  }
}}

2、配置文件配置

用App.config 或者Web.config文件:

<?xml version="1.0" encoding="utf-8" ?><configuration>
  <configSections>
    <sectionGroup name="couchbaseClients">
      <section name="couchbase"
               type="Couchbase.Configuration.Client.Providers.CouchbaseClientSection, Couchbase.NetClient"/>
    </sectionGroup>
  </configSections>
  <couchbaseClients>
    <couchbase useSsl="false">
      <servers>
        <add uri="http://192.168.56.101:8091/pools"></add>
        <add uri="http://192.168.56.102:8091/pools"></add>
        <add uri="http://192.168.56.103:8091/pools"></add>
        <add uri="http://192.168.56.104:8091/pools"></add>
      </servers>
      <buckets>
        <add name="default" useSsl="false" password="">
          <connectionPool name="custom" maxSize="10" minSize="5"></connectionPool>
        </add>
      </buckets>
    </couchbase>
  </couchbaseClients>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1" />
    </startup></configuration>

与编程方式是一样的,只不过更方便而已~

使用时可以这样:

using (var cluster = new Cluster("couchbaseClients/couchbase"))
{
  using (var bucket = cluster.OpenBucket())
  {
    //use the bucket here  
  }
}

二、连接存贮桶

当你创建一个clientconfiguration后,你可以通过集群类 Cluster连接到集群的一个节点

var config = new ClientConfiguration
  {
    Servers = new List<Uri>
    {
      new Uri("http://192.168.56.101:8091/pools"),
      new Uri("http://192.168.56.102:8091/pools"),
      new Uri("http://192.168.56.103:8091/pools"),
      new Uri("http://192.168.56.104:8091/pools"),
    }
  };
using (var cluster = new Cluster(config))
  {
      using (var bucket = cluster.OpenBucket())
      {
          //use bucket here
      }
  }

就是这么简单~

三、关闭连接

使用完及时关闭连接是提高性能的一大招式,关闭也是这么的任性和简单

using (var cluster = new Cluster(config))
  {
      IBucket bucket = null;
      try
      {
          bucket = cluster.OpenBucket();
          //use the bucket here      }
      finally
      {
          if (bucket != null)
          {
              cluster.CloseBucket(bucket);
          }
      }
  }

四、配置SSL

Couchbase服务器的核心特征之一就是支持客户端和集群之间的传输数据加密。是通过安全套接字层(SSL)加密的。您可以使用SSL来保证您的应用程序和集群之间传输数据的安全。为了使用SSL,你需要安装一个从Couchbase服务器获得的SSL证书,然后配置客户端SSL证书。

获取并安装SSL证书:

1、打开Couchbase管理界面,单击Settings > Cluster,在打开的界面里边单击show按钮显示证书,复制证书内容并以扩展名.crt保存到你的应用服务器上面

2、当你拥有应用服务器证书后,你需要将它导入到本地计算机证书存储。在Windows中,您可以通过使用证书MMC管理单元,certlm。

3、在受信任的根证书节点下,用鼠标右键单击Certificates > Import

4、按照向导导入你存储在磁盘上的证书

配置客户端:

当在你的应用程序服务器上已经成功安装了SSL证书,为了启用客户端的SSL,你需要将clientconfigurationbucketconfiguration的属性UseSsl设为True。当然了,你也可以用配置文件来配置~

© 著作权归作者所有

共有 人打赏支持
IT特种兵
粉丝 19
博文 103
码字总数 136362
作品 0
长宁
高级程序员
私信 提问
Couchbase学习笔记(1)——概述

在移动互联网时代,我们面对的是更多的客户端,更低的请求延迟,这当然需要对数据做大量的 Cache 以提高读写速度。 术语 节点:指集群里的一台服务器。 现有 Cache 系统的特点 目前业界使用得...

IT特种兵
2015/03/02
0
6
Hyper-V安装笔记

Hyper-V安装笔记 一、 windows servers 2008 64bit 安装过程中:ibm 3650 m3 服务器必须在启动项中添加legacy only,并将其设置为第一启动项,方可。 二、 激活windows,必须连接网络,方可激...

xiaodong0708
2012/07/05
0
0
git文章列表

关于gitlab默认clone协议 Git实现从本地添加项目到远程仓库 翻翻git之---一个简单的标签控件 LabelView (随手发了两张小宝宝的玩耍照) Git 项目推荐 | Java 版微信普通号机器人 翻翻git之---...

d_watson
2016/04/20
26
0
ZooKeeper教程资源收集(简介/原理/示例/解决方案)

菩提树下的杨过: ZooKeeper 笔记(1) 安装部署及hello world ZooKeeper 笔记(2) 监听数据变化 ZooKeeper 笔记(3) 实战应用之【统一配置管理】 ZooKeeper 笔记(4) 实战应用之【消除单点故障】...

easonjim
2017/09/05
0
0
springboot微服务系列教程

微服务系列教程 Spring Boot 2是微服务的基础,在2018年3月初,Spring Boot 正式宣布进入2.0时代。下面一起来步入Spring Boot 2时代,领略Spring Boot 2带来的开发乐趣吧! 本系统源代码地址...

鱼煎
01/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

想问一下C++里queue要怎么遍历

如题,想知道怎么遍历<queue>对象的元素? 貌似不能遍历。要么全部pop push一遍,要么换个容器呗。 queue是先进后出的数据类型,只能不断读top()然后再pop()掉。故意把遍历操作隐藏掉了,...

shzwork
昨天
2
0
Ubuntu 18.04.2 LTS nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic)

平台:Ubuntu 18.04.2 LTS nvidia-docker2 版本:2.0.3 错误描述:在安装nvidia-docker2的时候报dpkg依赖错误 nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic) 先看一下依......

Pulsar-V
昨天
2
0
学习笔记1-goland结构体(struct)

写在前面:若有侵权,请发邮件by.su@qq.com告知。 转载者告知:如果本文被转载,但凡涉及到侵权相关事宜,转载者需负责。请知悉! 本文永久更新地址:https://my.oschina.net/bysu/blog/3036...

不最醉不龟归
昨天
3
0
【转】go get命令使用socket代理

由于某些不可描述的原因,国内使用go get命令安装某些包的时候会超时导致失败,比如net包、sys包、tools包等。第一种解决办法就是自己从git上下载后添加链接到GOPATH中,比如: 1234...

yiduwangkai
昨天
6
0
从上往下打印出二叉树的每个节点,同层节点从左至右打印。

//第一种做法 public class Solution { public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) { ArrayList <Integer> li=new ArrayList<Integer>(); ArrayList <TreeN......

南桥北木
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部