NetClient
NetClient常常是用来与服务器进行TCP连接
Creating a Net Client
你只需要通过调用vertx的createNetClient方法就可以创建一个TCP客户端
NetClient client = vertx.createNetClient();
Making a Connection
然后调用connect方法就可以连接到服务器
NetClient client = vertx.createNetClient();client.connect(1234, "localhost", new AsyncResultHandler<NetSocket>() {public void handle(AsyncResult<NetSocket> asyncResult) {if (asyncResult.succeeded()) {log.info("We have connected! Socket is " + asyncResult.result());} else {asyncResult.cause().printStackTrace();}}});
connetc方法第一个参数是服务器的端口,第二个参数是服务器绑定的域名或者IP地址。第三个参数是一个connect handler,当连接建立成功之后,这个handler就会被调用
connect handler泛型参数是AsyncResult<NetSocket>,我们可以从这个对象的result()方法中获取NetSocket对象。你可以像在服务器端那样,在socket上进行读写数据。
当然你也可以像在服务器端那样执行close , set the closed handler, set the exception handler操作
Configuring Reconnection
NetClient可以被设置成自动重连或者当它无法连接到服务器/与服务器断开连接后进行断线重连。你可以通过调用setReconnectAttempts和setReconnectInterval方法来实现这样的功能
NetClient client = vertx.createNetClient();client.setReconnectAttempts(1000);client.setReconnectInterval(500);
ReconnectAttempts:该值设定重连服务器的次数。-1表示无限次。默认值是0ReconnectInterval:该值设定重连服务器的间隔。单位是毫秒。默认值是1000
NetClient Properties
NetClient也有一套TCP Properties,这套属性值的含义和NetServer一样,具体使用参考NetServer就好了。
