Wir haben 2 Subsysteme in Apache Ignite erstellt.
In dem Artikel werde ich ĂŒber ihre Architektur erzĂ€hlen:
- Wie haben das Metrik-Subsystem und das Systemansicht-Subsystem funktioniert?
- Was wurde getan und was werden wir tun?

Hallo alle zusammen! Ich heiĂe Nikolai Izhikov. Ich arbeite bei Sberbank Technologies an der Entwicklung von Open Source-Produkten.
Hinweis 1 : "erledigt" bedeutet, dass diese FunktionalitĂ€t in Master Apache Ignite verfĂŒgbar ist. Sie können erstellen und sehen, wie es funktioniert. Die FunktionalitĂ€t wird in der Version 2.8 Apache Ignite veröffentlicht, die Anfang 2020 veröffentlicht wird.
âš 2: , , Apache Ignite.
âš 3: 2.8, , - .
Apache Ignite in-memory . API: , , ( ), .
âš, - . : " , ? , , ." :
- ? â , , .
- ? â , , : , , , . , .
- ? â .
- ? â " " â ?
.
:
- .
- â , .
- . : , .
- : , , , , .
, . , , . :
- API : transaction manager, cache manager, etc.
- .- API: JMX, SQL, Java. API.
:
- : , ? . , , , - . , .
- «» : , API.
- : jmx, sql, http(Prometheus) , , .
- : , .
Open Source community . , Ignite Enhancement Proposal (IEP), , , API, .
:
Ignite : , . , . , . , Ignite . , Ignite â . â . (prometheus, zabbix) .
Ignite . Ignite : jvm, , , . Ignite . , .
: â .
: , data region', .. , , .
: io.dataregion.myregion.TotalAllocatedPages
â Data Region "myregion".
:
Metric
, Gauge
â .MetricRegistry
â (, ) .MetricExporterSpi
â .ReadOnlyMetricRegistry
â , exporterâ-. read only access + listeners.GridMetricManager
â .
:
Metric
â . .
: LongAddterMetric
, DoubleMetricImpl
, ObjectMetricImpl
.Gauge
â . , Supplier. . , , .
: LongGauge
, DoubleGauge
, ObjectGauge
.HistogramMetric
â + . , .
: , 250 , 500 , 1 .HitRateMetric
â X .
: , .
MetricExporterSpi
â , . , . JMX, SQL, Log, OpenCensus.
GridMetricManager mmgr = ...;
MetricRegistry mreg = mmgr.registry("io.dataregion." + name);
LongAdderMetric replacedPages = mreg.longAdderMetric("PagesReplaced",
"Number of pages replaced from last restart.");
replacedPages.increment();
, " ?" .
.
System View â ?
â . system view, SQL. ( JMX).
SystemView
â (). : , , compute task', sql table . .SystemViewExporterSpi
â .ReadOnlySystemViewRegistry
â exporter'. read only access + listeners.GridSystemViewManager
â
:
- . , , - . .
- overhead. .
- . . .
: . java-. :
POJO. , . . . : reflection?
:
:
(SystemViewRowAttributeWalker.java), . . system view . .
ctx.systemView().registerView(CACHES_VIEW, CACHES_VIEW_DESC,
new CacheViewWalker(),
registeredCaches.values(),
CacheView::new);
ctx.systemView().registerView(CACHE_GRPS_VIEW, CACHE_GRPS_VIEW_DESC,
new CacheGroupViewWalker(),
registeredCacheGrps.values(),
CacheGroupView::new);
Reflection â , . dev-list JMH benchmark. reflection . walker . Walker 4 .
, " ?" .
- : , .
. - « » (prometheus, zabbix)
- . , . â .
- . Oracle , , : , , , .
- â Ignite , . . threshold «compute 30 », , .
- dev@ignite.apache.org
- user@ignite.apache.org
Komm! Wir haben fast eine russischsprachige Community, fast alle Mitwirkenden kommen aus Russland, sodass Sie problemlos beitreten und einen Beitrag zu Open Source leisten können.
Material mit einem Sternchen PrÀsentation - https://www.highload.ru/moscow/2019/abstracts/6111
Video: