SlideShare a Scribd company logo
Above the Clouds:
   Introducing Akka
           Vojin Jovanovic, EPFL
          Philipp Haller, Typesafe

Based on material provided by the Akka team at Typesafe
The problem

It is way too hard to build:
1. correct highly concurrent systems
2. truly scalable systems
3. fault-tolerant systems that self-heal
...using “state-of-the-art” tools
Vision

Simpler
     Concurrency
     Scalability
     Fault-tolerance
Vision

...with a single unified
     Programming Model
     Managed Runtime
     Open Source Distribution
ARCHITECTURE



            CORE
           SERVICES
ARCHITECTURE
           Play!     Play-mini     Microkernel




                       Camel         AMQP
           TestKit
                     integration   integration




ADD-ON
MODULES
ARCHITECTURE
 Play!     Play-mini     Microkernel




             Camel         AMQP
 TestKit
           integration   integration




                                       TYPESAFE
                                        STACK
                                       ADD-ONS
WHERE IS AKKA USED?
                      SOME EXAMPLES:

FINANCE                                 TELECOM
•   Stock trend Analysis & Simulation
                                        •   Streaming media network gateways

•   Event-driven messaging systems
                                        SIMULATION
BETTING & GAMING                        •   3D simulation engines

•   Massive multiplayer online gaming
                                        E-COMMERCE
•   High throughput and transactional
                                        •   Social media community sites
    betting
Akka Actors
one tool in the toolbox
ACTOR CONCURRENCY

•   Actors = lightweight isolated processes
•   No shared state
•   Asynchronous message passing (non-blocking)
•   Sequential message processing (one message at a
    time)
•   Actor mailbox: queue of not-yet-processed messages
Actor

Behavior



 State
Event-
 driven

Actor

Behavior



 State
Event-
 driven

Actor

Behavior



 State
Event-
 driven

Actor

Behavior



 State
Event-
 driven

Actor

Behavior



 State
Event-
 driven

Actor

Behavior



 State
Actor

Behavior



 State
Event-
 driven

Actor

Behavior



 State
Actors
case object Tick

class Counter extends Actor {
  var counter = 0

    def receive = {
      case Tick =>
        counter += 1
        println(counter)
    }
}


            Scala API
Actors
class Counter extends UntypedActor {
  int counter = 0;

    void onReceive(Object msg) {
      if (msg.equals(“Tick”)) {
        counter += 1;
        System.out.println(counter);
      }
    }
}


                Java API
ACTOR SYSTEMS
• Actors are created in the context of an actor system
• Actor system = unit for managing shared facilities:
    scheduling services, configuration, logging etc.
•   Several actor systems with different configurations
    may co-exist within the same JVM instance (there is
    no global state within Akka itself)
•   There may be millions of actors within a single actor
    system
Create Application

val conf = ConfigFactory.load(“application”)

val system = ActorSystem(“my-app”, conf)




                 Scala API
Create Application
Config conf =
  ConfigFactory.load(“application”);

 ActorSystem system =
   ActorSystem.create(“my-app”, conf);



                Java API
Create Actors

val counter = system.actorOf(Props[Counter])



          counter is an ActorRef
          Creates a top-level actor

                  Scala API
Create Actors

ActorRef counter =
  system.actorOf(new Props(Counter.class));



          Creates a top-level actor


                  Java API
Stop actors

       system.stop(counter)




...also stops all actors in the hierarchy below
Send: !

counter ! Tick



  fire-forget

   Scala API
...or use tell

 counter tell Tick


     fire-forget

      Scala API
...or use tell

counter.tell(tick);


     fire-forget

      Java API
Send: ?
import akka.patterns.ask

// returns a future
val future = actor ? message

future onSuccess {
  case x => println(x)
}


      returns a Future
         Scala API
Reply
class SomeActor extends Actor {
  def receive = {
    case User(name) =>
      // reply to sender
      sender ! (“Hi ” + name)
  }
}



           Scala API
Reply
class SomeActor extends UntypedActor {
  void onReceive(Object msg) {
    if (msg instanceof User) {
      User user = (User) msg;
      // reply to sender
      getSender().tell(“Hi ” + user.name);
    }
  }
}


                 Java API
...or use ask
import akka.patterns.ask

// returns a future
val future = actor ask message

future onSuccess {
  case x => println(x)
}



          Scala API
...or use ask
import static akka.patterns.Patterns.ask;

Future<Object> future = ask(actor, message, timeout);

future.onSuccess(new OnSuccess<Object>() {
  public void onSuccess(String result) {
    System.out.println(result);
  }
});




                      Java API
Future
val f = Promise[String]()

f onComplete { ... }
  onSuccess { ... }
  onFailure { ... }
f foreach { ... }
f map { ... }
f flatMap { ... }
f filter { ... }
f zip otherF
f fallbackTo otherF

Await.result(f, 5 seconds)


           Scala API
Future
firstCompletedOf
                       fold
                                  reduce
       find
                     traverse
sequence



 Combinators for collections of Futures
Promise
 promise1.successful(...)
 promise2.failure(...)
 promise3.completeWith(future)




Promise is the write side of the Future
       Future is the read side
become
context become {
  // new body
  case NewMessage =>
    ...
}


      Scala API
become
context.become(new Procedure[Object]() {
  void apply(Object msg) {
    // new body
    if (msg instanceof NewMessage) {
      NewMessage newMsg = (NewMessage)msg;
      ...
    }
  }
});


                 Java API
unbecome

context.unbecome()
Scale up?
ThreadPoolExecutor
ThreadPoolExecutor
new ForkJoinPool
new ForkJoinPool
New
Remote Actors
Name

val actor = system.actorOf(Props[MyActor], “my-service”)




             Bind the actor to a name

                      Scala API
Name

ActorRef actor = system.actorOf(
  new Props(MyActor.class), “my-service”);




      Bind the actor to a name

                Java API
Deployment

    Actor name is virtual and
decoupled from how it is deployed
Deployment

If no deployment configuration exists
    then actor is deployed as local
Deployment

The same system can be configured
as distributed without code change
     (even change at runtime)
Deployment

Write as local but deploy as distributed
 in the cloud without code change
Deployment

 Allows runtime to dynamically
and adaptively change topology
Deployment configuration
   akka {
     actor {
       deployment {
         /my-service {
            router = "round-robin"
            nr-of-instances = 3
            target {
              nodes = ["wallace:2552", "gromit:2552"]
            }
          }
       }
     }
   }
Let it crash
fault-tolerance
The

Erlang
 model
Error
Kernel
Node 1   Node 2
Parental automatic supervision


// from within an actor
val child = context.actorOf(Props[MyActor], “my-actor”)




transparent and automatic fault handling by design


                      Scala API
Parental automatic supervision


       // from within an actor
       ActorRef child = getContext().actorOf(
         new Props(MyActor.class), “my-actor”);




transparent and automatic fault handling by design


                     Java API
Parental automatic supervision
           Guardian System Actor
Parental automatic supervision
           Guardian System Actor




            system.actorOf(Props[Foo], “Foo”)
Parental automatic supervision
              Guardian System Actor




        Foo   system.actorOf(Props[Foo], “Foo”)
Parental automatic supervision
                Guardian System Actor




        Foo




              context.actorOf(Props[A], “A”)
Parental automatic supervision
                Guardian System Actor




        Foo




       A      context.actorOf(Props[A], “A”)
Parental automatic supervision
              Guardian System Actor




        Foo                           Bar




                                            A
       A          C




              E                                 C
  B
                                      B

       D
Name resolution
           Guardian System Actor




     Foo                           Bar




                                         A
    A          C




           E                                 C
B
                                   B

     D
Name resolution
                 Guardian System Actor



    /Foo

           Foo                           Bar




                                               A
           A         C




                 E                                 C
B
                                         B

           D
Name resolution
                     Guardian System Actor



        /Foo

               Foo                           Bar



    /Foo/A
                                                   A
               A         C




                     E                                 C
B
                                             B

               D
Name resolution
                            Guardian System Actor



               /Foo

                      Foo                           Bar



           /Foo/A
                                                          A
                      A         C


/Foo/A/B

                            E                                 C
      B
                                                    B

                      D
Name resolution
                               Guardian System Actor



                  /Foo

                         Foo                           Bar



             /Foo/A
                                                             A
                         A         C


/Foo/A/B

                               E                                 C
      B
                                                       B

                         D
           /Foo/A/D
Supervision
class MySupervisor extends Actor {
  def supervisorStrategy = OneForOneStrategy({
   case _: ActorKilledException => Stop
   case _: ArithmeticException => Resume
   case _: Exception            => Restart
   case _                       => Escalate
   },
   maxNrOfRetries = None,
   withinTimeRange = None)

    def receive = {
      case NewUser(name) =>
        ... = context.actorOf[User](name)
    }
}                 Scala API
Supervision
class MySupervisor extends Actor {
  def supervisorStrategy = AllForOneStrategy
                           OneForOneStrategy({
   case _: ActorKilledException => Stop
   case _: ArithmeticException => Resume
   case _: Exception             => Restart
   case _                        => Escalate
   },
   maxNrOfRetries = None,
   withinTimeRange = None)

    def receive = {
      case NewUser(name) =>
        ... = context.actorOf[User](name)
    }
}                 Scala API
Manage failure
class FaultTolerantService extends Actor {
  ...
  override def preRestart(
    reason: Throwable, message: Option[Any]) = {
    ... // clean up before restart
  }
  override def postRestart(reason: Throwable) = {
    ... // init after restart
  }
}


                   Scala API
watch/unwatch
val buddy: ActorRef = ...

val watcher = system.actorOf(Props(
  new Actor {
    context.watch(buddy)

         def receive = {
           case t: Terminated => ...
         }
     }
))


                 Scala API
...and much much more
                       TestKit            FSM
  HTTP/REST
                    EventBus        Pub/Sub

Durable Mailboxes                Camel
                                              IO
       Microkernel         SLF4J
                                         AMQP
  ZeroMQ              Dataflow
                                    Transactors
       Agents          Spring
get it and learn more
       http://akka.io
    http://typesafe.com
Typesafe Console
Typesafe Console
Akka 2.1+
The runtime provides

    Decentralized P2P gossip-based
  cluster membership (dynamo-style
   w/ vector clocks, hand-off on fail-
               over etc.)
The runtime provides

  Automatic adaptive cluster rebalancing
The runtime provides

  Automatic cluster-wide deployment
The runtime provides

  Highly available configuration service
The runtime provides

  Automatic replication with automatic
      fail-over upon node crash
The runtime provides

   Transparent and user-configurable
            load-balancing
Akka Node
Akka Node
val ping = actorOf(Props[Ping], “ping”)
val pong = actorOf(Props[Pong], “pong”)

ping ! Ball(pong)
Akka Node
val ping = actorOf(Props[Ping], “ping”)
val pong = actorOf(Props[Pong], “pong”)

ping ! Ball(pong)




Ping                           Pong
Akka Node

    Akka
Cluster Node




               Ping   Pong
Akka
                               Cluster Node



   Akka Node

    Akka                                                        Akka
Cluster Node                                                Cluster Node




                        Ping                  Pong




             Akka                                    Akka
         Cluster Node                            Cluster Node
Akka
                           Cluster Node




    Akka                                                   Akka
Cluster Node                                           Cluster Node




                    Ping                  Pong




         Akka                                   Akka
     Cluster Node                           Cluster Node
Akka
                               Cluster Node




    Akka                                                           Akka
Cluster Node           akka {                                  Cluster Node
                         actor {
                           deployment {
                             /pong {
                                router = "round-robin"
                                nr-of-instances = 3
                              }
                           }
                    Ping }                       Pong
                       }




         Akka                                           Akka
     Cluster Node                                   Cluster Node
Akka
                                Pong
                            Cluster Node




    Akka                                                        Akka
    Ping                                                        Pong
Cluster Node        akka {                                  Cluster Node
                      actor {
                        deployment {
                          /pong {
                             router = "round-robin"
                             nr-of-instances = 3
                           }
                        }
                      }
                    }




         Akka                                        Akka
         Pong
     Cluster Node                                Cluster Node
Akka
                                Pong
                            Cluster Node




    Akka                                                        Akka
    Ping                                                        Pong
Cluster Node        akka {                                  Cluster Node
                      actor {
                        deployment {
                          /pong {
                             router = "round-robin"
                             nr-of-instances = 3
                           }
                        }
                      }
                    }
                                                           Fail-over



                       Redirect references
         Akka                                        Akka
                                                     Pong
     Cluster Node                                Cluster Node
Develop
Migration
Scala IDE   sbt
                  Manager
Run



                  Migration
Scala IDE   sbt
                  Manager
Scala         Akka           Play




                            Migration
Scala IDE      sbt
                            Manager
Manage



       Scala         Akka               Play




                                Migration
Scala IDE      sbt
                                Manager
Typesafe                                           Typesafe
                                           Provisioning
               Subscription                                         Console




       Scala                        Akka                     Play




                                                     Migration
Scala IDE                     sbt
                                                     Manager
Typesafe                                           Typesafe
                                           Provisioning
               Subscription                                         Console




       Scala                        Akka                     Play




                                                     Migration
Scala IDE                     sbt
                                                     Manager
live demo

http://console-demo.typesafe.com
sample video
      of the
Typesafe Console
sample video
      of the
Typesafe Console
EOF

More Related Content

Similar to Akka JUGL 2012

First glance at Akka 2.0
First glance at Akka 2.0First glance at Akka 2.0
First glance at Akka 2.0
Vasil Remeniuk
 
Akka (BeJUG)
Akka (BeJUG)Akka (BeJUG)
Testing akka-actors
Testing akka-actorsTesting akka-actors
Testing akka-actors
Knoldus Inc.
 
Akka Actors: an Introduction
Akka Actors: an IntroductionAkka Actors: an Introduction
Akka Actors: an Introduction
Roberto Casadei
 
Building Massively Scalable application with Akka 2.0
Building Massively Scalable application with Akka 2.0Building Massively Scalable application with Akka 2.0
Building Massively Scalable application with Akka 2.0
Knoldus Inc.
 
a million bots can't be wrong
a million bots can't be wronga million bots can't be wrong
a million bots can't be wrong
Vasil Remeniuk
 
Василий Ременюк «Курс молодого подрывника»
Василий Ременюк «Курс молодого подрывника» Василий Ременюк «Курс молодого подрывника»
Василий Ременюк «Курс молодого подрывника»
e-Legion
 
GR8Conf 2011: GPars
GR8Conf 2011: GParsGR8Conf 2011: GPars
GR8Conf 2011: GPars
GR8Conf
 
Akka: Distributed by Design
Akka: Distributed by DesignAkka: Distributed by Design
Akka: Distributed by Design
patriknw
 
Introduction to Actor Model and Akka
Introduction to Actor Model and AkkaIntroduction to Actor Model and Akka
Introduction to Actor Model and Akka
Yung-Lin Ho
 
Introducing Akka
Introducing AkkaIntroducing Akka
Introducing Akka
Meetu Maltiar
 
"Walk in a distributed systems park with Orleans" Евгений Бобров
"Walk in a distributed systems park with Orleans" Евгений Бобров"Walk in a distributed systems park with Orleans" Евгений Бобров
"Walk in a distributed systems park with Orleans" Евгений Бобров
Fwdays
 
Advanced akka features
Advanced akka featuresAdvanced akka features
Advanced akka features
Grzegorz Duda
 
Con-FESS 2015 - Having Fun With Javassist
Con-FESS 2015 - Having Fun With JavassistCon-FESS 2015 - Having Fun With Javassist
Con-FESS 2015 - Having Fun With Javassist
Anton Arhipov
 
Monitoring And Tuning Glass Fish In The Wild Community One 2009
Monitoring And Tuning Glass Fish In The Wild   Community One 2009Monitoring And Tuning Glass Fish In The Wild   Community One 2009
Monitoring And Tuning Glass Fish In The Wild Community One 2009
SteveMillidge
 
Monitoring and Tuning GlassFish
Monitoring and Tuning GlassFishMonitoring and Tuning GlassFish
Monitoring and Tuning GlassFish
C2B2 Consulting
 
Intro to scala
Intro to scalaIntro to scala
Intro to scala
Joe Zulli
 
Akka london scala_user_group
Akka london scala_user_groupAkka london scala_user_group
Akka london scala_user_group
Skills Matter
 
EcmaScript 6 - The future is here
EcmaScript 6 - The future is hereEcmaScript 6 - The future is here
EcmaScript 6 - The future is here
Sebastiano Armeli
 
Java Intro
Java IntroJava Intro
Java Intro
backdoor
 

Similar to Akka JUGL 2012 (20)

First glance at Akka 2.0
First glance at Akka 2.0First glance at Akka 2.0
First glance at Akka 2.0
 
Akka (BeJUG)
Akka (BeJUG)Akka (BeJUG)
Akka (BeJUG)
 
Testing akka-actors
Testing akka-actorsTesting akka-actors
Testing akka-actors
 
Akka Actors: an Introduction
Akka Actors: an IntroductionAkka Actors: an Introduction
Akka Actors: an Introduction
 
Building Massively Scalable application with Akka 2.0
Building Massively Scalable application with Akka 2.0Building Massively Scalable application with Akka 2.0
Building Massively Scalable application with Akka 2.0
 
a million bots can't be wrong
a million bots can't be wronga million bots can't be wrong
a million bots can't be wrong
 
Василий Ременюк «Курс молодого подрывника»
Василий Ременюк «Курс молодого подрывника» Василий Ременюк «Курс молодого подрывника»
Василий Ременюк «Курс молодого подрывника»
 
GR8Conf 2011: GPars
GR8Conf 2011: GParsGR8Conf 2011: GPars
GR8Conf 2011: GPars
 
Akka: Distributed by Design
Akka: Distributed by DesignAkka: Distributed by Design
Akka: Distributed by Design
 
Introduction to Actor Model and Akka
Introduction to Actor Model and AkkaIntroduction to Actor Model and Akka
Introduction to Actor Model and Akka
 
Introducing Akka
Introducing AkkaIntroducing Akka
Introducing Akka
 
"Walk in a distributed systems park with Orleans" Евгений Бобров
"Walk in a distributed systems park with Orleans" Евгений Бобров"Walk in a distributed systems park with Orleans" Евгений Бобров
"Walk in a distributed systems park with Orleans" Евгений Бобров
 
Advanced akka features
Advanced akka featuresAdvanced akka features
Advanced akka features
 
Con-FESS 2015 - Having Fun With Javassist
Con-FESS 2015 - Having Fun With JavassistCon-FESS 2015 - Having Fun With Javassist
Con-FESS 2015 - Having Fun With Javassist
 
Monitoring And Tuning Glass Fish In The Wild Community One 2009
Monitoring And Tuning Glass Fish In The Wild   Community One 2009Monitoring And Tuning Glass Fish In The Wild   Community One 2009
Monitoring And Tuning Glass Fish In The Wild Community One 2009
 
Monitoring and Tuning GlassFish
Monitoring and Tuning GlassFishMonitoring and Tuning GlassFish
Monitoring and Tuning GlassFish
 
Intro to scala
Intro to scalaIntro to scala
Intro to scala
 
Akka london scala_user_group
Akka london scala_user_groupAkka london scala_user_group
Akka london scala_user_group
 
EcmaScript 6 - The future is here
EcmaScript 6 - The future is hereEcmaScript 6 - The future is here
EcmaScript 6 - The future is here
 
Java Intro
Java IntroJava Intro
Java Intro
 

Recently uploaded

Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
BibashShahi
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
Edge AI and Vision Alliance
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
c5vrf27qcz
 

Recently uploaded (20)

Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Artificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic WarfareArtificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic Warfare
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
 

Akka JUGL 2012