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
rubylanguage in GraalVM withgu install ruby. - Rebuild the
rubylanguage in GraalVM withgu rebuild-images ruby.
- Install the
pythonlanguage in GraalVM withgu install python. - Rebuild the
pythonlanguage 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: