A project to demonstrate the advantages of a microservices architecture, as well as the flexibility and capability offered by the Netflix OSS components when paired with a Cassandra database
Shell PowerShell
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
docs
msl-pages @ 2804224
server
tools
.dockerignore
.gitignore
.gitmodules
Dockerfile
LICENSE.md
README.md
cassandra.dockerfile
docker-clean.sh
docker-readme.md

README.md

Kenzan Million Song Library

The Million Song Library (MSL) project is a microservices-based Web application built using AngularJS, a Cassandra NoSQL database, and several Netflix OSS tools such as Karyon, Zuul, and Eureka.

At Kenzan, we created the Million Song Library project to demonstrate the advantages of a microservices architecture, as well as the flexibility and capability offered by the Netflix OSS components when paired with a Cassandra database. However, the MSL project is more than just a demonstration. It also provides a foundation on which database-driven applications can be rapidly developed, tested, and deployed to the cloud.

To learn more about the MSL microservices architecture and the tools we used to build it, see the Million Song Library Project Documentation.

Getting Started

You can run the Million Song Library demonstration locally on a Mac, Linux, or Windows computer. Or deploy it to Amazon Web Services (AWS) and run it on an EC2 instance.

There are three ways to run the Million Song Library demonstration:

  • Automated Setup – Uses the setup.sh script (located in the /common directory) to automate much of the setup process. This is the quickest method for running the MSL demonstration locally on a Mac, Linux, or Windows system.

  • Manual Setup – Also runs the MSL demonstration locally on a Mac or Linux system. This method takes more time but lets you control how the various tools are installed on your system.

  • AWS Setup – Deploys the MSL demonstration to an EC2 instance on AWS. This method uses Vagrant to automate the cloud deployment process.

For step-by-step instructions for each setup method, see the Million Song Library Project Documentation.

Documentation

Use the following resources (located in the /docs directory) to learn more about the Kenzan Million Song Library:

  • Million Song Library Project Documentation – Overview of the Million Song Library microservices-based architecture as well as step-by-step instructions for running the MSL demonstration locally or deploying it to AWS.

  • API Documentation – Million Song Library API documentation, generated using Swagger.

  • Service Documentation – Description of the classes and methods for each Million Song Library microservice, generated using Javadoc.

  • Client/UI Documentation – Classes, functions, and variables for the Million Song Library client/UI, generated using ESDoc.

  • CSS Style Guide – CSS styles used in the Million Song Library client/UI, generated using KSS.

LICENSE

Copyright 2017 Kenzan, LLC http://kenzan.com

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Support

If you have questions about the Million Song Library demonstration, feel free to drop us a line at support_msl@kenzan.com.