Hi,

comment inline...


Le 17/01/2017 à 21:21, Antonio Rodriges a écrit :
> Hi,
>
> I have a very specific question. I am not sure whether this question
> is Mina-related or more Azure-related but it has to do with the
> networking.
>
> I hope to get an advice where to dig into.
>
> I have used this Mina application quite long, now I am trying to
> migrate it into the cloud.
> I deploy Linux virtual machines in Azure (each has public IP but does
> this really matter?).
> They connect (using Mina) to a machine outside Azure that also has its
> own public IP. Usual thing:
>
> SocketConnector connector = new NioSocketConnector(numberOfConnectors);
> ConnectFuture connectFuture = connector.connect(new
> InetSocketAddress(remoteHost, remotePort));
> connectFuture.awaitUninterruptibly(connectTimeout);
>
> That Mina machine outside the Azure also runs Mina. Let's call it
> server machine.
> It accepts connections like this:
>
> NioSocketAcceptor acceptor = new NioSocketAcceptor(acceptor_threads);
> org.apache.mina.core.buffer.IoBuffer.setUseDirectBuffer(false);
> acceptor.getSessionConfig().setTcpNoDelay(true);
> acceptor.setReuseAddress(true);
> acceptor.getSessionConfig().setSendBufferSize(buffer_size);
> acceptor.getSessionConfig().setMinReadBufferSize(64000);
> acceptor.getSessionConfig().setReceiveBufferSize(buffer_size);
> acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, iddle_time);
> acceptor.getFilterChain().addLast("codec", new
> ProtocolCodecFilter(CodecFactory.getInstance()));
> acceptor.setDefaultLocalAddress(new InetSocketAddress(port));
>
> When Azure applications connect to server machine, server saves
> IoSession session
> to asynchronously push messages back in future like this:
> session.write(message);
>
>
> This worked inside a local network (without Azure), but in current
> deployment server sends message
>
> 2017-01-17/15:45:19.823/GMT-00:00 [nioEventLoopGroup-3-3] [...] DEBUG
> Sending message to /13.94.143.139:41790
>
> and an Azure machine does not receive anything. Moreover, after a
> while I get this exception on server machine:
>
> 2017-01-17/16:01:11.419/GMT-00:00 [NioProcessor-4] [...] ERROR
> Exception in IOHandlerConnection timed out
> java.io.IOException: Connection timed out
>     at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
>     at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
>     at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
>     at sun.nio.ch.IOUtil.read(IOUtil.java:197)
>     at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
>     at 
> org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:280)
>     at 
> org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:44)
>     at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:695)
>     at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:668)
>     at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:657)
>     at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:68)
>     at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1141)
>     at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
>     at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>     at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>     at java.lang.Thread.run(Thread.java:745)
>
> 2017-01-17/16:01:11.424/GMT-00:00 [NioProcessor-3] [...] DEBUG sessionClosed
>
> I wonder what reasons may prevent traveling messages from server to
> client machines? (the first message from clients to server did come)
> I hope that above information may contain a clue.

It's clearly a rooting issue. MINA is certainly not the cause of your issue.

-- 
Emmanuel Lecharny

Symas.com
directory.apache.org

  • Azure and Mina Antonio Rodriges
    • Re: Azure and Mina Emmanuel Lécharny

Reply via email to