ElasticSearch學習筆記——插件開發

參考

https://dzone.com/articles/elasticsearch5-how-to-build-a-plugin-and-add-a-lis
https://github.com/chrisshayan/es-changes-feed-plugin
https://blog.csdn.net/qq_16164711/article/details/87872383
https://blog.gaiaproject.club/es-develop-plugin/
https://blog.51cto.com/13755625/2117995

Es的插件主要有如下幾種類型,參考

https://github.com/elastic/elasticsearch/tree/master/server/src/main/java/org/elasticsearch/plugins

 

API Extension Plugins API拓展插件:API extension plugins add new functionality to Elasticsearch by adding new APIs or features, usually to do with search or mapping.

Analysis Plugins 解析器插件:Analysis plugins extend Elasticsearch by adding new analyzers, tokenizers, token filters, or character filters to Elasticsearch.

Alerting Plugins 告警插件:Alerting plugins allow Elasticsearch to monitor indices and to trigger alerts when thresholds are breached.

Discovery Plugins 發現插件:Discovery plugins extend Elasticsearch by adding new discovery mechanisms that can be used instead of Zen Discovery.

Ingest Plugins 攝取插件:The ingest plugins extend Elasticsearch by providing additional ingest node capabilities.

Management Plugins 管理插件:Management plugins offer UIs for managing and interacting with Elasticsearch.

Mapper Plugins Mapper插件:Mapper plugins allow new field datatypes to be added to Elasticsearch.

Security Plugins 安全插件:Security plugins add a security layer to Elasticsearch.

Snapshot/Restore Repository Plugins 快照插件:Repository plugins extend the Snapshot/Restore functionality in Elasticsearch by adding repositories backed by the cloud or by distributed file systems: 

Store Plugins 存儲插件:Store plugins offer alternatives to default Lucene stores.

 

ActionPlugin:An additional extension point for {@link Plugin}s that extends Elasticsearch's scripting functionality

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/ActionPlugin.java

CircuitBreakerPlugin 斷路器插件:An extension point for {@link Plugin} implementations to add custom circuit breakers

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/CircuitBreakerPlugin.java

ClusterPlugin 集羣插件:An extension point for {@link Plugin} implementations to customer behavior of cluster management.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/ClusterPlugin.java

EnginePlugin 引擎插件:A plugin that provides alternative engine implementations.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/EnginePlugin.java

ExtensiblePlugin 拓展插件:This class provides a callback for extensible plugins to be informed of other plugins which extend them.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/ExtensiblePlugin.java

IndexStorePlugin 索引存儲插件:A plugin that provides alternative directory implementations.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/IndexStorePlugin.java

NetworkPlugin 網絡插件:Plugin for extending network and transport related classes

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/NetworkPlugin.java

PersistentTaskPlugin 持續任務插件:Plugin for registering persistent tasks executors.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/PersistentTaskPlugin.java

ReloadablePlugin Reload插件:An extension point for {@link Plugin}s that can be reloaded. There is no clear definition about what reloading a plugin actually means. When a plugin is reloaded it might rebuild any internal members. Plugins usually implement this interface in order to reread the values of {@code SecureSetting}s and then rebuild any dependent internal members.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/ReloadablePlugin.java

RestCompatibilityPlugin Rest兼容性插件:An extension point for Compatible API plugin implementation.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/RestCompatibilityPlugin.java

ScriptPlugin 腳本插件:An additional extension point for {@link Plugin}s that extends Elasticsearch's scripting functionality.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/ScriptPlugin.java

SearchPlugin 搜索插件:Plugin for extending search time behavior.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/SearchPlugin.java

SystemIndexPlugin 系統索引插件:Plugin for defining system indices. Extends {@link ActionPlugin} because system indices must be accessed via APIs added by the plugin that owns the system index, rather than standard APIs.

https://github.com/elastic/elasticsearch/blob/master/server/src/main/java/org/elasticsearch/plugins/SystemIndexPlugin.java

  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章