# 简介

EMQX 5.0 支持通过插件、gRPC 多语言钩子与协议扩展的方式扩展 EMQX,您可以根据项目需求和团队技能来选择扩展方式。

# 插件开发

EMQX 提供了丰富的插件开发接口,通过 Hook 函数能够接入 EMQX 的核心流程,实现自定义业务逻辑,如访问控制、消息路由、消息存储等;通过协议扩展接口能够实现其他协议适配,并使用统一的 网关 框架进行客户端接入管理。

插件开发需要一定的 Erlang 基础知识并对 EMQX 有所了解。

# gRPC 多语言钩子与协议扩展

EMQX gRPC (opens new window) 多语言钩子与协议扩展(以下简称多语言扩展)是另外一种扩展 EMQX 的方式。

多语言扩展允许用户使用 Python, Java 等语言编写服务,通过 gRPC 通道与 EMQX 集成,进行钩子(Hooks)的处理,或解析私有的 TCP/UDP 协议,实现与插件类似的功能。