Xray-core/infra/conf
yuhan6665 fa5d7a255b
Least load balancer (#2999)
* v5: Health Check & LeastLoad Strategy (rebased from 2c5a71490368500a982018a74a6d519c7e121816)

Some changes will be necessary to integrate it into V2Ray

* Update proto

* parse duration conf with time.Parse()

* moving health ping to observatory as a standalone component

* moving health ping to observatory as a standalone component: auto generated file

* add initialization for health ping

* incorporate changes in router implementation

* support principle target output

* add v4 json support for BurstObservatory & fix balancer reference

* update API command

* remove cancelled API

* return zero length value when observer is not found

* remove duplicated targeted dispatch

* adjust test with updated structure

* bug fix for observer

* fix strategy selector

* fix strategy least load

* Fix ticker usage

ticker.Close does not close ticker.C

* feat: Replace default Health Ping URL to HTTPS (#1991)

* fix selectLeastLoad() returns wrong number of nodes (#2083)

* Test: fix leastload strategy unit test

* fix(router): panic caused by concurrent map read and write (#2678)

* Clean up code

---------

Co-authored-by: Jebbs <qjebbs@gmail.com>
Co-authored-by: Shelikhoo <xiaokangwang@outlook.com>
Co-authored-by: 世界 <i@sekai.icu>
Co-authored-by: Bernd Eichelberger <46166740+4-FLOSS-Free-Libre-Open-Source-Software@users.noreply.github.com>
Co-authored-by: 秋のかえで <autmaple@protonmail.com>
Co-authored-by: Rinka <kujourinka@gmail.com>
2024-02-17 22:51:37 -05:00
..
cfgcommon/duration Observatory related fixes (#788) 2021-10-26 13:00:31 +08:00
json Reformat code 2022-05-18 15:29:01 +08:00
serial Add sub-command "-dump" to "run". (#2854) 2023-12-29 11:16:48 -05:00
api.go Least load balancer (#2999) 2024-02-17 22:51:37 -05:00
blackhole_test.go v1.1.0 2020-12-04 09:36:16 +08:00
blackhole.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
buildable.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
common_test.go Reformat code 2022-05-18 15:29:01 +08:00
common.go Unify environment var readers 2023-10-29 15:16:57 -04:00
conf.go v1.1.0 2020-12-04 09:36:16 +08:00
dns_proxy_test.go Fix dns_proxy_test.go 2023-06-19 00:51:03 +00:00
dns_proxy.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
dns_test.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
dns.go feat(dns): Support DNS queryStrategy config per NameServer. 2023-09-22 10:34:36 -04:00
dokodemo_test.go v1.1.0 2020-12-04 09:36:16 +08:00
dokodemo.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
errors.generated.go v1.1.0 2020-12-04 09:36:16 +08:00
fakedns.go Fix some tests and format code (#830) 2021-12-14 19:28:47 -05:00
freedom_test.go v1.1.0 2020-12-04 09:36:16 +08:00
freedom.go Add PROXY Protocol support for freedom outbound 2024-02-05 10:08:51 -05:00
general_test.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
grpc.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
http_test.go v1.1.0 2020-12-04 09:36:16 +08:00
http.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
init.go Add Fake DNS support (#309) 2021-03-07 04:39:50 +00:00
lint.go Add Fake DNS support (#309) 2021-03-07 04:39:50 +00:00
loader.go v1.0.0 2020-11-25 19:01:53 +08:00
log.go Enhance DNS and Dialer (#341) 2021-03-06 16:29:17 +00:00
loopback.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
metrics.go feat: metrics including pprof, expvars 2022-03-29 00:01:14 -04:00
observatory.go Least load balancer (#2999) 2024-02-17 22:51:37 -05:00
policy_test.go v1.1.0 2020-12-04 09:36:16 +08:00
policy.go v1.1.0 2020-12-04 09:36:16 +08:00
reverse_test.go v1.1.0 2020-12-04 09:36:16 +08:00
reverse.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
router_strategy.go Least load balancer (#2999) 2024-02-17 22:51:37 -05:00
router_test.go Least load balancer (#2999) 2024-02-17 22:51:37 -05:00
router.go Least load balancer (#2999) 2024-02-17 22:51:37 -05:00
shadowsocks_test.go remove deprecate ciphers in shadowsocks (#710) 2021-09-17 04:13:07 +08:00
shadowsocks.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
socks_test.go v1.1.0 2020-12-04 09:36:16 +08:00
socks.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
transport_authenticators.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
transport_internet.go Add option realitySettings.masterKeyLog 2024-01-11 10:57:04 -05:00
transport_test.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
transport.go Add gRPC Transport support (#356) 2021-03-14 15:02:07 +00:00
trojan.go fix(conf): add Windows support for Unix Domain Socket in the fallback settings 2023-12-29 11:07:41 -05:00
vless_test.go Legends never die (#1725) 2023-03-04 10:39:26 +00:00
vless.go fix(conf): add Windows support for Unix Domain Socket in the fallback settings 2023-12-29 11:07:41 -05:00
vmess_test.go Clean legacy vmess (#2199) 2023-06-12 10:32:25 -04:00
vmess.go refactor(deps): replace github.com/golang/protobuf with google.golang.org/protobuf 2023-08-10 10:43:27 -04:00
wireguard_test.go WireGuard Inbound (User-space WireGuard server) (#2477) 2023-11-17 22:27:17 -05:00
wireguard.go WireGuard Inbound (User-space WireGuard server) (#2477) 2023-11-17 22:27:17 -05:00
xray_test.go Override outbounds in multi config files (#2659) 2023-10-23 21:34:58 -04:00
xray.go Least load balancer (#2999) 2024-02-17 22:51:37 -05:00