@Override
    public Mono<Void> handle(@NonNull final ServerWebExchange exchange) {
        try {
            before(exchange);
            Mono<Void> execute = new DefaultShenyuPluginChain(plugins).execute(exchange);
            if (scheduled) {
                return execute.subscribeOn(scheduler);
            }
            return execute;
        } finally {
            after(exchange);
        }
    }
@Test
    public void scheduledEnableTest() {
        final ServerWebExchange exchange = MockServerWebExchange.from(MockServerHttpRequest.get("localhost")
                .remoteAddress(new InetSocketAddress(8090))
                .build());
        ShenyuConfig shenyuConfig = new ShenyuConfig();
        shenyuConfig.getScheduler().setEnabled(true);
        ShenyuWebHandler shenyuWebHandler1 = new ShenyuWebHandler(listPlugins, shenyuLoaderService, shenyuConfig);
        Mono<Void> handle = shenyuWebHandler1.handle(exchange);
        assertNotNull(handle);
        shenyuConfig.getScheduler().setType("elastic");
        ShenyuWebHandler shenyuWebHandler2 = new ShenyuWebHandler(listPlugins, shenyuLoaderService, shenyuConfig);
        Mono<Void> handle2 = shenyuWebHandler2.handle(exchange);
        assertNotNull(handle2);
    }