void onConnection(const TcpConnectionPtr& conn){ LOG_INFO << "FileServer - " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if(conn->connected()){ LOG_INFO << "FileServer - Sending file " << g_file << " to " << conn->peerAddress().toIpPort(); conn->setHighWaterMarkCallback(onHighWaterMark, 64*1024); string fileContent = readFile(g_file); conn->send(fileContent); conn->shutdown(); LOG_INFO << "FileServer - done"; } }
void OnConnection(const TcpConnectionPtr& conn) { LOG_INFO << conn->localAddress().toIpPort() << " -> " << conn->peerAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if(conn->connected()) { m_connection = conn; if(g_aliveConnections.incrementAndGet() == g_connections) { LOG_INFO << "all connected"; } else { m_connection.reset(); if(g_aliveConnections.incrementAndGet() == g_connections) { LOG_INFO << "all disconnected"; g_loop->quit(); } } } }
void onConnection(const TcpConnectionPtr& conn){ LOG_INFO << conn->localAddress().toIpPort() << " -> " << conn->peerAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if(!conn->connected()) loop_->quit(); }
void Sender::onConnection(const TcpConnectionPtr& conn) { LOG_INFO << "EchoServer - " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); }
NAMESPACE_ZL_NET_START void defaultConnectionCallback(const TcpConnectionPtr& conn) { LOG_INFO("defaultConnectionCallback : [%s]<->[%s] [%s]\n", conn->localAddress().ipPort().c_str(), conn->peerAddress().ipPort().c_str(), conn->connected() ? "UP" : "DOWN"); }
void P2PServer::onConnection(const TcpConnectionPtr& conn) { cout << conn->localAddress().toIpPort() << " -> " << conn->peerAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN") << endl; }
/*************************************************** Description: 处理新的json连接或者连接断开情况 Input: conn:TCP连接 Output: 无 Return: 无 ***************************************************/ void TCPServer::onJsonConnection(const TcpConnectionPtr &conn) { LOG_DEBUG <<"JSONConnection: " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if(!conn->connected()) jsonCodec_.cleanup(conn); }
void onConnection(const TcpConnectionPtr& conn) { LOG_TRACE << conn->peerAddress().toString() << " -> " << conn->localAddress().toString() << " is " << (conn->connected() ? "UP" : "DOWN"); LOG_INFO << conn->getTcpInfoString(); // conn->send("hello\n"); }
std::vector<std::string> *tcp_server::connectedAddresses() { mConnectedAddresses.clear(); for (TcpServer::ConnectionMap::iterator it(server_.connections_.begin()); it != server_.connections_.end(); ++it) { TcpConnectionPtr conn = it->second; mConnectedAddresses.push_back(conn->peerAddress().toIp()); } return &mConnectedAddresses; }
/*************************************************** Description: 处理新的TCP连接或断开 Input: 无 Output: 无 Return: 无 ***************************************************/ void TCPServer::onServerConnection(const TcpConnectionPtr& conn) { conn->setTcpNoDelay(true); LOG_INFO << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if(!conn->connected()) { clearConnectionInfo(conn); } }
void ZGWServer::onClientConnection(const TcpConnectionPtr& conn) { LOG_INFO << "Client " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if( conn->connected() ) { int id = -1; if( !idQueue_.empty() ) { id = idQueue_.front(); idQueue_.pop(); id2conn_[id] = conn; } if( -1 == id ) { LOG_ERROR << "[过载保护]系统到达最大连接数,拒绝连接"; conn->shutdown(); } else { conn->setContext(id); LOG_INFO << "新连接[" << conn->peerAddress().toIpPort() << "]流水ID: " << id; } } else { if(!conn->getContext().empty()) { int id = boost::any_cast<int>(conn->getContext()); assert(id > 0 && id <= static_cast<int>(kMaxConns)); // 回收连接的key idQueue_.push(id); id2conn_.erase(id); } } }
void serverConnectionCallback(const TcpConnectionPtr& conn) { LOG_TRACE << conn->name() << " " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if (conn->connected()) { conn->setTcpNoDelay(true); } else { } }
void onConnection(const TcpConnectionPtr& conn) { cout << conn->peerAddress().ipPort() << " -> " << conn->localAddress().ipPort() << " is " << (conn->connected() ? "UP" : "DOWN") << "\n"; clientConnection = conn; if (conn->connected()) { //conn->setNoDelay(true); } else { //clientConnection.reset(); } }
void clientConnectionCallback(const TcpConnectionPtr& conn) { LOG_TRACE << conn->localAddress().toIpPort() << " -> " << conn->peerAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if (conn->connected()) { clientConnection = conn; conn->setTcpNoDelay(true); } else { clientConnection.reset(); } }
void MyTcpClient::onConnection(const TcpConnectionPtr& conn) { LOG_INFO << conn->localAddress().toIpPort() << " -> " << conn->peerAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); MutexLockGuard lock(mutex_); if (conn->connected()) { connection_ = conn; } else { connection_.reset(); } }
void onConnection(const TcpConnectionPtr& conn) { LOG_TRACE << conn->localAddress().toIpPort() << " -> " << conn->peerAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if (conn->connected()) { conn->setTcpNoDelay(true); conn->send(message_); } else { loop_->quit(); } }
void EchoServer::onConnection(const TcpConnectionPtr& conn){ LOG_INFO << "EchoServer - " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if(conn->connected()){ ++numConnected_; if(numConnected_ > kMaxConnections_){ conn->shutdown(); conn->forceCloseWithDelay(3.0); // > round trip of the whole Internet. } }else{ --numConnected_; } LOG_INFO << "numConnected = " << numConnected_; }
//新连接或断开时的回调 void onConnection(const TcpConnectionPtr &conn) { LOG_INFO <<conn->localAddress().toIpPort() << "->" <<conn->peerAddress().toIpPort() << "is" <<(conn->connected() ? "UP" : "DOWN"); if(conn->connected()) { //插入到用户集合中 connections_.insert(conn); } else { //从集合中删除用户 connections_.erase(conn); } }
void onConnection(const TcpConnectionPtr& conn) { if (conn->connected()) { printf("onConnection(): tid=%d new connection [%s] from %s\n", CurrentThread::tid(), conn->name().c_str(), conn->peerAddress().toIpPort().c_str()); conn->send(message); //一连接就发送 } else { printf("onConnection(): tid=%d connection [%s] is down\n", CurrentThread::tid(), conn->name().c_str()); } }
void ProxyServer::onClientConnection(const TcpConnectionPtr& conn) { LOG_TRACE << "Client " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "online" : "offline"); std::string connname(conn->name().c_str()); if(conn->connected()) { m_conns[connname] = conn; // m_redis.command(boost::bind(&ProxyServer::onRedisGetResult,this,_1,_2),"BRPOP test 0"); } else { LOG_INFO << "connname offline " << connname; m_conns.erase(connname); } }
void BaseSvr::onMessage(const TcpConnectionPtr& conn, Buffer* buf) { LOG_INFO << "accept msg from <" << conn->name() << ">"; string request(buf->peek(), buf->beginWrite()); LOG_INFO << "received msg from client<" << conn->peerAddress().IpAndPort() << "> : <" << request << ">"; conn->send(request); size_t len = 0; while((len = buf->readableBytes()) > 1) { // 本消息包除头部外剩余部分的长度 size_t packetLen = endian::networkToHost16(buf->peekInt16()); if(packetLen > len) {///< 缓冲区剩余空间反而大于消息包长度了 > conn->send("peek msg fail: packetLen > len of buffer\r\n"); conn->shutdown(); break; } if(false == protobufapi::checksum(buf->peek() + HEADER_LENGTH, packetLen)) {///< 校验结果不匹配 > conn->send("server check sum error. your msg is discard"); conn->shutdown(); break; } Buffer *pMsg = new Buffer(); pMsg->retrieveAll(); pMsg->append(buf->peek() + sizeof int16_t, sizeof int16_t + packetLen - TAIL_LENGTH); m_msgQueue.put(pMsg); buf->retrieve(packetLen + HEADER_LENGTH); } }
/* * private functions * */ void tcp_server::onConnection(const TcpConnectionPtr& conn) { LOG_DEBUG << "tcp_server - " << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); if (conn->connected()) { ++numConnected_; if (numConnected_ > kMaxConnections_) { conn->shutdown(); } else { conn->setTcpNoDelay(true); } } else { --numConnected_; } LOG_DEBUG << "numConnected = " << numConnected_; }
void BaseSvr::onAcceptConnection(const TcpConnectionPtr& conn) { LOG_TRACE << "onAcceptConnection" << conn->peerAddress().IpAndPort() << " -> " << conn->localAddress().IpAndPort() << " is " << (conn->connected() ? "UP" : "DOWN"); }
void OnConnection(const TcpConnectionPtr& conn) { LOG_TRACE << conn->peerAddress().toIpPort() << " -> " << conn->localAddress().toIpPort() << " is " << (conn->connected() ? "UP" : "DOWN"); }