THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
scp\rsync
commands can be used. The test environment showed us results – 270 MB/s
over the current 40 MB/s
single-threaded rebalance speed;FileChannel.transfertTo()
call is routed to the sendfile()
system call;Apache Ignite needs to support peer-2-peer cache partition file transfer using zero-copy algorithm based on extension of communication SPI.
...
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
/** */ private static final byte PIPE_DATA_TRANSFER_MASK = 0x01; /** * @return If socket will be used to transfer raw files. */ public boolean usePipeTransfer() { return (flags & PIPE_DATA_TRANSFER_MASK) != 0; } /** * @param usePipeTransfer {@code True} if socket should be used to transfer raw files. */ public final void usePipeTransfer(boolean usePipeTransfer) { flags = usePipeTransfer ? (byte)(flags | PIPE_DATA_TRANSFER_MASK) : (byte)(flags & ~PIPE_DATA_TRANSFER_MASK); } |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
/** * @return {@code True} if new type of direct connections supported. */ public default boolean pipeConnectionSupported() { return false; } /** * @param src Source cluster node to initiate connection with. * @return Channel to listen. * @throws IgniteSpiException If fails. */ public default ReadableByteChannel getRemotePipe(ClusterNode src) throws IgniteSpiException { throw new UnsupportedOperationException(); } /** * @param dest Destination cluster node to communicate with. * @param out Channel to write data. * @throws IgniteSpiException If fails. */ public default void sendOnPipe(ClusterNode dest, WritableByteChannel out) throws IgniteSpiException { throw new UnsupportedOperationException(); } |
...
...
...