This application shows an implementation of a fictitious airline called "Acme Air". The application was built with the some key business requirements: the ability to scale to billions of web API calls per day, the need to develop and deploy the application in public clouds (as opposed to dedicated pre-allocated infrastructure), and the need to support multiple channels for user interaction (with mobile enablement first and browser/Web 2.0 second).
There are two implementations of the application tier. Each application implementation, supports multiple data tiers. They are:
- Node.js
- MongoDB
- Cloudant
- Java
- WebSphere Liberty Profile to WebSphere eXtreme Scale
- WebSphere Liberty Profile to Mongodb
- Spring Boot to Mongodb (this repository)
Source:
- acmeair-common: The Java entities used throughout the application
- acmeair-loader: A tool to load the Java implementation data store
- acmeair-services: The Java data services interface definitions
acmeair-service-wxs: A WebSphere eXtreme Scale data service implementation- acmeair-service-morphia: A mongodb data service implementation
- acmeair-webapp: The Web 2.0 application and associated Java REST services
- Instructions for setting up and building the codebase
- Deploying the sample application to Websphere Liberty
- Websphere Liberty Profile to MongoDB Instructions
- Deploying to IBM Bluemix
- Acme Air for Node.js Instructions
- Extending Acme Air by adding additional data services.
- --
- Deploying the sample application with Spring Boot
- Spring Boot to MongoDB Instructions
Questions about the Acme Air Open Source Project can be directed to our Google Groups.
- Acme Air Users: https://groups.google.com/forum/?fromgroups#!forum/acmeair-users
We use github issues to report and handle bug reports.
We accept contributions via pull requests.
CLA agreements needed for us to accept pull requests soon can be found in the CLAs directory of the repository.