io.vertx.servicediscovery.rest.ServiceDiscoveryRestEndpoint Java Examples
The following examples show how to use
io.vertx.servicediscovery.rest.ServiceDiscoveryRestEndpoint.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: MonitorDashboardVerticle.java From vertx-blueprint-microservice with Apache License 2.0 | 5 votes |
@Override public void start() throws Exception { super.start(); Router router = Router.router(vertx); // create Dropwizard metrics service MetricsService service = MetricsService.create(vertx); // event bus bridge SockJSHandler sockJSHandler = SockJSHandler.create(vertx); BridgeOptions options = new BridgeOptions() .addOutboundPermitted(new PermittedOptions().setAddress("microservice.monitor.metrics")) .addOutboundPermitted(new PermittedOptions().setAddress("events.log")); sockJSHandler.bridge(options); router.route("/eventbus/*").handler(sockJSHandler); // discovery endpoint ServiceDiscoveryRestEndpoint.create(router, discovery); // static content router.route("/*").handler(StaticHandler.create()); int port = config().getInteger("monitor.http.port", 9100); String host = config().getString("monitor.http.host", "0.0.0.0"); int metricsInterval = config().getInteger("monitor.metrics.interval", 5000); vertx.createHttpServer() .requestHandler(router::accept) .listen(port, host); // send metrics message to the event bus vertx.setPeriodic(metricsInterval, t -> { JsonObject metrics = service.getMetricsSnapshot(vertx); vertx.eventBus().publish("microservice.monitor.metrics", metrics); }); }
Example #2
Source File: DashboardVerticle.java From microtrader with MIT License | 4 votes |
@Override public void start(Future<Void> future) { // Get configuration config = ConfigFactory.load(); discovery = ServiceDiscovery.create(vertx, new ServiceDiscoveryOptions().setBackendConfiguration(config())); Router router = Router.router(vertx); // Event bus bridge SockJSHandler sockJSHandler = SockJSHandler.create(vertx); BridgeOptions options = new BridgeOptions(); options .addOutboundPermitted(new PermittedOptions().setAddress(config.getString("market.address"))) .addOutboundPermitted(new PermittedOptions().setAddress(config.getString("portfolio.address"))) .addOutboundPermitted(new PermittedOptions().setAddress("service.portfolio")) .addInboundPermitted(new PermittedOptions().setAddress("service.portfolio")) .addOutboundPermitted(new PermittedOptions().setAddress("vertx.circuit-breaker")); sockJSHandler.bridge(options); router.route("/eventbus/*").handler(sockJSHandler); // Discovery endpoint ServiceDiscoveryRestEndpoint.create(router, discovery); // Last operations router.get("/operations").handler(this::callAuditServiceWithExceptionHandlerWithCircuitBreaker); // Static content router.route("/*").handler(StaticHandler.create()); // Create a circuit breaker. circuit = CircuitBreaker.create("http-audit-service", vertx, new CircuitBreakerOptions() .setMaxFailures(2) .setFallbackOnFailure(true) .setResetTimeout(2000) .setTimeout(1000)) .openHandler(v -> retrieveAuditService()); vertx.createHttpServer() .requestHandler(router::accept) .listen(config.getInt("http.port"), ar -> { if (ar.failed()) { future.fail(ar.cause()); } else { retrieveAuditService(); future.complete(); } }); }
Example #3
Source File: DashboardVerticle.java From vertx-microservices-workshop with Apache License 2.0 | 4 votes |
@Override public void start(Future<Void> future) { super.start(); Router router = Router.router(vertx); // Event bus bridge SockJSHandler sockJSHandler = SockJSHandler.create(vertx); BridgeOptions options = new BridgeOptions(); options .addOutboundPermitted(new PermittedOptions().setAddress("market")) .addOutboundPermitted(new PermittedOptions().setAddress("portfolio")) .addOutboundPermitted(new PermittedOptions().setAddress("service.portfolio")) .addInboundPermitted(new PermittedOptions().setAddress("service.portfolio")) .addOutboundPermitted(new PermittedOptions().setAddress("vertx.circuit-breaker")); sockJSHandler.bridge(options); router.route("/eventbus/*").handler(sockJSHandler); // Discovery endpoint ServiceDiscoveryRestEndpoint.create(router, discovery); // Last operations router.get("/operations").handler(this::callAuditServiceWithExceptionHandlerWithCircuitBreaker); // Static content router.route("/*").handler(StaticHandler.create()); // Create a circuit breaker. circuit = CircuitBreaker.create("http-audit-service", vertx, new CircuitBreakerOptions() .setMaxFailures(2) .setFallbackOnFailure(true) .setResetTimeout(2000) .setTimeout(1000)) .openHandler(v -> retrieveAuditService()); vertx.createHttpServer() .requestHandler(router::accept) .listen(8080, ar -> { if (ar.failed()) { future.fail(ar.cause()); } else { retrieveAuditService(); future.complete(); } }); }
Example #4
Source File: DashboardVerticle.java From vertx-microservices-workshop with Apache License 2.0 | 4 votes |
@Override public void start(Future<Void> future) { super.start(); Router router = Router.router(vertx); // Event bus bridge SockJSHandler sockJSHandler = SockJSHandler.create(vertx); BridgeOptions options = new BridgeOptions(); options .addOutboundPermitted(new PermittedOptions().setAddress("market")) .addOutboundPermitted(new PermittedOptions().setAddress("portfolio")) .addOutboundPermitted(new PermittedOptions().setAddress("service.portfolio")) .addInboundPermitted(new PermittedOptions().setAddress("service.portfolio")) .addOutboundPermitted(new PermittedOptions().setAddress("vertx.circuit-breaker")); sockJSHandler.bridge(options); router.route("/eventbus/*").handler(sockJSHandler); // Discovery endpoint ServiceDiscoveryRestEndpoint.create(router, discovery); // Last operations router.get("/operations").handler(this::callAuditService); // Static content router.route("/*").handler(StaticHandler.create()); // Create a circuit breaker. circuit = CircuitBreaker.create("http-audit-service", vertx, new CircuitBreakerOptions() .setMaxFailures(2) .setFallbackOnFailure(true) .setResetTimeout(2000) .setTimeout(1000)) .openHandler(v -> retrieveAuditService()); vertx.createHttpServer() .requestHandler(router::accept) .listen(8080, ar -> { if (ar.failed()) { future.fail(ar.cause()); } else { retrieveAuditService(); future.complete(); } }); }