apache / apisix

The Cloud-Native API Gateway
https://apisix.apache.org/blog/
Apache License 2.0
14.03k stars 2.46k forks source link

feat: Check external plugin readiness on APISIX startup #9531

Closed joyyir closed 1 day ago

joyyir commented 1 year ago

Description

I got a 503 response when apisix is ready and external plugin is not ready. The current version of apisix helm chart uses tcpSocket for readiness probe, but this is not sufficient when using external plugins as it does not check readiness of external plugins. In my opinion, A mechanism is needed which check the readiness of external plugin on APISIX startup time.

jiangfucheng commented 1 year ago

In current logic, APISIX will create ext-plugin child process in init_worker phase, if the child process start failed, it will print error logs and try to restart the ext-plugin process.

Check the child process if alive is easy, but it seems complicated to stop nginx in init_worker phase. Do you have any suggestions?

github-actions[bot] commented 2 weeks ago

This issue has been marked as stale due to 350 days of inactivity. It will be closed in 2 weeks if no further activity occurs. If this issue is still relevant, please simply write any comment. Even if closed, you can still revive the issue at any time or discuss it on the dev@apisix.apache.org list. Thank you for your contributions.

github-actions[bot] commented 1 day ago

This issue has been closed due to lack of activity. If you think that is incorrect, or the issue requires additional review, you can revive the issue at any time.