Hi,

We'd like DP to be more focused on data, so we planed to drop AdminAPI when
releasing APISIX 3.0, and ManagerAPI should be more stable of course.

Now, due to some reasons, you listed above:

> 2. The manager API is not stable, and the code quality and code coverage
> are not good.

I'm sure this issue would get resolved finally, and I hope someone who is
good at Golang would take this issue. If this one gets resolved, we only
have one issue to concern:

> custom plugins need to synchronize schema first then can display on the
dashboard;

Could we ONLY export one API from APISIX for ManagerAPI to get plugins'
schema? When manager-api is running, we keep these data in memory. (I'm not
sure if it's ok for now due to some background knowledge), if I'm wrong,
just point it out.


Best Regards!
@ Zhiyuan Ju <https://github.com/juzhiyuan>


Ming Wen <[email protected]> 于2021年3月29日周一 下午8:16写道:

> yes, you are right.
>
> But we still find a way to fix:
> 1. custom plugins need to synchronize schema first then can displayed on
> dashbaord;
> 2. The mangagr API is not stable, and the code quality and code coverage
> are not good.
>
> Thanks,
> Ming Wen, Apache APISIX PMC Chair
> Twitter: _WenMing
>
>
> Zexuan Luo <[email protected]> 于2021年3月29日周一 下午7:15写道:
>
> > I have two questions:
> > 1. we hope the CP part can be as powerful as istio's CP. If we want to
> > achieve that, we need to write it in Go, so that we can reuse most of
> > the libraries instead of writing our own one.
> > 2. It's hard to find people good at writing Lua. If we write CP in
> > Lua, it means both DP & CP require Lua developer.
> >
> > Ming Wen <[email protected]> 于2021年3月29日周一 上午11:58写道:
> > >
> > > hello, dev,
> > >
> > > The current dashboard mangagr API, after about half a year of
> > development,
> > > is not easy to use in the following issues:
> > > 1. Apache APISIX plug-in schema synchronization is not easy, which
> > requires
> > > that the DP and CP of Apache APISIX must use matching versions to work
> > > together;
> > > 2. custom plugins need to synchronize schema first then can displayed
> on
> > > dashbaord;
> > > 3. Most of the features of mangagr API are duplicated with Admin API;
> > > 4. The mangagr API is not stable, and the code quality and code
> coverage
> > > are not good;
> > >
> > > At the Apache APISIX meetup last Saturday, yuansheng and Junjie Ma and
> I
> > > also discussed about this topic, and we came up with a new solution:
> > > 1. For duplicate features between mangagr API and Admin API, mangagr
> API
> > is
> > > *directly* *forwarded* to Admin API;
> > > 2. The mangagr API only implements a small part of the logic that is
> not
> > > easy to handle due to the Lua language;
> > > 3. Of course, this will also bring a new issue, that is, the dashbaord
> > > project will be deployed together with Apache APISIX to work.
> > >
> > > This is the new flow chart:
> > > Admin -> dashboard -> mangagr API -> Admin API by APISIX -> etcd
> > >
> > > This change will delete most of the mangagr API code, but it is
> > transparent
> > > to users.
> > > It will solve the 4 issues mentioned above, and will introduce APISIX
> as
> > > trade off.
> > >
> > > what do you think?
> > >
> > > Thanks,
> > > Ming Wen, Apache APISIX PMC Chair
> > > Twitter: _WenMing
> >
>

Reply via email to