Introduction to the Typesafe Reactive Platform

Preview:

Citation preview

Introductionto the Typesafe Reactive Platform

Michael Nash, VP Capabilities

What?• Typesafe Reactive Platform

• Open Source and Commercial Offerings

• Business Benefits

• Value

What's Changed?

• (Much) More data

• More features

• More insight

• Smaller response times

• Less development time

• 100% Uptime... and Moore's law is capping out

So we go Multicore and

Distributed

Scaling Up (Vertical)

• A 10% bigger machine costs more than +10%

• There's an upper limit

• It's easy: Software doesn't change

• But you get...

• Single point of failure

• Single point of contention

• A hard upper limit

Scaling Out instead of Up (Horizontal)

• More machines - a cluster

• As soon as you have two machines you need

• Parallelism

• Non-Determinism

• Distributed State

• Now you have a design issue

You need a Reactive Platform

Theoretically, you can build such a system with any platform... eventually

A platform that supports concurrency and distribution makes it cost-effective

You get business value faster, with fewer errors and lower maintenance

Productivity and Effectiveness

Developing software at the speed and efficiency of yesterday isn't enough anymore

We need more resilient and elastic systems, and we need them faster

The Best TeamsThe best developers want to work with the best technologies

Attract and retain the best teamsGreat developers want to work with other great developers

Better Tools

We need better tools for - Time to Market - Scalability (without re-writes) - Less downtime - Fewer errors - Greater resilience

What's Reactive?Reactive is an approach to building software that is...

• Responsive

• Elastic

• Resilient

• Message-Driven

What's the Typesafe Reactive Platform?Open Source and Commercial Offerings

TRP: Open SourceScalaAkkaPlaySparkTooling

Scala

• Object-Functional Language

• Compile to JVM or JavaScript

• 7+ times higher velocity

• Attracts the best talent

Akka

The Actor Model for the JVMToolkit for building concurrent and scalable apps

• Elastic

• High performance

• Distributed by design

• Resilient

• Great base for Microservices

Play

• Developer-friendly

• Scalable

• Uses Akka under the hood

• RESTful APIs are easy

• Native JSON support

• Websocket, Comet, Streaming

Spark

• Big data/Fast data analytics

• Machine learning

• Massive scale

• In-memory distributed data sets

We'll have a whole webinar dedicated to exploring Spark on October 27th

Tooling

• Activator

• Templates

• Up and running quickly

• SBT

• Monitoring

• Microservices

A DevOps Approach• Older approaches try to hide

• The network

• Failure

• They try to enforce

• A global "now"

• Transaction isolation

• Homogenous deployment

A DevOps ApproachReactive systems embrace DevOps - The network is native - Failure is embraced - Time is a first-class citizen

Developers and Ops need to collaborateon the same team

TRP provides tools to make this easy

TRP: Commercial

World-class Support

Certified builds- Verified compatibility- Security audited- Open-source indemnification- Commercial activator templates

Production Monitoring

Technical Enhancements for Enterprise Projects- Slick bindings for Oracle and SQL Server- Split-brain resolver- Play SOAP bindings- Play User Quotas

ConductR

ConductR

• Reactive Application Manager

• Deploy and manage distributed applications

• Service Discovery and location independence

ConductR

• Provides a platform for all elements of the stack

• Sits above the infrastructure layer (e.g. Mesos)

• Ensures continuity of service

• Tunable load-balancing

Meet the Neighbours

• Java

• Full interoperability

• Huge ecosystem

• The JVM

• JavaScript

• Scala.js

• Support in Play

• Mesos

Infinity Stack• Akka• Spark• Cassandra• KafkaOn top of DCOS/MesosMaximum utilization of data center

Where does BoldRadius fit in?Largest and best team of Scala, Akka, Play, Spark and Mesos experts in North America

• Enablement

• Development

• Training

• Mentoring

• Building your Team

We have helped clients leverage the power of reactive systems in healthcare, finance, IoT, and many other industries.

Questions?If we can help enable your teams in Scala, Akka, Play, Spark or Mesos,

Please give us a call at 1-866-877-7531 or email us at info@boldradius.com

Recommended