Skip to content
This repository was archived by the owner on Jul 22, 2024. It is now read-only.
andy shi edited this page Jan 19, 2018 · 6 revisions

Short Name

Soccer Dashboard with Akka and ReactJS.

Short Description

In this code pattern, we will create a Soccer Dashboard for English Premier League. The dashboard is created by web crawling the https://www.premierleague.com/ website. The back end utilizes Akka Actor, the front end is done with ReactJS and the data storage is using IBM Cloudant. And the code is deployed on Cloud Foundry.

Offering Type

Cloud

Introduction

When designing computer applications, the programming model needs to consider scalability, resilience, fault tolerant and most importantly high performance. The system should be able to cope with network latency, memory usage, and high computation required by the system. To overcome these situations, Akka's actor model allows you to create actors to cope with the modern computer architectures.

Author

Sanjeev Ghimire

Code

The GitHub source links can be found here.

Demo

Video

Overview

An actor is the smallest unit of your Akka-based application. An Akka is a container for several components. The components include actors state, behavior, mailbox, child actors and Supervisor Strategy. Akka ensures that the communication is through asynchronous messaging and its the only way to interact.

The main purpose of the pattern is to demonstrate how to define different Akka actors in an Akka cluster.

Flow

  1. Create actors for Akka
  2. Expose Akka rest APIs
  3. Crawler actor will start crawling and store information into DB
  4. Deploy the app into IBM Cloud Foundry
  5. Ready for user to interact with the app

Included components

  • Akka: A reactive stream toolkit
  • ReactJS: A JavaScript library for building user interfaces
  • Cloudant DB: A highly scalable and performant JSON database service
  • Cloud Foundry: An open source, multi cloud application platform as a service project

Featured technologies

  • Containers: Virtual software objects that include all the elements that an app needs to run.

Blog

Links

Clone this wiki locally