In the Star Wars movies, pilot Han Solo explored the galaxy accompanied by a large, hairy creature known as a Wookiee. Scala developers can build microservices with a framework of the same name.
Oracle’s Wookiee is a Scala-based framework that uses technologies including the Akka toolkit, which is tailored to building concurrent, message-driven applications. The open source framework is meant to save developers from the tedium of building microservices and let them get “straight to the fun stuff,” its documentation states. Wookiee serves as a Scala-based counterpart to Oracle’s Project Helidon, which provides Java libraries for writing microservices.
What’s inside Wookiee
The Wookie platform repository contains the core, supporting components and a test library. Wookiee can be used as both a library and a service. A main class, called
HarnessService, is provided, along with out-of-the-box conveniences.
HarnessService is executed to use the framework as a service. Example projects are provided, along with Maven archetypes for developing components or a service.
The library includes:
- A command manager to execute commands.
- A component manager to load component .jar files and managers.
- A service manager to load user services, where an application’s primary business logic resides.
- Basic logging for components and services.
- Utility libraries for common functions in code.
- A health provider, providing a framework for health in services and components.
Components in Wookiee provide pluggable core functionality. These components are dynamically loaded into the framework, letting developers load only the components they want. A component is defined by a class object; the component trait is found in the wookie-core project. The framework will start any component found in a location defined by the component
class-key in the harness configuration file.
Where to download Wookiee
You can download Wookiee from GitHub.
This story, “Oracle’s Wookiee brings microservices to Scala developers” was originally published by
Share this post if you enjoyed! 🙂