Skip to content

Commit

Permalink
New - leastload, leastping balancer
Browse files Browse the repository at this point in the history
  • Loading branch information
MHSanaei committed Mar 11, 2024
1 parent 01cd753 commit ac5d8af
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 5 deletions.
12 changes: 7 additions & 5 deletions web/html/xui/xray.html
Original file line number Diff line number Diff line change
Expand Up @@ -537,6 +537,8 @@
<template slot="strategy" slot-scope="text, balancer, index">
<a-tag style="margin:0;" v-if="balancer.strategy=='random'" color="purple">Random</a-tag>
<a-tag style="margin:0;" v-if="balancer.strategy=='roundRobin'" color="green">Round Robin</a-tag>
<a-tag style="margin:0;" v-if="balancer.strategy=='leastload'" color="green">Least Load</a-tag>
<a-tag style="margin:0;" v-if="balancer.strategy=='leastping'" color="green">Least Ping</a-tag>
</template>
<template slot="selector" slot-scope="text, balancer, index">
<a-tag class="info-large-tag" style="margin:1;" v-for="sel in balancer.selector">[[ sel ]]</a-tag>
Expand Down Expand Up @@ -1131,7 +1133,7 @@
'tag': balancer.tag,
'selector': balancer.selector
};
if (balancer.strategy == 'roundRobin') {
if (balancer.strategy === 'roundRobin' || balancer.strategy === 'leastload' || balancer.strategy === 'leastping') {
tmpBalancer.strategy = {
'type': balancer.strategy
};
Expand All @@ -1158,7 +1160,7 @@
'tag': balancer.tag,
'selector': balancer.selector
};
if (balancer.strategy == 'roundRobin') {
if (balancer.strategy === 'roundRobin' || balancer.strategy === 'leastload' || balancer.strategy === 'leastping') {
tmpBalancer.strategy = {
'type': balancer.strategy
};
Expand Down Expand Up @@ -1474,11 +1476,11 @@
if (this.templateSettings != null && this.templateSettings.routing != null && this.templateSettings.routing.balancers != null) {
this.templateSettings.routing.balancers.forEach((o, index) => {
let strategy = "random"
if (o.strategy && o.strategy.type == "roundRobin") {
strategy = o.strategy.type
if (o.strategy && (o.strategy.type == "roundRobin" || o.strategy.type == "leastload" || o.strategy.type == "leastping")) {
strategy = o.strategy.type;
}

data.push({
data.push({
'key': index,
'tag': o.tag ? o.tag : "",
'strategy': strategy,
Expand Down
2 changes: 2 additions & 0 deletions web/html/xui/xray_balancer_modal.html
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
<a-select v-model="balancerModal.balancer.strategy" :dropdown-class-name="themeSwitcher.currentTheme">
<a-select-option value="random">Random</a-select-option>
<a-select-option value="roundRobin">Round Robin</a-select-option>
<a-select-option value="leastload">Least Load</a-select-option>
<a-select-option value="leastping">Least Ping</a-select-option>
</a-select>
</a-form-item>
<a-form-item label='{{ i18n "pages.xray.balancer.balancerSelectors" }}' has-feedback
Expand Down

0 comments on commit ac5d8af

Please sign in to comment.