Is Apache apisix java plugin runner production ready

414 views Asked by At

I am trying to implement an API gateway which has java plugin support. Have analyzed Kong, APIMan, APIsix, of which APIsix seems to be the best fit. But when i am trying to see the java plugin support, the github for java plugin runner displays as "This project is currently considered experimental." https://github.com/apache/apisix-java-plugin-runner

So wanted to check with community, if that plugin is experimental and is there any other way to use ApiSix for production with java plugins enabled.

Anymore options for java enabled plugin API gateways are also welcomed.

4

There are 4 answers

2
Zhiyuan Ju On

Apache APISIX Slack channel has the same question, link: https://the-asf.slack.com/archives/CUC5MN17A/p1653908139962639

Back to this question: Java Plugin Runner is used in production by some community users.

0
Hatz On

So I'll quote out the reply that I had received for the same question on the slack channel from one of the maintainers of the project, for reference.

In fact, from some information I’ve gathered, there are already some users using it in production environments. I can’t give an answer about whether it should be marked as production-ready or not. Here are some facts.

  1. the design pattern, API interface and custom development approach of this project has not changed significantly since its inception, and should not be a major upheaval in the future, as it follows some common gateway design approaches in the Java world.
  2. it is currently used in a rather primitive way, requiring clone project source code, but in the Java world, mature projects should import dependencies and use them by defining GAV in the dependency file.

Based on this, I think it is now production-ready in terms of stability, but not enough on other levels.

0
CheverJohn On

Here's the thing, from what I know, It has been used in a production environment in China(You can refer to this from the community bio-weekly talk).

So I would suggest you can try it.

Also, the plugin is still relatively easy to suit and I think could be better customized to suit your needs.

0
Vivek Singh On

the external java plugin is not working well when there is heavy load. We wanted to test the apisix and java plugins in heavy load environment. We configured 4 instances of apisix with 4gb as memory and heap size. The plugin process is getting killed and restarts itself during performance testing. The CPU usage is beyond 100% for all the 4 instances used.