（以 Java 为例）

### 1、单连与多连

* 单连（单 server 地址）

```java
ClientSession session = SocketD.createClient("sd:ws://127.0.0.1:8602/?u=a&p=2").open();

//单连接返回的是 Session （有更多的功能接口）
```

* 多连（多 server 地址）

```java
ClientSession sessoin = SocketD.createClusterClient("sd:tcp://127.0.0.1:8602", 
                            "sd:tcp://127.0.0.1:8603", 
                            "sd:tcp://127.0.0.1:8604").open();
                            
//多连接返回的是 ClusterClientSession （有更多的功能接口）
```

ClientSession 接口，算是 Session 和 ClusterClientSession 的最小公约数。是缺失一些功能的。

### 2、单连转换

```java
Session session = (Session)SocketD.createClient("sd:ws://127.0.0.1:8602/?u=a&p=2").open();

//获取远程地址
session.remoteAddress();

//获取握手信息
session.handshake();

//获取获取属性
session.attr(name);
```

### 3、多连转换（集群）

```java
ClusterClientSession sessoin = (ClusterClientSession)SocketD.createClusterClient("sd:tcp://127.0.0.1:8602", 
                            "sd:tcp://127.0.0.1:8603", 
                            "sd:tcp://127.0.0.1:8604").open();
                            
//获取所有会话
session.getSessionAll()

//获取一个会话（轮询负栽均衡）
session.getSessionOne();

//单发
session.send(event, entity)
//广发
for(Sesson s1: session.getSessionAll()){
    s1.send(event, entity)
}
```

相对 ClientSession 接口，多了 `getSessionAll()` 和 `getSessionOne()`

