Commit Graph

141 Commits

Author SHA1 Message Date
Yuansheng
4bb40df857 change(test): name style. 2019-09-10 10:07:29 +08:00
YuanSheng Wang
d8d7f018dc
feature: support to load routes from local yaml file. (#464)
* feature: support to load routes from local yaml file.
2019-09-09 17:42:20 +08:00
YuanSheng Wang
af3454c6ee
change: updated component lua-resty-radixtree to v0.7 and updated test (#470)
* change: updated component `lua-resty-radixtree` to v0.7 and updated test
  cases.
2019-09-05 17:23:06 +08:00
Yuansheng
9ff1d3fd44 feature: supported to filter route by Nginx variable for router radixtree_uri. 2019-09-02 15:31:21 +08:00
YuanSheng Wang
ad98a2bfdb
feature: supported to set more upstream options. (#451)
* feature: supported to set more upstream options.
* feature: supported to enable websocket for upstream.
2019-08-30 10:15:58 +08:00
YuanSheng Wang
1002765831
feature: support to match IPv6 request. (#341)
* CLI: supported to listen IPv6.

* feature: supported to match route by remote address.
2019-08-24 09:10:11 +08:00
YuanSheng Wang
275cfa8c73
change(router): use radixtree_sni as default SSL router. (#419)
* change(router): use `radixtree_sni` as default SSL router.

* change(route): use `radixtree_uri` as default HTTP(S) router.

* luarocks: removed `lua-resty-libr3` component by default.
2019-08-20 22:07:59 +08:00
YuanSheng Wang
560a3115a1
bugfix: avoided to cover the original service configuration. (#416)
* bugfix: avoided to cover the original service configuration.
2019-08-19 15:26:38 +08:00
YuanSheng Wang
59da5e78e5
bugfix: stop the checker if the config source is changed. (#406)
* bugfix: stop the checker if the config source is changed.

* test: added new test cases.
2019-08-19 14:02:33 +08:00
YuanSheng Wang
1ef5828090
feature: supported to use router lua-resty-radixtree. (#391)
* feature: supported new router `lua-resty-radixtree`.

* change(nginx.conf): sync from CLI.
2019-08-12 09:04:41 +08:00
Yuansheng
1ce988346a optimize(router): used local cache variable to avoid one lrucache call. 2019-08-04 23:20:55 +08:00
Yuansheng
66ac7ed200 doc(architecture): added new doc about router. 2019-08-04 23:20:55 +08:00
Yuansheng
3bc0d64b49 feature: supported to match route by host + uri. 2019-08-04 23:20:55 +08:00
Yuansheng
e4a9299b05 test(healthcheck): only match part error log, it is enough. 2019-08-04 15:06:14 +08:00
Yuansheng
7deeafa356 test: use smaller connection and change to short connection. 2019-08-02 21:51:58 +08:00
YuanSheng Wang
7e36cf5b9e
bugfix: failed to fetch upstream id in balancer phase. (#356)
* bugfix: failed to fetch upstream id in `balancer` phase.
* bugfix: cached `route` object maybe not a Lua table.
2019-08-02 16:29:00 +08:00
YuanSheng Wang
b8fd0da486
feature: allow user to define how to create route index. (#325) 2019-07-28 19:37:31 +08:00
Yuansheng
3b263fe2ee test: change the block code to smaller size. 2019-07-25 17:08:29 +08:00
Yuansheng
873192c033 test(route): added new test cases. 2019-07-25 17:08:29 +08:00
Yuansheng
7d5237c3ca test(healthcheck): ignore the error log which contain process exiting. 2019-07-25 13:45:49 +08:00
Yuansheng
f44b49105e test: fixed case under OSX. 2019-07-22 14:13:05 +08:00
YuanSheng Wang
526e0cb70c
feature(balancer): supported to set retries and timeouts, and set upstream node status by passive health check. (#288)
* feature(balancer): supported to set retries and timeouts, and set
  upstream node status by passive health check.
2019-07-22 11:27:30 +08:00
YuanSheng Wang
5e119c4828
luarocks: added new dependency lua-resty-healthcheck. (#249)
* luarocks: added new dependencies `lua-resty-healthcheck` and `lua-resty-worker-event`.

* feature(balancer): fetched health node from upstream nodes in balancer phase when enabled 
  healthcheck.
2019-07-17 23:52:15 +08:00
Yuansheng
1bb135af60 feature: supported for using wildcard to match the SNI of client https
request.
2019-06-24 18:49:30 -04:00
Yuansheng
7dbcea8571 feature: supported to manage ssl item by admin API and HTTPS client request. 2019-06-24 18:49:30 -04:00
YuanSheng Wang
ca1f5e7b0d
feature: added remote_addr attribute to route. (#142)
* feature: added `remote_addr` attribute to route.
2019-06-21 06:39:47 +08:00
Yuansheng
678e4228a0 feature: supported for using wildcard pattern to match host. 2019-06-20 10:00:07 -04:00
YuanSheng Wang
36338bc95b
feature: merged the configuration between route and service. (#133)
* feature: merged the configuration between route and service.
2019-06-19 15:51:28 +08:00
YuanSheng Wang
2647bdddcb
test: removed useless option. (#132) 2019-06-19 15:48:16 +08:00
YuanSheng Wang
912e8b106d
feature: supported to match host of client request. (#130) 2019-06-19 12:41:38 +08:00
YuanSheng Wang
c02d44f8e7
feature: added test cases about round-robin load balance algorithms. (#123)
* feature: added test cases about round-robin load balance algorithms.

* feature: added test cases about consistent hash algorithms.
2019-06-17 23:17:41 +08:00
Yuansheng
1921ea8ba5 feature: use schema check for service configuration.
Fix #111.
2019-06-17 09:08:16 +08:00
Yuansheng
5a966152ba test: missing no_shuffle() in node/sanity.t test case and added
more step information.
2019-06-16 12:33:13 +08:00
YuanSheng Wang
31cfc145bd
test: grep all of the error log and check it. (#109)
* travis: init the etcd server at first.
* test: grep all of the error log and check it.
2019-06-16 09:36:22 +08:00
YuanSheng Wang
dae069d51a
bugfix: returned 404 response if the service is not existing. (#107)
* bugfix: returned 404 response if the service is not existing.
2019-06-15 22:34:26 +08:00
YuanSheng Wang
16f5f27c90
feature: used schema to check the upstream configuration in etcd. (#105)
* feature: used schema to check the upstream configuration in etcd.
* change: used Lua table to avoid concat JSON string by manual for schema.
* optimize: changed a smaller wait time, faster way to know if there has new data coming.
2019-06-15 11:49:58 +08:00
YuanSheng Wang
32110aeba0
feature: returned 502 if there is no any valid upstream. (#100)
* feature: returned 502 if there is no any valid upstream.
2019-06-15 08:32:51 +08:00
YuanSheng Wang
f560316803
test: check the service config with json schema after fetched it form etcd. (#96)
* test: check the service config with `json schema` after fetched it form etcd.
* test: sleep one more seconds waiting for the etcd sync.
2019-06-14 17:08:44 +08:00
YuanSheng Wang
f270c6ff63
feature: used schema to check the etcd data if it is valid. (#91)
* feature: used schema to check the etcd data if it is valid.
2019-06-14 10:46:42 +08:00
YuanSheng Wang
2ebc2cee69
test: added a fully test case for gateway node. (#90)
* test: added a fully test case for gateway node.
2019-06-14 10:27:45 +08:00
Yuansheng
9ee285661f test: renamed test cases. 2019-06-14 08:08:59 +08:00