java at fujitsu - java community process · pdf filespecjbb benchmark copyright 2016 ......

21
2016.9.16 Kenji Kazumura Fujitsu Limited Java at Fujitsu Copyright 2016 FUJITSU LIMITED JCP EC meeting

Upload: vuongkhuong

Post on 26-Mar-2018

244 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

2016.9.16

Kenji Kazumura

Fujitsu Limited

Java at Fujitsu

Copyright 2016 FUJITSU LIMITED

JCP EC meeting

Page 2: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Agenda

Copyright 2016 FUJITSU LIMITED

Interstage and History

Fujitsu Cloud and Java

1

Page 3: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

About me

Copyright 2016 FUJITSU LIMITED

Java VM developer

Working for Fujitsu

Interstage Application Server

JSR 204 Expert Group

Author of On-line Java Learning Courses

https://directshop.fom.fujitsu.com/shop/commodity_param/ctc/el_middleit/shc/0/cmc/ASP03737

JCP (Java Community Process)

https://directshop.fom.fujitsu.com/shop/commodity_param/ctc/el_middleit/shc/0/cmc/ASP03738

2

Page 4: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Agenda

Copyright 2016 FUJITSU LIMITED

Interstage and History

Fujitsu Cloud and Java

3

Page 5: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Interstage Application Server

Copyright 2016 FUJITSU LIMITED

Administration

Console

Application

Administration

Web ServiceSOAP/REST/XMLSecurity Java EE/J2EECORBA

EJB COBOL/C

Servlet

Mainframe ERP CRM

Back End

System

Customer Experience

Workflow

Business IntelligenceBrowser

Rich ClientSmart Devices

Voice Recognition

Cloud

Interstage Application Server

On-Premises Virtual Environment Cloud Computing

Service Bus

Service Bus

Database

K5

A5 for Micorosoft Azure

Microsoft Azure

Java EE certified application server

GlassFish based

J2EE and CORBA are also available

4

Page 6: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Interstage History

Copyright 2016 FUJITSU LIMITED

Pra

ctic

al T

ech

.

1998~2005 2006 2007 2008 2009 2010 2011 2012-2014 2015

Sta

nd

ard

CORBA

Web技術

J2EE

SOAPUDDI

Apache

J2SE 5.0

GlassFish V2

smart tuning TM

Java EE 6

cloud

multiservers

Java SE 7

jQuery MobileV1.0

Java SE 6GlassFish V3

jQuery MobileV1.1.1

smart setup TM

work unit

virutualization

containers

SOA

Java EE 5.0

Tomcat

InterstageApplication Server

V1~V7

InterstageApplication Server

V8

InterstageApplication Server

V9

InterstageApplication Server

V10

InterstageApplication Server

V11

J2SE 1.4

detecting potentialproblems

auto expansions

audit

Fujitsu JDK

J2EE 1.4

dynamic change

TRIOLE

priority control

SSO

definition less

multi controls

OLTP

GlassFish V3.1 jQuery UIV1.10.0

multi tenant

Silo System Virtualization/Cloud

5

Page 7: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

GlassFish

Copyright 2016 FUJITSU LIMITED

Fujitsu reports more than 100 issues for

GlassFish, but …

GlassFish is RI for Java EE

After RI released, the community is not

so active.

6

Page 8: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

GlassFish activity

Copyright 2016 FUJITSU LIMITED

https://www.openhub.net/p/glassfish

7

Page 9: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

SPECjbb benchmark

Copyright 2016 FUJITSU LIMITED

http://www.finanznachrichten.de/nachrichten-2013-07/27476567-fujitsu-m10-achieves-world-record-performance-running-java-application-011.htm

Fujitsu achieved world-record several times.

Date bops

2006/2 PRIMEPOWER 2500 1,157,619

2013/7 M10-4S 35,912,688

Date max-jOPS critical-jOPS

2013/7 M10-4S/SPARC64X 83,909 50,562

2014/4 M10-4S/SPARC64X+ 119,521 67,698

2016/2 M10-4S/SPARC64X+ 450,467 278,958

SPECjbb2005

SPECjbb2013/2015

http://www.fujitsu.com/jp/products/computing/servers/unix/sparc/concept/performance/m10-4s-specjbb2013-4cpu/

http://jp.fujitsu.com/platform/server/sparc/concept/performance/m10-4s-specjbb2013-4cpu-2.html

http://www.fujitsu.com/jp/products/computing/servers/unix/sparc/concept/performance/m10-4s-specjbb2015/index.html

8

Page 10: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Agenda

Copyright 2016 FUJITSU LIMITED

Interstage and History

Fujitsu Cloud and Java

9

Page 11: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Fujitsu Cloud Services

Copyright 2016 FUJITSU LIMITED

Device

Data Center

/Security

PC/ Tablet/ Smart phone

FUJITSU Managed Infrastructure Service FENICS / Cloud Network Connection Service Network

IaaS

Data Center/ FUJITSU Security Solution

PaaS

SaaS SaaS (approx. 100 types)

Implement

OperationCloud Integration Service

(Multi-Vender, Hybrid, Integrated Operation, Industry Specialization)

Customer Data Center

Physical Dedicated Virtual Private Virtual Shared

Mobile Application Development

Platform[MobileSUITE]

Cloud Coordination/ Integration Service

[RunMyProcess]

O2O Service Integration Platform[Smart Biz Connect]

IoT Data Utilization Platform

FUJITSU Software

Big Data Platform

Multi Cloud Service Management

Business Application Platform

Interstage

Integrated Operation Management

Systemwalker

Cloud management software

Dynamic Integrated Cloud

[PRIMEFLEX for Cloud]

Trusted

Public

S5Private Hosted

A5for Microsoft

Azure

NIFTY

Cloud

HyConnect/

Open

Public

Multi Cloud Service Management

Public Cloud Service

K5FUJITSU Integrated System

10

Page 12: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

K5 Services

Copyright 2016 FUJITSU LIMITED

System resource (virtual / physical, shared / dedicated)

PaaS

Iaa

S

System of Record System of Engagement

Component/Service/Template for particular work and

industry Inventory/Order management etc.

Development

infrastructure

Specific business

type/ Common service

Common service

Workload

management

infrastructure

Opera

tion m

anagem

ent p

latfo

rm

Web-API managementPublication and management of Web-API

Business/operation managementID/Charging/Authentication management, Backup, Log

Business application

development platformIntegrated management of processes, rule

& data

CF Service

(Cloud Foundry)Development and execution environment of

Cloud Foundry

Workload Management platformDesign and construct system configuration and operation as a package

Extensions functionalityRDB, message, mail, IDS/IPS, DNS, CDN

11

Page 13: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

CF Service

Copyright 2016 FUJITSU LIMITED

(1) Select a familiar

programming language

(2) Develop compositely

application

(3) Release to the internet

in a moment

CF Service (Cloud Foundry)

etc...for PHP

for Java

Build pack

ApplicationApplication

Developer

Deploy Bind

RDB

service

Storage

service

SNS

Mobile

Big data

Developer can choose his/her familiar programming languageThe latest programming languages(Java, PHP, Node.js, Ruby, Python, Go)

Develop compositely application with different servicesPrepares service used frequently by applications (RDB, MQ, Storage, Back link etc.)

Release developed application to the internet in a momentProviding with the DNS, SSL and Load balancer configured

12

Page 14: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Fujitsu Java Buildpack

Copyright 2016 FUJITSU LIMITED

Why we need GlassFish ?

Based on TomcatJava Buildpack already exists

Standardized framework on which

WebSocket, JAX-RS, JPA, etc is available

Play and Spring also available

Enterprise system like this

Help migrating from on-premise to cloud13

Page 15: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

GlassFish Buildpack

Copyright 2016 FUJITSU LIMITED

Based on GlassFish 4.1 WebProfile

Servlet 3.1

JavaServer Pages(JSP) 2.3

Unified Expression Language(EL) 3

Debugging Support for Other Languages (JSR-45) 1

JavaServer Pages Standard Tag Library(JSTL) 1.2

JavaServer Faces(JSF) 2.2

Java API for RESTful Web Services(JAX-RS) 2

Java API for WebSocket(WebSocket) 1

Java API for JSON Processing(JSON-P) 1

Common Annotations for the Java Platform (JSR-250) 1.2

Enterprise JavaBeans(EJB) 3.2 Lite

Java Transaction API(JTA) 1.2

Java Persistence API(JPA) 2.1

Bean Validation 1.1

Managed Beans 1

Interceptors 1.2

Contexts and Dependency Injection for the Java EE Platform 1.1

Dependency Injection for Java

APIs

14

Page 16: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Logging

Copyright 2016 FUJITSU LIMITED

Local storage should not be used

on Cloud Foundry

GlassFish supposes local storage

http access logs

logs of GlassFish itself

Change all output to standard out

15

Page 17: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Relational Database Service

Copyright 2016 FUJITSU LIMITED

On-Premise

Tightly coupled with JDBC

Describe JDBC information at config file

Cloud

Should couple loosely with JDBC

How do you do that ?

Usually get info from environment vars

16

Page 18: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Example1

Copyright 2016 FUJITSU LIMITED

public class DBAccess extends HttpServlet {

Connection getConnection() {

String env = System.getenv("VCAP_SERVICES");

if ( env != null ) {

try {

JsonReader reader = Json.createReader(new StringReader(env));

JsonObject servicesObject = jsonReader.readObject();

reader.close();

JsonObject rdsObject = servicesObject.getJsonObject("fujitsurds");

String uri = rdsObject.getString("uri");

Connection connection = DriverManager.getConnection(uri);

return connection;

} catch ( Exception e ) {

return null;

……

17

Page 19: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Example2

Copyright 2016 FUJITSU LIMITED

public class DBAccess extends HttpServlet {

@Resource (name = “jdbc/porstresqlService”)

private DataSource ds;

Fujitsu Java Buildpack provides

auto binding feature

‘postgresqlService’ is the name of the service bound to your app

i.e.

% cf bind-service myApp postgresqlService

18

Page 20: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Copyright 2010 FUJITSU LIMITED19

Page 21: Java at Fujitsu - Java Community Process · PDF fileSPECjbb benchmark Copyright 2016 ... (Java, PHP, Node.js, Ruby, ... Java API for JSON Processing(JSON-P) 1 Common Annotations for

Copyright 2016 FUJITSU LIMITED

Trademarks of other companies are used in this documentation only to

identify particular products or systems.

Oracle and Java are registered trademarks of Oracle and/or its affiliates.

Other company and product names in this documentation are trademarks or

registered trademarks of their respective owners.

20