Migrating a Java Solution to HP Integrity NonStop A mix of Whats, - - PowerPoint PPT Presentation

migrating a java solution to hp integrity nonstop a mix
SMART_READER_LITE
LIVE PREVIEW

Migrating a Java Solution to HP Integrity NonStop A mix of Whats, - - PowerPoint PPT Presentation

SQL/MX ANSI compliance Migrating a Java Solution to HP Integrity NonStop A mix of Whats, Whys and Hows Moore Ewing HPE EMEA NonStop Presales What 1. A Card Management Solution Create Programs, Issue Cards, Authenticate Use, Manage


slide-1
SLIDE 1

SQL/MX

ANSI compliance

Migrating a Java Solution to HP Integrity NonStop A mix of Whats, Whys and Hows

Moore Ewing HPE EMEA NonStop Presales

slide-2
SLIDE 2

What 1. A Card Management Solution

Create Programs, Issue Cards, Authenticate Use, Manage Accounts for 5.

2

slide-3
SLIDE 3

3

What 2.

FSS CMS 5.0

slide-4
SLIDE 4

Why 1.

Natural Affinity.

– HPE .

– Looking for new solutions in new technologies – Lacking a Card Management solution

– FSS

– Aware of NonStop as the leading top tier financial platform – NonStop experience as ACI Base-24 service provider – Authorisation is 24/7 and even Back-Office is becoming mission critical

4

slide-5
SLIDE 5

Why 2.

FSS had seen these slides HA and Availability - SMP Cluster or HPE Integrity NonStop

slide-6
SLIDE 6

Why 3.

6

What FSS had … What FSS would like to have…

slide-7
SLIDE 7

What 2.

FSS CMS 5.0 ; Two applications in one solution

7

Carduser Acquirer Switch CMS 5.0 Card & Program Management CMS 5.0 Realtime Authorisation CMS 5.0 Users

slide-8
SLIDE 8

What 3.

Two JAVA Technologies

8

Carduser Acquirer Switch CMS 5.0 Card & Program Management CMS 5.0 Realtime Authorisation CMS 5.0 Users JEE JBoss4 JSE Custom Code

slide-9
SLIDE 9

How 1.

Two guiding principles in planning

9

  • 1. Commonality of Code
  • Same business logic in both Linux and NonStop versions
  • 2. Isolation of Migration effort
  • minimise possible delays due to complications in other components
  • simplify scoping of problems
  • early detection of issues in any component
slide-10
SLIDE 10

The NonStop System and Software

How 2.

Four components …… three teams

10

J2EE user-driven card/program management application The DataBase JSE Authorisation “messaging” application The Application Team The DataBase Team The Infrastructure Team

slide-11
SLIDE 11

CMS 5.0 J2EE application migration to NSASJ

11

slide-12
SLIDE 12

What x.

SQL/MX TCP/IPv6 or CIP

JBoss EJB Client

Post Master NSASJ

(JBoss7 code)

<<tsmp-pp>>

tcp/ip

HP Integrity NonStop

NSASJ-PM

Host- / Domain

Controller <<tsmp-pp>>

NSASJ-HC

<<tsmp-sclass>>

NSASJ-Server

tsmp-pp…persistent process

PATHMON $JEE1 Infinispan Cache

<<tsmp-pp>>

NSASJ-Cache-n

NSASJ : wrapping JBoss AS7 code into TS/MP

slide-13
SLIDE 13

NSASJ Overview

SQL/MX TCP/IPv6 or CIP

JBoss EJB Client

Post Master Post Master Post Master Post Master NSASJ NSASJ NSASJ NSASJ

tcp/ip pathsend

NonStop Application Server for Java (NSASJ) HP Integrity NonStop

Infinispan Cache Infinispan Cache Infinispan Cache

What x.

slide-14
SLIDE 14

What 4.

JBoss AS Domain Deployment NSASJ derived from JBoss AS

Scalable, HA Deployments: Wildfly(JBoss) and NSASJ

slide-15
SLIDE 15

How x.

Isolation and verification

JBoss4 -> JBossAS7 with ORACLE DB

15

JBossAS7 (Wildfly8) -> NSASJ with remote ORACLE (T4) DB JBossAS7 with 1st cut SQL/MX(T4) DB NSASJ with 1st cut SQL/MX(T2) DB JBossAS7 with 2nd cut SQL/MX(T4) DB NSASJ with 2nd cut SQL/MX(T2) DB JBossAS7 with 3rd cut SQL/MX(T4) DB NSASJ with 3rd cut SQL/MX(T2) DB

Database Development Delivery

slide-16
SLIDE 16

What x.

The JBoss to NSASJ migration experience

16

  • Went very much as expected.

HPE assistance given to avoid issues in thread, pool and heap parameters

  • Some minor product issues, e.g. with Hibernate and SQL/MX Sequences.

Were quickly resolved by HPE.

  • The STARTUP Time issue
  • resolved by improved use of JBoss AS7 packaging and dependency definitions
  • a JBoss4 -> JBoss AS7 change which benefited Linux version as well
  • more obvious in NSASJ test as 8 JBoss instances not one
  • Actually done twice
  • migrated and started testing with older FSS ACM product
  • switched to CMS 5.0 when Linux development finalised
slide-17
SLIDE 17

CMS 5.0 Database migration

17

slide-18
SLIDE 18

Database migration in 3+ cuts Remove it as a Gating Factor in the overall process

1st Cut Logically correct Statement tests – Create tables with minimal change – Default size and placement – Collect planning/tuning info for tables for test and initial production volumes – Collect significant SQL statements 2nd Cut Realistic PDBD first performance test 3rd Cut Refined PDBD SQL statement change? – Partitioning, location , space allocation – Secondary indexes for access paths and RI/FK constraints – RI/FK constraints – Load test data – For MXCS, create test/tuning environment – Revise PDBD for

  • datatypes
  • Keys (Primary,Clustering,Partition)
  • table splits
  • access paths and indexes
  • RI requirement
  • Triggers
  • Stored Procedures

– Revise statements for new PDBD – Re-test and reiterate as required

18

How x.

slide-19
SLIDE 19

What x.

Many tables but relatively simple

19

  • Hundreds of tables but mostly small static dimension tables
  • No complex Triggers or Stored Procedures
  • No complex datatypes or ADTs
  • Most complex joins only used during initialisation

PLEASANT SURPRISE! Easier and faster than anticipated due to lack of any heavy ORACLE dependencies

slide-20
SLIDE 20

How x.

Compromise until change is really needed - retain code compatibility

20

  • Used original DDL input scripts not ORACLE generated output.

Made mass editing of simple syntax changes easier

  • Three separate ORACLE databases retained as three schemas
  • Most active tables keyed for partitioning but not implemented. Makes collecting metrics easier.
  • Some synthetic keys were replaced as Primary Key by a composite natural key.

Allowed the removal of associated indexes and simplified joins

  • Redundant joins removed.
  • Joins of 3+ small, static tables could be “materialised” but infrequently used
  • Three TMF transactions retained due to changes in the business logic required to remove them

Provides a known improvement if needed in the future or requirement for common code is relaxed

  • Some of the changes benefited the Linux/ORACLE version.
slide-21
SLIDE 21

CMS 5.0 Authorisation application migration

21

slide-22
SLIDE 22

What x.

.

Listener Thread Authorisation Worker Threads

A multi-threaded singleton.

But so was JBoss

slide-23
SLIDE 23

How x.

CPU 0 CPU 1 CPU 2 CPU 3 NonStop Server

Port Mapper

JI libray

Port Mapper

JI libray

Port Mapper

JI libray

Port Mapper

JI libray

TS/MP Pathsend API TCPIP Subsystem (IP-CIP or TCPIPv6)

NSASJ

JI libray

NSASJ

JI libray

NSASJ

JI libray

NSASJ

JI libray

EJB Client

Open Source Component. Uses JI to act as Pathsend clientJBoss AS. Uses JI to run as a TS/MP server class

Java Infrastructure – the secret sauce of NSASJ : turns Socket I/O into Pathsends

slide-24
SLIDE 24

How X.

How to enable JI

  • Add ji.jar to classpath
  • Add libji.so directory to RLD path
  • Export JI_ENDABLE=true
  • Configure JI in ji.properties
  • Reference ji.properties from system

as system property or set as export

slide-25
SLIDE 25

Listener Thread Socket PassThru Worker Threads Listener Thread Authorisation Worker Threads

How x.

.

Listener Thread Authorisation Worker Threads Listener Thread Socket PassThru Worker Threads Listener Thread Authorisation Worker Threads J I L i b r a r y TS/MP Serverclass Shared Address TCP/IP

Change the Authorisation architecture; not the code.

slide-26
SLIDE 26

HOW (not) x.

– Concerns about NSJ multi-threading capability – Created a test program to compare single-threading and multi-threading – Ran a stress test load against it – Guess what? It did not do very well!! – Unrealistic thread levels – Inconsistency between TS/MP links, thread pools and connection pools – Badly tuned SQL statements – UNNECESSARY LIBRARIES – Incremental Testing with the real application code introduced

27

Do not jump in the deep end to see if you can swim

slide-27
SLIDE 27

Incremental Performance Testing

And Sizing Metric Collection

28

slide-28
SLIDE 28

FSS CMS 5.0 Performance Validation

NSASJ CM application - people-driven + batch like file and report processing Performance at or above expectation Realtime Authorisation - not lightweight ; 12 medium SQL statements per request Performance again acceptable and competitive Tests on HP NS2404 with limited number of discs are very satisfactory. Testing on NSX7 in various core configurations is underway. Not appropriate to provide figures in this presentation.

21 6 4 8 12 2 5 7 1 17 118 1789 7 127 7082 6217 4023 1663 2143 325 78 43 5587 4918 4012 3269 3254 2981 178 2263 1853 2457 4130 5630 3000 1056 1058 508 3780 4198 4688 5102 2310 1257 1105 123 637 916 1393 2161 4265 7327 7475 6782 515 759 1172 1484 4109 3704 8243 6928 131 124 157 241 292 929 1005 2311 79 78 86 77 157 225 416 524 249 257 268 278 259 310 338 323 34 40 41 51 52 44 51 35 21 18 18 21 27 35 35 25 4 3 5 3 3 4 5 5 2 2 2 3 3 2 4 3 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 1 3 5 7 9 11 13 15

Achsentitel

<= 20 ms 21-25 ms 25-30 ms 30-50 ms 31-100 ms 101-250 ms 201-500 ms 501-1000 ms > 1000 ms

Testing is not in “benchmark” format but has multiple goals

  • verify product is functionally correct on NS
  • verify that performance is acceptable and deemed competitive with CMS on other platforms
  • Experiment with configuration options to provide some best practices
slide-29
SLIDE 29

30

Incremental performance and sizing approach

–Performance Metrics and Scalability Testing for system sizing

–This is a progressive and cyclic process to establish –- the servicetime and costs of a single transaction –-the maximum number of concurrent transactions per NSASJ instance –-the maximum number of concurrent transactions per cpu core

  • the maximum number of concurrent transactions per logical cpu

–-that linear scalability exists across an increasing number of logical cpus. –The maximum number in any test is determined by a trade-off between the acceptable response time of a transaction and the throughput of the component. – (The relationship of responsetime to servicetime under increasing load as described in Queuing Theory.) Sizing calculations will depend upon the maximum cpu utilisation deemed acceptable with regard to business risk of cpu failure during peak periods.

slide-30
SLIDE 30

Incremental Testing to find concurrencies and throughputs

31

Test Number

  • No. of CPUs No. of cores per cpu
  • No. of instances per core No. of threads per instance

Comments

1 1 1 1 1 Driver should supply requests to keep application busy at a concurrency of one. This will establish servicetime and resource costs from which other estimates can be calculated. 2 1 as available 1 1To ensure no contention between cores. 3 1 1 1 incrementing Target No. based upon cpu usage metric and acceptable responsetime 4 1 1 Incrementing from test 3 Target No. based upon cpu usage metric and acceptable responsetime 5 1 as available from test 4 from test 3 To ensure no contention between cores. 6 Incrementing as available from test 4 from test 3 To ensure no contention between cpus.

Throughput metrics gathered from dedicated cpus and cpus with light and heavy disc access for variable sizing

slide-31
SLIDE 31

The bottom line

32

Using the HPE NonStop Java ecosystem delivered

slide-32
SLIDE 32

FSS CMS on HP NonStop: Simple yet Deep Port

CMS on Linux Single instance JBOSS CM (or cluster) Single process m-t r/t Authorisation NSASJ CM Scalable multi-cpu architecture CMS on NS NS Fundamentals Inherited By CMS Scalability : 2-4000 cpus Availability : AL4 FT system no SPOF Small fault zones: cpus and serverclasses Distributable FT RDBMS: co-located, no network costs Ease of Management : integrated software; no separate cluster

  • r RDBMS or BC
slide-33
SLIDE 33

What !

34

FSS project receives Frost and Sullivan award for process innovation

FSS was awarded the first runner up for process innovation category as part of the Project Evaluation and Recognition Program (PERP) 2015 by Frost &

  • Sullivan. FSS won the award in the Service Sector for

its project titled “Re-engineering FSS Card Management Suite on HP NonStop platform.” FSS Card Management Suite is a single platform for debit, prepaid and virtual card from pre-issuance to post-issuance The objective of the project was to build a next generation card management product on HP NonStop and innovate to help clients fully leverage the advantages of HP NonStop platform.

slide-34
SLIDE 34

Thank you

moore.ewing@hpe.com

35