This is the codebase with all the demos for the presentation GraalVM and MicroProfile: A Polyglot Microservices Solution.
- number-api (a microservice endpoint that generate an id number, with versions for Java, Node and Ruby)
- number-api-client (a Java client to invoke the number-api)
- number-api-invoker (a Ruby and Python client to invoke the number-api)
- calculator-api (a Java and R Polyglot microservice)
Please refer to the GraalVM Installation Guide. These samples were tested with Graal VM version 22.3.x.
- Install the
ruby
language in GraalVM withgu install ruby
. - Rebuild the
ruby
language in GraalVM withgu rebuild-images ruby
.
- Install the
python
language in GraalVM withgu install python
. - Rebuild the
python
language in GraalVM withgu rebuild-images python
.
Run mvn clean install
. This will build all the projects.
NOTE:
When running Node or Ruby commands, make sure that you use the binaries from the bin folder inside GraalVM. You
can set a GRAAL_HOME
to point to Graal installation folder and then use it to reference the specific binaries easier.
Please refer to the specific README file for each sample: