2013-01-07 26 views
0

我設置了一個服務器,通過端口xxx接收消息,但我想響應端口yyy。 有沒有簡單的方法來實現這一目標?米娜服務器響應端口不同於端口傳入消息

我的服務器:

IoAcceptor acceptor = new NioSocketAcceptor(); 

    acceptor.setHandler(new MessageHandler()); 
    acceptor.getFilterChain().addLast("logger", new LoggingFilter()); 

    acceptor.getFilterChain().addLast("codec", new protocolCodecFilter(codecFactory)); 
    acceptor.getSessionConfig().setReadBufferSize(bufferSize); 
    acceptor.bind(new InetSocketAddress(port)); 

我的編碼器的編碼方法:

public void encode(IoSession session, Object message, ProtocolEncoderOutput out) throws Exception { 
    byte[] writeBytes = (byte[]) message;  
    IoBuffer buffer = IoBuffer.allocate(writeBytes.length).setAutoExpand(false); 
    buffer.put(writeBytes); 
    buffer.flip(); 
    out.write(buffer);  
    writeMessage(session,writeBytes); 
} 

的msessage應寫入不同的端口。我如何實現這一目標?

回答

0

如果要使用不同的TCP端口響應消息,則必須首先創建另一個其他TCP連接,這意味着您有兩臺服務器和兩臺客戶機。

 request 

CLIENT 1 ----------> server1的

 reponse 

服務器2 ---------->客戶端2

相關問題