when i call remote instance in a local network, each remote method call (even checking a file exist) takes about 40 milliseconds to perform.
the result is very low performance of read and write and checking files in batch mode.
i solved the problem.
the problem is in RemoteMethodInvoker when writing to the socket, it doesn't use BufferdInputStream and BufferedOutputStream.
i wrapped the socket.getOutputStream in a BufferedOutputStream and the socket.getInputStream in a BufferedInputStream. and added a invokationBufferSize property to the class to indicate the size of that buffer.
the result was 40x increase in speed of calling remote methods.
the edited class RemoteMethodInvoker is attached.
sorry for poor english writing.