Don't use the RestClusterClient; you can generate one from the openapi spec (see the docs).
On 16/11/2023 20:36, Adrian Alexandru Vasiliu wrote:
Hello,
For a programmatic use in Java of the Flink REST API, which of these 
options would be the best choice?
 1. Direct use via a REST client
 2. The RestClusterClient
    
<https://nightlies.apache.org/flink/flink-docs-stable/api/java/index.html?org/apache/flink/client/program/rest/RestClusterClient.html>
 API

RestClusterClient is appealing, because it embeds a bunch of code that we wouldn't need to write and maintain.
But I also see reasons to stay away from it:

 1. Its javadoc
    <https://javadoc.io/doc/org.apache.flink/flink-clients/latest/index.html> 
can
    be found by searching the web (versioned per version of Flink /
    flink-clients), but I didn't find a user documentation.
    https://nightlies.apache.org/flink/flink-docs-stable/
    <https://nightlies.apache.org/flink/flink-docs-stable/> doesn't
    seem to mention RestClusterClient.
 2. Its API isn't marked @Public nor @PublicEvolving.
3.
    In 2019, Till Rohrmann (Flink PMC member) wrote: "Flink's cluster
    REST API has been designed to work with any REST client. The
    RestClusterClient which comes with the flink-clients module is
    intended for internal usage."
    https://stackoverflow.com/a/56127387/1723384
    <https://stackoverflow.com/a/56127387/1723384>
4.
    If at a later time we would bring authentication to the Flink REST
    API, say via nginx proxy side-car, RestClusterClient wouldn't know
    how to deal with it.

Do I miss something?
Would the community nowadays recommend using RestClusterClient, at least in situations without authentication?
Thanks,
Adrian
Unless otherwise stated above:

Compagnie IBM France
Siège Social : 17, avenue de l'Europe, 92275 Bois-Colombes Cedex
RCS Nanterre 552 118 465
Forme Sociale : S.A.S.
Capital Social : 664 069 390,60 €
SIRET : 552 118 465 03644 - Code NAF 6203Z

Reply via email to