私の連絡先情報
郵便メール:
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
大規模システムのマイクロサービス構築では、システムが多数のモジュールに分割されます。これらのモジュールはさまざまな機能を担当し、最終的に豊富な機能を提供できるシステムに結合されます。このアーキテクチャでは、リクエストに複数のサービスが関与することがよくあります。インターネット アプリケーションは、さまざまなソフトウェア モジュールのセットに基づいて構築されており、これらのソフトウェア モジュールはさまざまなチームによって開発され、さまざまなプログラミング言語を使用して実装され、複数の異なるデータ センターにわたる数千のサーバーに分散される可能性があります。このアーキテクチャ形式にはいくつかの問題があります。
[api-gateway、3977125f73391553、3977125f73391553、偽][サービスオーダー,3977125f73391553,57547b5bf71f8242,false][サービス製品、3977125f73391553、449f5b3f3ef8d5c5、偽]
- <!--链路追踪 Sleuth-->
- <dependency>
- <groupId>org.springframework.cloud</groupId>
- <artifactId>spring-cloud-starter-sleuth</artifactId>
- </dependency>
https://search.maven.org/remote_content?g=io.zipkin.java&a=zipkin-server&v=LATEST&c=exec
上記の URL にアクセスして、瓶バッグ、これですジップキンサーバ側瓶バッグ
java -jar zipkin-server-2.12.9-exec.jar
- <!--zipkin-->
- <dependency>
- <groupId>org.springframework.cloud</groupId>
- <artifactId>spring-cloud-starter-zipkin</artifactId>
- </dependency>
- # sleuth 和 zipkin 相关配置
- spring:
- zipkin:
- base-url: http://127.0.0.1:9411/ #zipkin server的请求地址
- discoveryClientEnabled: false #让nacos把它当成一个URL,而不要当做服务名
- sleuth:
- sampler:
- probability: 1.0 #采样的百分比
http://localhost:7000/order-serv/order/prod/1
- CREATE TABLE
- IF
- NOT EXISTS zipkin_spans (
- `trace_id_high` BIGINT NOT NULL DEFAULT 0 COMMENT 'If non zero, this
- means the trace uses 128 bit traceIds instead of 64 bit',
- `trace_id` BIGINT NOT NULL,
- `id` BIGINT NOT NULL,
- `name` VARCHAR ( 255 ) NOT NULL,
- `parent_id` BIGINT,
- `debug` BIT ( 1 ),
- `start_ts` BIGINT COMMENT 'Span.timestamp(): epoch micros used for endTs
- query and to implement TTL',
- `duration` BIGINT COMMENT 'Span.duration(): micros used for minDuration
- and maxDuration query'
- ) ENGINE = INNODB ROW_FORMAT = COMPRESSED CHARACTER
- SET = utf8 COLLATE utf8_general_ci;
- ALTER TABLE zipkin_spans ADD UNIQUE KEY ( `trace_id_high`, `trace_id`, `id` ) COMMENT 'ignore insert on duplicate';
- ALTER TABLE zipkin_spans ADD INDEX ( `trace_id_high`, `trace_id`, `id` ) COMMENT 'for joining with zipkin_annotations';
- ALTER TABLE zipkin_spans ADD INDEX ( `trace_id_high`, `trace_id` ) COMMENT 'for
- getTracesByIds';
- ALTER TABLE zipkin_spans ADD INDEX ( `name` ) COMMENT 'for getTraces and
- getSpanNames';
- ALTER TABLE zipkin_spans ADD INDEX ( `start_ts` ) COMMENT 'for getTraces
- ordering and range';
- CREATE TABLE
- IF
- NOT EXISTS zipkin_annotations (
- `trace_id_high` BIGINT NOT NULL DEFAULT 0 COMMENT 'If non zero, this
- means the trace uses 128 bit traceIds instead of 64 bit',
- `trace_id` BIGINT NOT NULL COMMENT 'coincides with
- zipkin_spans.trace_id',
- `span_id` BIGINT NOT NULL COMMENT 'coincides with zipkin_spans.id',
- `a_key` VARCHAR ( 255 ) NOT NULL COMMENT 'BinaryAnnotation.key or
- Annotation.value if type == -1',
- `a_value` BLOB COMMENT 'BinaryAnnotation.value(), which must be smaller
- than 64KB',
- `a_type` INT NOT NULL COMMENT 'BinaryAnnotation.type() or -1 if
- Annotation',
- `a_timestamp` BIGINT COMMENT 'Used to implement TTL;
- Annotation.timestamp or zipkin_spans.timestamp',
- `endpoint_ipv4` INT COMMENT 'Null when Binary/Annotation.endpoint is
- null',
- `endpoint_ipv6` BINARY ( 16 ) COMMENT 'Null when Binary/Annotation.endpoint
- is null, or no IPv6 address',
- `endpoint_port` SMALLINT COMMENT 'Null when Binary/Annotation.endpoint
- is null',
- `endpoint_service_name` VARCHAR ( 255 ) COMMENT 'Null when
- Binary/Annotation.endpoint is null'
- ) ENGINE = INNODB ROW_FORMAT = COMPRESSED CHARACTER
- SET = utf8 COLLATE utf8_general_ci;
- ALTER TABLE zipkin_annotations ADD UNIQUE KEY ( `trace_id_high`, `trace_id`, `span_id`, `a_key`, `a_timestamp` ) COMMENT 'Ignore insert on duplicate';
- ALTER TABLE zipkin_annotations ADD INDEX ( `trace_id_high`, `trace_id`, `span_id` ) COMMENT 'for joining with zipkin_spans';
- ALTER TABLE zipkin_annotations ADD INDEX ( `trace_id_high`, `trace_id` ) COMMENT 'for getTraces/ByIds';
- ALTER TABLE zipkin_annotations ADD INDEX ( `endpoint_service_name` ) COMMENT 'for getTraces and getServiceNames';
- ALTER TABLE zipkin_annotations ADD INDEX ( `a_type` ) COMMENT 'for getTraces';
- ALTER TABLE zipkin_annotations ADD INDEX ( `a_key` ) COMMENT 'for getTraces';
- ALTER TABLE zipkin_annotations ADD INDEX ( `trace_id`, `span_id`, `a_key` ) COMMENT 'for dependencies job';
- CREATE TABLE
- IF
- NOT EXISTS zipkin_dependencies ( `day` DATE NOT NULL, `parent` VARCHAR ( 255 ) NOT NULL, `child` VARCHAR ( 255 ) NOT NULL, `call_count` BIGINT ) ENGINE = INNODB ROW_FORMAT = COMPRESSED CHARACTER
- SET = utf8 COLLATE utf8_general_ci;
- ALTER TABLE zipkin_dependencies ADD UNIQUE KEY ( `day`, `parent`, `child` );
- java -jar zipkin-server-2.12.9-exec.jar --STORAGE_TYPE=mysql --
- MYSQL_HOST=127.0.0.1 --MYSQL_TCP_PORT=3306 --MYSQL_DB=zipkin --MYSQL_USER=root -
- -MYSQL_PASS=root
訪問: ローカルホスト:9200
視覚化が必要な場合は、Kibana をインストールできます
java -jar zipkin-server-2.12.9-exec.jar --STORAGE_TYPE=elasticsearch --ESHOST=localhost:9200
elasticsearch の視覚的な使用方法については、以下を参照してください。Windows での Elasticsearch のインストールと使用、および kibana_windows のインストールkibanna-CSDN ブログ