Home / Class/ SslEngineEchoBenchmark Class — netty Architecture

SslEngineEchoBenchmark Class — netty Architecture

Architecture documentation for the SslEngineEchoBenchmark class in SslEngineEchoBenchmark.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  1187fa27_7dd2_e145_9c2f_09f427e6b4de["SslEngineEchoBenchmark"]
  6b679ab8_04b8_7380_5554_4dd938652230["SslEngineEchoBenchmark.java"]
  1187fa27_7dd2_e145_9c2f_09f427e6b4de -->|defined in| 6b679ab8_04b8_7380_5554_4dd938652230
  7245be2b_9fc5_5536_b580_933b8366f297["doSetup()"]
  1187fa27_7dd2_e145_9c2f_09f427e6b4de -->|method| 7245be2b_9fc5_5536_b580_933b8366f297
  e95d3abd_eec0_52f4_9217_172195f2bba1["doTearDown()"]
  1187fa27_7dd2_e145_9c2f_09f427e6b4de -->|method| e95d3abd_eec0_52f4_9217_172195f2bba1
  97aa0f94_dfcb_e8d3_bd1d_4250b0bc67ba["ByteBuffer()"]
  1187fa27_7dd2_e145_9c2f_09f427e6b4de -->|method| 97aa0f94_dfcb_e8d3_bd1d_4250b0bc67ba

Relationship Graph

Source Code

microbench/src/main/java/io/netty/microbench/handler/ssl/SslEngineEchoBenchmark.java lines 29–64

@State(Scope.Benchmark)
@Threads(1)
public class SslEngineEchoBenchmark extends AbstractSslEngineThroughputBenchmark {

    @Param({ "1", "2", "5", "10" })
    public int numWraps;
    private CleanableDirectBuffer cleanableUnwrapDstBuffer;
    private ByteBuffer unwrapDstBuffer;

    @Override
    protected void doSetup()  {
        cleanableUnwrapDstBuffer = allocateBuffer(serverEngine.getSession().getApplicationBufferSize() << 2);
        unwrapDstBuffer = cleanableUnwrapDstBuffer.buffer();
    }

    @Override
    protected void doTearDown() {
        cleanableUnwrapDstBuffer.clean();
    }

    @Benchmark
    public ByteBuffer wrapUnwrap() throws SSLException {
        ByteBuffer src = doWrap(numWraps);
        src.flip();

        unwrapDstBuffer.clear();

        SSLEngineResult unwrapResult;
        do {
            unwrapResult = serverEngine.unwrap(src, unwrapDstBuffer);
        } while (unwrapResult.getStatus() == SSLEngineResult.Status.OK && src.hasRemaining());

        assert checkSslEngineResult(unwrapResult, src, unwrapDstBuffer);
        return unwrapDstBuffer;
    }
}

Frequently Asked Questions

What is the SslEngineEchoBenchmark class?
SslEngineEchoBenchmark is a class in the netty codebase, defined in microbench/src/main/java/io/netty/microbench/handler/ssl/SslEngineEchoBenchmark.java.
Where is SslEngineEchoBenchmark defined?
SslEngineEchoBenchmark is defined in microbench/src/main/java/io/netty/microbench/handler/ssl/SslEngineEchoBenchmark.java at line 29.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free