JavaOne 2015 Keynote Presentation

  • Published on
    11-Apr-2017

  • View
    774

  • Download
    0

Transcript

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    John Duimovich

    IBM Distinguished Engineer

    Java CTO

    @jduimovich

    Cask Strength Java: Aged 20 Years

    Tim Vanderham

    VP, Cloud Platform Services Development

    @vanderham

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Cheers to Java!

    2

    IBM celebrates 20 years of innovation in the leading industry led programming platform! Raise a glass! To the next 20 years!

    Sorry Duke, next year for you!

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Whats driving todays Enterprise

    3

    Ecosystem innovation and speed to market

    Frontline Decision Making Insights are driving processes re-invention

    Cloud

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Steer

    Dev/Test

    Deploy

    Operate DevOps

    Continuous

    Feedback

    Design Thinking

    Containers

    Extreme Agile

    Mobile

    IoT

    APIs

    Microservices

    Tooling

    Runtimes

    Cloud provides developers with instant access to the APIs, services and

    infrastructure they need to launch their ideas into the present.

    App development today is about speed and choice

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    So, checklist

    5

    Performance, Scalability, Robust, Developers, Tools, Open

    Auto-Scale, Management, DevOps, Application Services, Open

    What about APIs, Microservices, Mobile, Analytics ?

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    APIs are essential to composable business

    APIs

    Well designed APIs

    Do something useful

    Hide the complexity

    Have a simple interface

    Are easy to share and reuse

    Are well documented

    Can be used both inside and

    outside the company

    Can be combined with other APIs

    Agency

    developers

    Partner

    developers

    Internal

    developers

    Remote

    developers

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    APIs power the modern, digital supply chain

    API

    API

    API

    Enterprise IT team

    Systems of Record

    (Processes, services and data)

    Reuses

    Shares

    API

    Combines

    Shares

    Composes

    API Enhances

    External APIs

    API

    Consumes

    API

    API

    Developers can share, re-use, (re)combine and deliver new capabilities quicker

    Composing new capabilities using internally shared APIs and external APIs

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    API

    API

    Mobile users

    External Mobile

    development

    agency

    API

    Using APIs to ease collaboration with external Mobile dev teams

    Uses

    APIs

    Internal IT team

    Creates

    APIs Creates

    Mobile apps

    Uses backend

    processes, services and

    data

    External teams can build engaging and integrated Mobile apps faster

    Internal teams retain control and expose only what is required

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Mobility and Internet of Things drive new use cases, particularly around real-time contextual experience

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    APIs bring together existing systems and modern tools

    Internet of Things

    Mobile

    Public Cloud

    Social Web

    Partners

    Private Cloud

    Back-office Processes

    Analytics

    Services Databases

    CRM

    Systems of Interaction

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    IBM Bluemix The Digital Innovation Platform Build, run, scale and manage applications in the cloud

    Built on a foundation of open

    technology.

    Developers gain

    Prototype and deploy new apps. Fast.

    Access IBMs services, 3rd party and open source services. Instantly.

    Connect mobile apps with systems of record.

    Rapidly scale new apps and services with infrastructure services from IBM SoftLayer.

    Cloud Integration

    Security

    Internet of Things

    Bluemix provides expertise and services across market leading categories: Business Analytics

    Database

    Mobile and Web Apps

    DevOps

    Big Data

    Watson Services

    www.bluemix.net

    http://www.bluemix.net/

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years 12

    20 years, eh ?

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years 13

    IBM and Java: Happy 20th Birthday!

    IBM is a long-term licensees of Java, shipping compliant Java runtimes for 20 years Compliance, developer ecosystem, specifications, competitive runtimes and broad industry support

    First IBM JDKs supported 1.1.x Basic Classic port

    Second Generation added (up to 1.42) High performance Sovereign JIT, scalable garbage collectors Security including HW acceleration ORB (IDL, RMI) XML (Xerces / Xalan) Jikes RVM a JVM written fully in Java!

    Third Generation (Java 5 and up) New Runtime The J9 Virtual Machine and Testarossa JIT, modular, high performance Configurable embedded runtime to high watch to a mainframe Generational Type Accurate GC, Region Based GC (Balanced) Dynamic DLLs (Shared Classes) GPU Acceleration

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years 14

    Jan '02

    Jul '02

    Jan '03

    Jul '03

    Jan '04

    July '04

    Jan '05

    Jul '05

    Jan '06

    Jul '06

    Jan '07

    0

    50

    100

    150

    200

    Thou

    sand

    s

    IBM

    pSeries

    IBM

    xSeries

    JRockit

    HP

    HotSpot

    Sun

    HotSpt

    Old fun benchmarks over 4x in 5 years!

    SPARC

    Opteron

    Itanium2

    Power5

    Opteron

    Xeon

    Xeon

    Power6

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    Java 6.0.16.4 Java 6.1.8.4 Java 7.0.9.0 Java 7.1.3.0 Java 8.0.1.0 Java 8.0.1.10. proto

    1/Geometric mean of Databricks-core benchmarks time on Linux x86-64 (Haswell)

    1.0X 1.53X 2.00X 2.29X 2.47X 2.76X

    Java optimizations continued

    Apache Spark 1.4 running Databricks, IBM JDK

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Java for Big Data: Apache Spark

    Java's deep performance optimization enabler for new platforms Scala, Apache Spark, Apache Hadoop Big Data stack

    Optimization has delivered double digit percentage improvements JIT feedback to language/platform designers, New serialization optimizations

    Next Generation POWER and System Z offload exploitation Security microcoded crypto algorithms RDMA faster networking IO CAPI/Flash faster persistence for RDDs FPGA custom compression codecs GPU highly concurrent algorithm offloading

    Delivers 10x to 80x performance improvement in key components

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Significant Daytrader3 throughput improvements using HW Acceleration of SSL on Java 8

    Linux X86-64 AIX POWER 64

    ZOS System Z 64

    AES Encryption

    +21% +31% +41%

    ECC Encryption

    +267% +350% +437%

    Note - Comparison is versus identical Java 8 with hardware crypto disabled.

    Java 8 improvements to Java Cryptography Architecture (JCA)

    Micro benchmarks focused on JCA improved by up to 22X

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Performance on Cloud

    IBM Containers based on Docker 2x density, 2x faster startup

    18

    0

    20

    40

    1 3 5 7 9

    Tim

    e (

    s)

    Instances

    Startup Time

    NoSharing

    SharedClasses0

    1000

    2000

    1 2 3 4 5 6 7 8 9 10

    MB

    Instances

    Memory Use

    Throughput 14.5% faster

    Startup 17% faster

    Rampup 32% faster

    IBM Liberty Java 8 Bluemix improvements

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Whats Next?

    19

    Polyglot Cloud

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    JavaScript (yes, I know, its not Java)

    Node.js is a leading emerging standard for creating APIs and microservices Key for enabling mobile, IoT and new web applications

    Applications are being build with scalable APIs and microservices for Hybrid Cloud. Our customers are driving to digital transformation and are building out from Java applications

    Rapid innovation being driven by the Node.js and JavaScript communities Java ecosystem can learn from this

    Open Ecosystems enable interaction, learning, innovation! How can the Java and Node.js communities accelerate developer innovation? How can the Java and Node.js ecosystems drive interop, best practices?

    Solve new problems facing developers multi-language application debug, diagnostics, trace

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Microservices leveraging your existing Java environment and Node.js

    Enterprise

    Applications

    and Big Data

    Mobile, IoT, Web

    Aggregation

    Partners

    Apps

    Access

    Info

    Process

    Interaction

    API Lifecycle

    + -

    Hybrid Cloud

    Microservices =

    APIs+ Business Logic

    Java

    A Hybrid Cloud Architecture for Digital Transformation

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Polyglot and Java

    Polyglot and Cloud will drive our runtimes together

    Our customers expect to manage each language with a common set of tools!

    Interop is key Debug, trace, diagnostics FFI, Layout in Java 9/10

    22

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Polyglot with Node.js, Express

    IBM Health Center for Node.js

    Common Tools for Developers Learn once, use many places

    23

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Ruby method profiling via Health Center

    24

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Multiple Language Runtimes are Coming

    Common

    Components

    JIT GC Monitoring

    Threads

    Platform ports

    Diagnostics

    Tool APIs

    Polyglot,

    Common Tools,

    Interoperable,

    Performance

    Open Source

    https://www.youtube.com/watch?v=kOnyJurioyw

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    DEMO

    26

    What could John do in an hour and a IBM Vice President could demo? (yeah, its that easy)

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Fun with words and analytics

    27

    Personality Insights Java Starter Application The Watson Personality Insights service uses linguistic analytics to extract a spectrum of

    cognitive and social characteristics from the text data that a person generates through text

    messages, tweets, posts, and more.

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    http://duimovichjavaone2015.mybluemix.net/

    28

    http://duimovich.blogspot.com/2012/11/packed-objects-in-java.html

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    http://duimovichjavaone2015.mybluemix.net/

    29

    http://mreinhold.org/blog/jigsaw-modular-images

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Analytics also has pretty pictures

    30

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    API Demo

    31

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Import existing WebService

    Creating an API

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Set Rate Limits, Quotas, Security Policy

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Publish to Bluemix

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Custom API on Bluemix

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    http://smartbookstwitter.eu-gb.mybluemix.net/

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    Use Eclipse to direct deploy your application!

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    IBM support for Java Developers transition to the Cloud

    We are coming to you! JavaOne, Devoxx, Jfokus, meetups, User Groups, Hackathons with hands-on Workshops

    We have created tools, samples, courses Tutorials

    Sample code on

    Hands-on Labs using Cloud Services

    Courseware and certification

    http://www.ibm.com/developerworks/java/cloud/development/index.html

    Tools and Sample Code

    Courses and Tutorials

    https://developer.ibm.com/open/

    Open source projects and samples

    http://www.ibm.com/developerworks/cloud/bluemix/fundamentals/https://github.com/ibmecodhttp://www.ibm.com/developerworks/topics/liberty for java runtimehttp://www.ibm.com/developerworks/topics/liberty for java runtimehttp://www.ibm.com/developerworks/topics/liberty for java runtimehttp://www.ibm.com/developerworks/cloud/courses/cloud-app-developer-cert-prep/index.html

  • @jduimovich --@vanderham -- #bluemix -- #ibmcloud 2015 IBM Corporation

    JavaOne 2015 Cask Strength Java: Aged 20 Years

    @vanderham @jduimovich

    #bluemix -- #ibmcloud

    #javaone