blob: 3ea4b01506184ac0a451c13b6579ba145bee8f5b [file]
<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-2.5.1 docs-doc-page docs-doc-id-plugin-center/proxy/divide-plugin" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.10.1">
<title data-rh="true">Divide Plugin | Apache ShenYu</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://shenyu.apache.org/docs/2.5.1/plugin-center/proxy/divide-plugin"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" property="og:locale:alternate" content="zh"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="2.5.1"><meta data-rh="true" name="docusaurus_tag" content="docs-default-2.5.1"><meta data-rh="true" name="docsearch:version" content="2.5.1"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-2.5.1"><meta data-rh="true" property="og:title" content="Divide Plugin | Apache ShenYu"><meta data-rh="true" name="description" content="divide plugin"><meta data-rh="true" property="og:description" content="divide plugin"><meta data-rh="true" name="keywords" content="divide"><link data-rh="true" rel="icon" href="/img/favicon.svg"><link data-rh="true" rel="canonical" href="https://shenyu.apache.org/docs/2.5.1/plugin-center/proxy/divide-plugin"><link data-rh="true" rel="alternate" href="https://shenyu.apache.org/docs/2.5.1/plugin-center/proxy/divide-plugin" hreflang="en"><link data-rh="true" rel="alternate" href="https://shenyu.apache.org/zh/docs/2.5.1/plugin-center/proxy/divide-plugin" hreflang="zh"><link data-rh="true" rel="alternate" href="https://shenyu.apache.org/docs/2.5.1/plugin-center/proxy/divide-plugin" hreflang="x-default"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Divide Plugin","item":"https://shenyu.apache.org/docs/2.5.1/plugin-center/proxy/divide-plugin"}]}</script><link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="Apache ShenYu RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache ShenYu Atom Feed">
<link rel="alternate" type="application/rss+xml" href="/news/rss.xml" title="Apache ShenYu RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/news/atom.xml" title="Apache ShenYu Atom Feed">
<script src="/js/error-suppression.js"></script><link rel="stylesheet" href="/assets/css/styles.be5ddbfc.css">
<script src="/assets/js/runtime~main.8ca3dc91.js" defer="defer"></script>
<script src="/assets/js/main.e927b711.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="theme-layout-navbar navbar navbar--fixed-top"><div class="navbar__inner"><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><div class="navbar__logo"><img src="/img/logo.svg" alt="Apache ShenYu Logo" class="themedComponent_mlkZ themedComponent--light_NVdE"><img src="/img/logo-light.svg" alt="Apache ShenYu Logo" class="themedComponent_mlkZ themedComponent--dark_xIcU"></div></a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><a class="navbar__item navbar__link" href="/download">Download</a><a class="navbar__item navbar__link" href="/document">Docs</a><a class="navbar__item navbar__link" href="/community/contributor-guide">Community</a><a class="navbar__item navbar__link" href="/team">Team</a><a class="navbar__item navbar__link" href="/event">Event</a><a class="navbar__item navbar__link" href="/news">News</a><a class="navbar__item navbar__link" href="/blog">Blog</a><a class="navbar__item navbar__link" href="/users">Users</a><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">ASF</a><ul class="dropdown__menu"><li><a href="https://www.apache.org/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Foundation</a></li><li><a href="https://www.apache.org/licenses/" target="_blank" rel="noopener noreferrer" class="dropdown__link">License</a></li><li><a href="https://www.apache.org/events/current-event" target="_blank" rel="noopener noreferrer" class="dropdown__link">Events</a></li><li><a href="https://www.apache.org/security/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Security</a></li><li><a href="https://www.apache.org/foundation/sponsorship.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Sponsorship</a></li><li><a href="https://www.apache.org/foundation/policies/privacy.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Privacy</a></li><li><a href="https://www.apache.org/foundation/thanks.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Thanks</a></li></ul></div><a href="https://github.com/apache/shenyu" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link"><svg viewBox="0 0 24 24" width="20" height="20" aria-hidden="true" class="iconLanguage_nlXk"><path fill="currentColor" d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path></svg>English</a><ul class="dropdown__menu"><li><a href="/docs/2.5.1/plugin-center/proxy/divide-plugin" target="_self" rel="noopener noreferrer" class="dropdown__link dropdown__link--active" lang="en">English</a></li><li><a href="/zh/docs/2.5.1/plugin-center/proxy/divide-plugin" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="zh">简体中文</a></li></ul></div><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="system mode" aria-label="Switch between dark and light mode (currently system mode)"><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP systemToggleIcon_QzmC"><path fill="currentColor" d="m12 21c4.971 0 9-4.029 9-9s-4.029-9-9-9-9 4.029-9 9 4.029 9 9 9zm4.95-13.95c1.313 1.313 2.05 3.093 2.05 4.95s-0.738 3.637-2.05 4.95c-1.313 1.313-3.093 2.05-4.95 2.05v-14c1.857 0 3.637 0.737 4.95 2.05z"></path></svg></button></div><div class="navbarSearchContainer_Bca1"><div class="navbar__search searchBarContainer_NW3z" dir="ltr"><input placeholder="Search" aria-label="Search" class="navbar__search-input" value=""><div class="loadingRing_RJI3 searchBarLoadingRing_YnHq"><div></div><div></div><div></div><div></div></div></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="theme-layout-main main-wrapper mainWrapper_z2l0"><div class="docsWrapper_hBAB"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docRoot_UBD9"><aside class="theme-doc-sidebar-container docSidebarContainer_YfHR"><div class="sidebarViewport_aRkj"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/docs/2.5.1/"><span title="Overview" class="linkLabel_WmDU">Overview</span></a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/docs/2.5.1/design/database-design"><span title="Design" class="categoryLinkLabel_W154">Design</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/docs/2.5.1/deployment/deployment-before"><span title="Deployment" class="categoryLinkLabel_W154">Deployment</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/docs/2.5.1/quick-start/quick-start-brpc"><span title="Quick Start" class="categoryLinkLabel_W154">Quick Start</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/docs/2.5.1/user-guide/admin-usage/data-permission"><span title="User Guide" class="categoryLinkLabel_W154">User Guide</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" role="button" aria-expanded="true" href="/docs/2.5.1/plugin-center/http-process/contextpath-plugin"><span title="Plugin Center" class="categoryLinkLabel_W154">Plugin Center</span></a></div><ul class="menu__list"><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/docs/2.5.1/plugin-center/http-process/contextpath-plugin"><span title="Http Process" class="categoryLinkLabel_W154">Http Process</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" role="button" aria-expanded="true" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/brpc-plugin"><span title="Proxy" class="categoryLinkLabel_W154">Proxy</span></a></div><ul class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/brpc-plugin"><span title="Brpc Plugin" class="linkLabel_WmDU">Brpc Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/divide-plugin"><span title="Divide Plugin" class="linkLabel_WmDU">Divide Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/dubbo-plugin"><span title="Dubbo Plugin" class="linkLabel_WmDU">Dubbo Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/grpc-plugin"><span title="gRPC Plugin" class="linkLabel_WmDU">gRPC Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/motan-plugin"><span title="Motan Plugin" class="linkLabel_WmDU">Motan Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/mqtt-plugin"><span title="Mqtt Plugin" class="linkLabel_WmDU">Mqtt Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/sofa-plugin"><span title="Sofa Plugin" class="linkLabel_WmDU">Sofa Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/spring-cloud-plugin"><span title="Spring Cloud Plugin" class="linkLabel_WmDU">Spring Cloud Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/tars-plugin"><span title="Tars Plugin" class="linkLabel_WmDU">Tars Plugin</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/2.5.1/plugin-center/proxy/websocket-plugin"><span title="Websocket Plugin" class="linkLabel_WmDU">Websocket Plugin</span></a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/docs/2.5.1/plugin-center/fault-tolerance/hystrix-plugin"><span title="Fault Tolerance" class="categoryLinkLabel_W154">Fault Tolerance</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/docs/2.5.1/plugin-center/security/casdoor"><span title="Security" class="categoryLinkLabel_W154">Security</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/docs/2.5.1/plugin-center/observability/logging-aliyun-sls"><span title="Observability" class="categoryLinkLabel_W154">Observability</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/docs/2.5.1/plugin-center/common/general-context-plugin"><span title="Common" class="categoryLinkLabel_W154">Common</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/docs/2.5.1/plugin-center/cache/cache-plugin"><span title="Cache" class="categoryLinkLabel_W154">Cache</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/docs/2.5.1/plugin-center/mock/mock-plugin"><span title="Mock" class="categoryLinkLabel_W154">Mock</span></a></div></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/docs/2.5.1/developer/spi/custom-load-balance"><span title="Developer" class="categoryLinkLabel_W154">Developer</span></a></div></li></ul></nav></div></div></aside><main class="docMainContainer_TBSr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="theme-doc-version-banner alert alert--warning margin-bottom--md" role="alert"><div>This is documentation for <!-- -->Apache ShenYu<!-- --> <b>2.5.1</b>, which is no longer actively maintained.</div><div class="margin-top--md">For up-to-date documentation, see the <b><a href="/docs/plugin-center/proxy/divide-plugin">latest version</a></b> (<!-- -->2.7.0.3<!-- -->).</div></div><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">Plugin Center</span></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">Proxy</span></li><li class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link">Divide Plugin</span></li></ul></nav><span class="theme-doc-version-badge badge badge--secondary">Version: 2.5.1</span><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>1. Overview</h1></header>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="11-plugin-name">1.1 Plugin Name<a href="#11-plugin-name" class="hash-link" aria-label="Direct link to 1.1 Plugin Name" title="Direct link to 1.1 Plugin Name" translate="no"></a></h2>
<ul>
<li class=""><code>divide</code> Plugin</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="12-appropriate-scenario">1.2 Appropriate Scenario<a href="#12-appropriate-scenario" class="hash-link" aria-label="Direct link to 1.2 Appropriate Scenario" title="Direct link to 1.2 Appropriate Scenario" translate="no"></a></h2>
<ul>
<li class="">Handling <code>http protocol</code> requests.</li>
<li class="">Support traffic management, such as a/b test, grayscale test.</li>
<li class="">Service Load Balancing.</li>
<li class="">Set request timeout.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="13-plugin-functionality">1.3 Plugin functionality<a href="#13-plugin-functionality" class="hash-link" aria-label="Direct link to 1.3 Plugin functionality" title="Direct link to 1.3 Plugin functionality" translate="no"></a></h2>
<ul>
<li class="">Supports traffic management based on request information such as uri, header, and query.</li>
<li class="">Supports setting the load balancing strategy for requests, and supports service warm-up. Currently, three strategies are supported: ip hash (consistent hash with virtual nodes), round-robbin (weighted polling), random (weighted random).</li>
<li class="">Supports setting the maximum value of the request header, the maximum value of the request body, and the request level timeout.</li>
<li class="">Supports setting the timeout retry policy and the number of retries. Currently, the retry policy supports: current (retrying the server that failed before) and failover (retrying other servers).</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="14-plugin-code">1.4 Plugin Code<a href="#14-plugin-code" class="hash-link" aria-label="Direct link to 1.4 Plugin Code" title="Direct link to 1.4 Plugin Code" translate="no"></a></h2>
<ul>
<li class="">Core module is <code>shenyu-plugin-divide</code>.</li>
<li class="">Core class is <code>org.apache.shenyu.plugin.divide.DividePlugin</code>.</li>
</ul>
<h1>2. How to use plugin</h1>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="21-plugin-use-procedure-chart">2.1 Plugin-use procedure chart<a href="#21-plugin-use-procedure-chart" class="hash-link" aria-label="Direct link to 2.1 Plugin-use procedure chart" title="Direct link to 2.1 Plugin-use procedure chart" translate="no"></a></h2>
<p><img decoding="async" loading="lazy" src="/assets/images/procedure-en-5b17e369f9d6c12d70118a29f5b7bd30.png" width="232" height="579" class="img_ev3q"></p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="22-import-pom">2.2 Import pom<a href="#22-import-pom" class="hash-link" aria-label="Direct link to 2.2 Import pom" title="Direct link to 2.2 Import pom" translate="no"></a></h2>
<ul>
<li class="">Import maven in shenyu-bootstrap project&#x27;s <code>pom.xml</code> file.</li>
</ul>
<div class="language-xml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-xml codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">dependency</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">groupId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain">org.apache.shenyu</span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">groupId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">artifactId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain">shenyu-spring-boot-starter-gateway</span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">artifactId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">version</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain">${project.version}</span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">version</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">dependency</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="23-enable-plugin">2.3 Enable plugin<a href="#23-enable-plugin" class="hash-link" aria-label="Direct link to 2.3 Enable plugin" title="Direct link to 2.3 Enable plugin" translate="no"></a></h2>
<ul>
<li class="">In <code>shenyu-admin</code> --&gt; BasicConfig --&gt; Plugin --&gt; <code>divide</code> set Status enable.</li>
</ul>
<p><img decoding="async" loading="lazy" src="/assets/images/enable-en-d6ddedc0d79f6f071df86d262a7cda03.png" width="1909" height="763" class="img_ev3q"></p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="24-config-plugin">2.4 Config plugin<a href="#24-config-plugin" class="hash-link" aria-label="Direct link to 2.4 Config plugin" title="Direct link to 2.4 Config plugin" translate="no"></a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="241-configure-access-parameters-in-the-client-project-configuration-file">2.4.1 Configure access parameters in the client project configuration file<a href="#241-configure-access-parameters-in-the-client-project-configuration-file" class="hash-link" aria-label="Direct link to 2.4.1 Configure access parameters in the client project configuration file" title="Direct link to 2.4.1 Configure access parameters in the client project configuration file" translate="no"></a></h3>
<ul>
<li class="">Client access method and server address. The following example uses the http access method. Currently, the client supports the following access methods: http, zookeeper, etcd, nacos, consul. For detailed access configuration parameters, please refer to <a class="" href="/docs/next/user-guide/property-config/register-center-access">Client Access Configuration</a>.</li>
<li class="">Client configuration, including the protocol name and the routing address of the service, please use the http protocol here, and the value of contextPath must be configured as the routing address of each service.</li>
</ul>
<div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">shenyu</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">register</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">registerType</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> http</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">serverLists</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> http</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain">//localhost</span><span class="token punctuation" style="color:#393A34">:</span><span class="token number" style="color:#36acaa">9095</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">props</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">username</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> admin</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">password</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">123456</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">client</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">http</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic"># http protocol</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">props</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">contextPath</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> /http </span><span class="token comment" style="color:#999988;font-style:italic"># routing address for each service</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="242-configure-upstream-validity-detection-parameters-in-the-shenyu-admin-configuration-file">2.4.2 Configure upstream validity detection parameters in the shenyu-admin configuration file<a href="#242-configure-upstream-validity-detection-parameters-in-the-shenyu-admin-configuration-file" class="hash-link" aria-label="Direct link to 2.4.2 Configure upstream validity detection parameters in the shenyu-admin configuration file" title="Direct link to 2.4.2 Configure upstream validity detection parameters in the shenyu-admin configuration file" translate="no"></a></h3>
<p>The following example uses the http access method. Currently, the client supports the following access methods: http, zookeeper, etcd, nacos, consul. For detailed access configuration parameters, please refer to <a class="" href="/docs/next/user-guide/property-config/register-center-access">Client Access Configuration</a>.</p>
<blockquote>
<p>Only http-type registries support upstream detection.</p>
</blockquote>
<div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">shenyu</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">register</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">registerType</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> http </span><span class="token comment" style="color:#999988;font-style:italic"># Only http-type register center support upstream detection.</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">serverLists</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">props</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">checked</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean important" style="color:#36acaa">true</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic"># The default is true, set to false, do not detect.</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">zombieCheckTimes</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">5</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic"># The maximum number of zombie upstream detections. If it exceeds 5 times, its validity will no longer be detected. The default value is 5.</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">scheduledTime</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">10</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic"># Timing detection interval, the default is 10 seconds.</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">zombieRemovalTimes</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">60</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic"># How many seconds the upstream is offline to be considered as a zombie upstream, the default is 60 seconds.</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="243-configure-the-selector-and-rule-information-of-the-divide-plugin-in-shenyu-admin">2.4.3 Configure the selector and rule information of the divide plugin in shenyu-admin<a href="#243-configure-the-selector-and-rule-information-of-the-divide-plugin-in-shenyu-admin" class="hash-link" aria-label="Direct link to 2.4.3 Configure the selector and rule information of the divide plugin in shenyu-admin" title="Direct link to 2.4.3 Configure the selector and rule information of the divide plugin in shenyu-admin" translate="no"></a></h3>
<p>After the client is started, the <a class="" href="/docs/2.5.1/user-guide/admin-usage/selector-and-rule">selector and rule</a> information will be automatically registered in shenyu-admin -&gt; Plugin List -&gt; Proxy -&gt; Divide.</p>
<p><img decoding="async" loading="lazy" src="/assets/images/select-and-rule-en-3a62f8cb06cf350e1f7e48daaa601978.png" width="1913" height="766" class="img_ev3q"></p>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="2431-selector-configuration">2.4.3.1 Selector configuration<a href="#2431-selector-configuration" class="hash-link" aria-label="Direct link to 2.4.3.1 Selector configuration" title="Direct link to 2.4.3.1 Selector configuration" translate="no"></a></h4>
<p>Example of divide selector. For general selector configuration, please refer to <a class="" href="/docs/2.5.1/user-guide/admin-usage/selector-and-rule">Selectors and Rules</a>.</p>
<p><img decoding="async" loading="lazy" src="/assets/images/selector-en-0b99d7a7e1ce0334e5dadc04ba8611c8.png" width="1307" height="735" class="img_ev3q"></p>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="24311-selector-handling-information-configuration">2.4.3.1.1 Selector handling information configuration<a href="#24311-selector-handling-information-configuration" class="hash-link" aria-label="Direct link to 2.4.3.1.1 Selector handling information configuration" title="Direct link to 2.4.3.1.1 Selector handling information configuration" translate="no"></a></h5>
<ul>
<li class=""><code>host</code>: fill in <code>localhost</code>, this field is not used currently.</li>
<li class=""><code>ip:port</code>: <code>ip</code> and port, fill in the <code>ip</code> + port of your real service here.</li>
<li class=""><code>protocol</code>: <code>http</code> protocol, fill in <code>http:</code> or <code>https:</code>, if not fill in, the default is: <code>http:</code>.</li>
<li class=""><code>startupTime</code>: Startup time in milliseconds.</li>
<li class=""><code>weight</code>: load balancing weight, the default value of service startup automatic registration is 50.</li>
<li class=""><code>warmupTime</code>: Warmup time, in milliseconds. The server during warmup will calculate the instantaneous weight, and the calculated value will be smaller than the actual configured weight to protect the server just started. The default value of service startup registration is 10. For example, the warm-up time is 100 milliseconds, the current startup is 50 milliseconds, the configured weight is 50, and the actual weight is 25.</li>
<li class=""><code>status</code>: On or off, this selector is valid only in the on state.</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="2432-processing-information-configuration-of-rules">2.4.3.2 Processing information configuration of rules<a href="#2432-processing-information-configuration-of-rules" class="hash-link" aria-label="Direct link to 2.4.3.2 Processing information configuration of rules" title="Direct link to 2.4.3.2 Processing information configuration of rules" translate="no"></a></h4>
<p>Example of divide rule. For general rule configuration, please refer to <a class="" href="/docs/2.5.1/user-guide/admin-usage/selector-and-rule">selectors and rules</a>.</p>
<p><img decoding="async" loading="lazy" src="/assets/images/rule-en-0b219597a708404400981a3a9d6a89c0.png" width="999" height="697" class="img_ev3q"></p>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="24321-rule-processing-information-configuration">2.4.3.2.1 Rule processing information configuration<a href="#24321-rule-processing-information-configuration" class="hash-link" aria-label="Direct link to 2.4.3.2.1 Rule processing information configuration" title="Direct link to 2.4.3.2.1 Rule processing information configuration" translate="no"></a></h5>
<ul>
<li class=""><code>loadStrategy</code>: If the <code>http</code> client is a cluster, which load balancing strategy is used when the <code>Apache ShenYu</code> gateway is called, currently supports <code>roundRobin</code>, <code>random</code> and <code>hash</code>.</li>
<li class=""><code>timeout</code>: The timeout for calling the <code>http</code> client.</li>
<li class=""><code>retry Count</code>: The number of retries that failed to call the <code>http</code> client timeout.</li>
<li class=""><code>headerMaxSize</code>: The maximum value of the requested <code>header</code>.</li>
<li class=""><code>requestMaxSize</code>: The maximum value of the request body.</li>
<li class=""><code>retryStrategy</code>: Supported since <code>2.4.3</code>, retry strategy after failure, default <code>current</code> to maintain compatibility with lower versions. For example, there are 3 downstream services <code>http:localhost:1111</code>, <code>http:localhost:1112</code> and <code>http:localhost:1113</code>, assuming the first load balancing to <code>http:localhost:1111</code> and <code>call failed</code>. Using the <code>current</code> strategy will continue to retry calling <code>http:localhost:1111</code>; using the <code>failover</code> strategy will retry calling other services such as <code>http:localhost:1112</code> through the <code>load balancing</code>, if it fails again at this time , call to <code>http:localhost:1113</code> until no service is available.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="25-examples">2.5 Examples<a href="#25-examples" class="hash-link" aria-label="Direct link to 2.5 Examples" title="Direct link to 2.5 Examples" translate="no"></a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="251-example-ab-test">2.5.1 Example A/B Test<a href="#251-example-ab-test" class="hash-link" aria-label="Direct link to 2.5.1 Example A/B Test" title="Direct link to 2.5.1 Example A/B Test" translate="no"></a></h3>
<p>To be added, welcome contribute.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="252-example-grayscale-test">2.5.2 Example Grayscale Test<a href="#252-example-grayscale-test" class="hash-link" aria-label="Direct link to 2.5.2 Example Grayscale Test" title="Direct link to 2.5.2 Example Grayscale Test" translate="no"></a></h3>
<p>To be added, welcome contribute.</p>
<h1>3. How to disable plugin</h1>
<ul>
<li class="">In <code>shenyu-admin</code> --&gt; BasicConfig --&gt; Plugin --&gt; <code>divide</code> set Status disable.</li>
</ul>
<p><img decoding="async" loading="lazy" src="/assets/images/disable-en-8ae0fcbf271bbccd293931cc20f3dfa1.png" width="1916" height="772" class="img_ev3q"></p></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class="col noPrint_WFHX"><a href="https://github.com/apache/shenyu-website/edit/main/versioned_docs/version-2.5.1/plugin-center/proxy/divide-plugin.md" target="_blank" rel="noopener noreferrer" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_JAkA"></div></div></footer></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/docs/2.5.1/plugin-center/proxy/brpc-plugin"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Brpc Plugin</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/docs/2.5.1/plugin-center/proxy/dubbo-plugin"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Dubbo Plugin</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#11-plugin-name" class="table-of-contents__link toc-highlight">1.1 Plugin Name</a></li><li><a href="#12-appropriate-scenario" class="table-of-contents__link toc-highlight">1.2 Appropriate Scenario</a></li><li><a href="#13-plugin-functionality" class="table-of-contents__link toc-highlight">1.3 Plugin functionality</a></li><li><a href="#14-plugin-code" class="table-of-contents__link toc-highlight">1.4 Plugin Code</a></li><li><a href="#21-plugin-use-procedure-chart" class="table-of-contents__link toc-highlight">2.1 Plugin-use procedure chart</a></li><li><a href="#22-import-pom" class="table-of-contents__link toc-highlight">2.2 Import pom</a></li><li><a href="#23-enable-plugin" class="table-of-contents__link toc-highlight">2.3 Enable plugin</a></li><li><a href="#24-config-plugin" class="table-of-contents__link toc-highlight">2.4 Config plugin</a><ul><li><a href="#241-configure-access-parameters-in-the-client-project-configuration-file" class="table-of-contents__link toc-highlight">2.4.1 Configure access parameters in the client project configuration file</a></li><li><a href="#242-configure-upstream-validity-detection-parameters-in-the-shenyu-admin-configuration-file" class="table-of-contents__link toc-highlight">2.4.2 Configure upstream validity detection parameters in the shenyu-admin configuration file</a></li><li><a href="#243-configure-the-selector-and-rule-information-of-the-divide-plugin-in-shenyu-admin" class="table-of-contents__link toc-highlight">2.4.3 Configure the selector and rule information of the divide plugin in shenyu-admin</a></li></ul></li><li><a href="#25-examples" class="table-of-contents__link toc-highlight">2.5 Examples</a><ul><li><a href="#251-example-ab-test" class="table-of-contents__link toc-highlight">2.5.1 Example A/B Test</a></li><li><a href="#252-example-grayscale-test" class="table-of-contents__link toc-highlight">2.5.2 Example Grayscale Test</a></li></ul></li></ul></div></div></div></div></main></div></div></div></div>
</body>
</html>