Aubrey Yang
828ba83ef3
Optimizations on the Round Robin strategies
...
Implemented optimizations on the Round Robin proxy selection strategies to enhance performance and stability under varying network conditions and proxy availabilities.
Dynamic Update Mechanism: Integrated an event-driven approach that triggers the proxy list update process when significant changes in proxy status are detected, rather than on every touch.
Memory and Performance: Optimized the management of the available proxies list to update in-place where possible.
Load Distribution: Improved the fairness in proxy usage by introducing a weighted round-robin mechanism that accounts for proxy response times and error rates, ensuring a more balanced load across the proxies.
2024-04-17 18:20:30 +09:00
xishang0128
04886761a2
chore: Add max-failed-times
2024-03-07 03:35:11 +08:00
xishang0128
ffcd672ebf
chore: return more information for the api
2024-01-07 23:32:22 +08:00
Larvan2
ac381736a5
chore: restore function name to AliveForTestUrl
2023-12-22 21:18:17 +08:00
tommytag
f63acc0202
healthcheck latency of the provider is also stored in the extra, without compromising rest api compatibility
2023-12-06 17:11:24 +08:00
Larvan2
1a0932c210
feat: support ARC for DNS cache
2023-12-03 08:37:05 +08:00
wwqgtxx
17c9d507be
chore: hello mihomo
2023-11-03 21:58:21 +08:00
H1JK
64b23257db
chore: Replace murmur3 with maphash
2023-06-10 17:35:19 +08:00
wzdnzd
3ef81afc76
[Feature] Proxy stores delay data of different URLs. And supports specifying different test URLs and expected statue by group ( #588 )
...
Co-authored-by: Larvan2 <78135608+Larvan2@users.noreply.github.com>
Co-authored-by: wwqgtxx <wwqgtxx@gmail.com>
2023-06-04 11:51:30 +08:00
wwqgtxx
90f95d7c78
chore: wireguard dns can work with domain-based server
2023-04-11 14:10:57 +08:00
wwqgtxx
cd95cf4849
fix: firstWriteCallBackConn can pass N.ExtendedConn too
2023-04-01 20:56:49 +08:00
wwqgtxx
fe298bd53f
fix: strategyRoundRobin not begin with zero
2023-03-10 12:47:01 +08:00
wwqgtxx
a454a7f736
fix: load-balance's touch not effected
2023-03-09 11:09:36 +08:00
wwqgtxx
e7613e4f8b
fix: loadbalance panic
2023-03-01 14:04:42 +08:00
wwqgtxx
c1199f1a8a
chore: add early conn interface to decrease unneeded write
2023-02-27 00:26:49 +08:00
wwqgtxx
75680c5866
chore: use early conn to support real ws 0-rtt
2023-02-24 09:54:54 +08:00
Ovear
b2d1cea759
fix: RoundRobin strategy of load balance when called multiple times ( #390 )
2023-02-17 16:31:00 +08:00
H1JK
fd48c6df8a
chore: Fix fmt in #321
...
Replace all double spaces to tabs due to Go fmt proposal.
2023-01-07 12:24:28 +08:00
ag2s20150909
29b72df14c
proxy-groups support exclude node by node type
2023-01-03 21:47:57 +08:00
wwqgtxx
dc3e144b6a
Merge branch 'dev' of https://github.com/Dreamacro/clash into Alpha
2022-11-12 20:43:48 +08:00
wwqgtxx
5fd79890e7
chore: add exclude-filter to ProxyGroup
2022-11-09 08:06:37 +08:00
wwqgtxx
b9d8b69889
fix: lazy check
2022-10-30 23:08:18 +08:00
Skyxim
0fb0e490f8
fix: when connection refused active health test
2022-10-16 13:12:49 +08:00
Dreamacro
133bb2319f
Chore: load balance hash need to have fallback strategy
2022-07-23 23:59:13 +08:00
Dreamacro
7d84a47683
Chore: load balance hash need to have fallback strategy
2022-07-23 23:51:42 +08:00
Dreamacro
557297ac9a
Chore: load balance hash need to have fallback strategy
2022-07-04 21:36:33 +08:00
Dreamacro
27e1d6cdae
Chore: cleanup code
2022-06-30 17:12:06 +08:00
Skyxim
fe25ae83df
refactor: 修改sticky-session尝试逻辑
2022-05-19 20:27:26 +08:00
Skyxim
7aff9aac82
fix: sticky-sessions异常
2022-05-18 22:29:27 +08:00
Skyxim
0742f7db26
refactor: 重构StickySessions
2022-05-17 13:28:54 +08:00
adlyq
962ceaa89e
refactor: strategyStickySessions
2022-05-16 17:46:28 +08:00
MetaCubeX
aa0d174ccb
fix: strategyStickySessions nil pointer
2022-05-16 17:06:44 +08:00
lelemka0
c1631759fc
feat: add strategy:sticky-sessions for LoadBalance
...
Signed-off-by: Meta <maze.y2b@gmail.com>
2022-05-09 18:56:36 +08:00
Skyxim
9969e1706e
fix: loadbalance group npe
2022-05-04 19:52:48 +08:00
Skyxim
b929a19f48
refactor: Unified active health detection, supported by load balancing policy group
2022-05-02 13:50:10 +08:00
adlyq
f1dab9e9ce
refactor: optimize the performance of filter in proxy-group
2022-04-28 19:01:13 +08:00
yaling888
4fd7d0f707
Chore: use generics as possible
2022-04-25 13:18:30 +08:00
adlyq
de4341c8cd
Revert: "fix: proxy-groups filter logic"
...
This reverts commit 8a85c63b08 .
2022-04-22 18:56:35 +08:00
adlyq
8a85c63b08
fix: proxy-groups filter logic
2022-04-22 17:27:55 +08:00
yaling888
7ca1a03d73
Refactor: metadata use netip.Addr
2022-04-20 22:52:05 +08:00
Adlyq
9b4ddbed2c
[skip ci] [Pre] avoid npe
2022-03-23 13:48:21 +08:00
MetaCubeX
609d69191a
Merge remote-tracking branch 'clash/dev' into Alpha
...
# Conflicts:
# .github/workflows/docker.yml
# adapter/outboundgroup/fallback.go
# adapter/outboundgroup/loadbalance.go
# adapter/outboundgroup/relay.go
# adapter/outboundgroup/selector.go
# adapter/outboundgroup/urltest.go
# config/config.go
# go.mod
# go.sum
# main.go
# test/go.mod
# test/go.sum
2022-03-17 01:41:51 +08:00
Dreamacro
6a661bff0c
Migration: go 1.18
2022-03-16 12:10:13 +08:00
Skyxim
b15344ec78
[Refactor]
...
1.allow maybe empty group
2.use COMPATIBLE(DIRECT alias) when proxy group is empty
3.http provider pass through tunnel
2022-01-18 21:09:36 +08:00
Clash-Mini
bfb976bbdc
[test]Add name filter to proxy group
2022-01-05 12:19:49 +08:00
bobo liu
bd2ea2b917
Feature: mark on socket ( #1705 )
2021-11-08 16:59:48 +08:00
Dreamacro
1a7830f18e
Feature: dial different NIC for all proxies ( #1714 )
2021-11-07 16:48:51 +08:00
Dreamacro
68753b4ae1
Chore: contexify ProxyAdapter ListenPacket
2021-10-15 21:44:53 +08:00
Dreamacro
d755383e39
Chore: move provider interface to constant
2021-07-06 00:31:13 +08:00
Dreamacro
045edc188c
Style: code style
2021-06-10 14:05:56 +08:00