add set no delay

This commit is contained in:
Y. T. Chung
2015-06-19 15:53:10 +08:00
parent 56f77e6dcd
commit 271e24d146
3 changed files with 20 additions and 4 deletions
+2 -2
View File
@@ -220,7 +220,7 @@ impl Config {
Some(t) => Some(try!(t.as_u64()
.ok_or(Error::new(ErrorKind::Malformed,
"`timeout` should be an integer",
None))) as u32 * 1000),
None))) as u32),
None => None,
},
dns_cache_capacity: match server.find("dns_cache_capacity") {
@@ -285,7 +285,7 @@ impl Config {
Some(t) => Some(try!(t.as_u64()
.ok_or(Error::new(ErrorKind::Malformed,
"`timeout` should be an integer",
None))) as u32 * 1000),
None))) as u32),
None => None,
},
dns_cache_capacity: match o.get("dns_cache_capacity") {
+9 -1
View File
@@ -322,7 +322,15 @@ impl Relay for TcpRelayLocal {
continue;
}
};
let _ = stream.set_keepalive(self.config.timeout);
if let Err(err) = stream.set_keepalive(self.config.timeout) {
error!("Failed to set keep alive: {:?}", err);
continue;
}
if let Err(err) = stream.set_nodelay(true) {
error!("Failed to set no delay: {:?}", err);
continue;
}
let mut succeed = false;
for _ in 0..server_load_balancer.total() {
+9 -1
View File
@@ -70,7 +70,15 @@ impl TcpRelayServer {
}
};
let _ = stream.set_keepalive(timeout);
if let Err(err) = stream.set_keepalive(timeout) {
error!("Failed to set keep alive: {:?}", err);
continue;
}
if let Err(err) = stream.set_nodelay(true) {
error!("Failed to set no delay: {:?}", err);
continue;
}
let pwd = pwd.clone();
let encrypt_method = method;