webspeed …. i am back enhanced webspeed

31
Webspeed …. I am back Enhanced WebSpeed

Upload: others

Post on 11-Jul-2022

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Webspeed …. I am back Enhanced WebSpeed

Webspeed …. I am back Enhanced WebSpeed

Page 2: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 2

OpenEdge 11.6 – WebSpeed!!!

• Modernize your Progress OpenEdge web apps through

enhanced Progress Application Server (PAS) support for

WebSpeed

• Achieve improved performance and web server scalability

• Leverage existing investment, while minimizing development

costs and risks

Page 3: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 3

UNIFIED AND HIGHLY SCALABLE APPLICATION SERVER

Helping enterprises reduce the total cost of ownership and maintenance

ABL Sessions

Highly scalable

multi-session

architecture

Production ready,

out-of-the-box

security

Administration

with OpenEdge

Management

Built on

Apache Tomcat

Web server

PAS for OpenEdge with WebSpeed

Page 4: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 4

PAS for OpenEdge with WebSpeed Support

Next generation Application Server

that integrates multiple functions

Same core server for Rollbase, Corticon, and

OpenEdge AppServer / WebSpeed ABL applications

ABL applications run in the new multi-session agent,

which uses a single OS process for

improved performance and scalability

Simpler administration / deployment and is

preconfigured to operate as a production-ready server

Progress Pacific Application Server (PAS)

ABL Sessions

WebSpeed

Page 5: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 5

“n” Agents

“n” Agents

Classic WebSpeed vs. PAS for OpenEdge

Classic WebSpeed

“n” Agents

AdminServer

Browser

NameServer

PAS for OpenEdge

APSV (AIA)

SOAP (WSA)

REST/Mobile

Session Manager

MSAgent

“n” ABL Sessions

WebSpeed in PAS for OpenEdge

Web Server

+

Messenger

Stateless

Web Speed

Client (HTTP)

Page 6: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 6

WebSpeed Migration Benefits

Uses less system resources- more scalable

Runs existing* WebSpeed application code

Supports web application security requirements

Well-defined deployment models & industry standard API’s for

monitoring

Migration path to full HTTP request/response handling & present day UI

technologies

Page 7: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 7

Webspeed - 25KB of Payload on Linux

-50

0

50

100

150

200

250

300

350

Classic-10 Vs PAS-1/10 Classic-12 Vs PAS-1/12 Classic-25 Vs PAS-1/25 Classic-50 Vs PAS-1/50

Resp

on

se T

imes in

millisec

PASOE Vs Classic Response Times

Classic

PASOE

28.5% 30.9% 25.2% 29.7%

Page 8: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 8

Webspeed - 25KB of Payload on Linux

-200

0

200

400

600

800

1000

1200

1400

Classic-10 Vs PAS-1/10 Classic-12 Vs PAS-1/12 Classic-25 Vs PAS-1/25 Classic-50 Vs PAS-1/50

Mem

ory

Uti

lizati

on

in

MB

PASOE Vs Classic Memory Utilization

Classic

PASOE

58% 55%

53%

51%

Page 9: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 9

Webspeed - 5.3KB of Payload on Linux

975

508

363

279 236

204 212 213 224 241 174

0

200

400

600

800

1000

1200

Resp

on

se T

imes in

millisec

PASOE Vs Classic Response Times

Page 10: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 10

OpenHTTP

Page 11: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 11

Introduction

HTTP Request

Web Stream

HTTP Response

Client

Order Object (implements IWebHandler)

Web Transport

Tomcat

Progress Application Server

Page 12: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 12

WebSpeed OpenHTTP

Writing your own IWebHandler

implementation from scratch can

be complex

Most applications will not use all

HTTP verbs

Some behavior is frequently

common for all handlers

Progress Application Server (includes WebSpeed support)

ABL Sessions

Page 13: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 13

Demo Webspeed PASOE

Page 14: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 14

If you remember of Webspeed like this

Page 15: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 15

What do you think about Webspeed like that ?

Page 16: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 16

And this one ?

Page 17: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 17

Advantages of PAS for OE

WebSpeed on PAS for OE

supports standard HTTP verbs and

status codes

supports all media types for uploading

and downloading

no need to run a seperate webserver

AppServer/WebSpeed/WebServer in

one instance

Access to everything in the http

request message (i.e. Header, body

and query parameters)

Classic WebSpeed

only supports GET and POST, no way

to control status codes

supports a limited set of file types for

uploading

additional webserver required

Seperate appserver and webspeed

brokers

Limited access to the request message

Page 18: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 18

Why Upgrade to 11.6 for WebSpeed?

Performance!

Less Resource Requirements

Better Security

Page 19: Webspeed …. I am back Enhanced WebSpeed

https://www.progress.com/openedge/whats-new

Page 20: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 20

Modernisation Web avec Telerik KENDO UI

Page 21: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 21

Agenda

Classic AppServer

- mobile architecture

Pacific Application Server for OpenEdge (PAS for OE)

- what is PAS for OE?

- mobile architecture

JavaScript Data Object (JSDO)

- what is the JSDO?

- why should I use the JSDO?

- Kendo DataSource and the JSDO

Demo

Model View ViewModel (MVVM)

Questions

Page 22: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 22

Web Server

Architecture – Classic OpenEdge AppServer

Mobile device

HTML5 JavaScript

CSS

OpenEdge JSDO

HTML5 browser

HTML5 JavaScript

CSS

OpenEdge JSDO

HTML5 JavaScript

CSS OE JSDO

Mobile App

Web App

GET

HTTP(S) / JSON

Mobile Service

Mobile Resource

Mobile Service

Mobile Resource

HTTP(S) / JSON

OpenEdge AppServer

Mobile Interface Business Entity

ABL BINARY

Rest

Adapter

JSDO BE-mapping

Page 23: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 23

Pacific Application Server for OpenEdge

Enterprise class web/application server that integrates multiple functions

• Web Server (Tomcat), OpenEdge AppServer, OpenEdge AppServer adapters

Highly scalable

• Multi-Session agent

• Tomcat with industry standard load balancing

Spring Security framework built-in

No seperate AppServers required for different state-models

Little to no ABL code changes when migrating

Page 24: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 24

PAS for OE

Architecture – Pacific Application Server for OE

Mobile device

HTML5 JavaScript

CSS

OpenEdge JSDO

HTML5 browser

HTML5 JavaScript

CSS

OpenEdge JSDO

HTML5 JavaScript

CSS OE JSDO

Web App

GET

HTTP(S) / JSON

Mobile Service

Mobile Resource

Mobile Service

Mobile Resource HTTP(S) / JSON

Mobile Interface Business Entity

ABL

Rest

Adapter

- Less overhead

- Reduced number of OS processes

- Better overall system performance

- One place to deploy

JSDO BE-mapping

Page 25: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 25

JSDO – JavaScript Data Object

Client side object provides access to mobile resources exposed as a web service

• Resources are ABL business logic and OpenEdge data

Encapsulates functionality needed to manipulate client side data

Communicates with an AppServer sending and receiving data

• Can execute CRUD operations as defined in the Business Entity

• Can invoke methods on an AppServer

JSDO properties and methods

• A JavaScript program or a JavaScript framework uses the JSDO methods to make requests

of the JSDO

Page 26: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 26

Why should I use the JSDO?

Session management

Invoke methods on AS Access to data definitions

Multiple CRUD actions Any JavaScript framework

Multi-user change tracking Multi-table support Local storage

No knowledge of URI’s

Page 27: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 27

Kendo DataSource and the JSDO

Kendo UI widget

Kendo DataSource

Transport property

• Read

• Create

• Update

• Destroy

JSDO

CRUD -> Business Entity

• Read

• Create

• Update

• Delete

• Invoke

Page 28: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 28

Let’s Build!

1 2 3 4 5

Create PAS for

OE instance

(and deploy

oemanager)

Create BE’s &

business logic

Create and

expose the

ABL Service

Consume

Mobile Service

using the

JSDO

Binding JSDO

to Kendo UI

controls

(dataSource)

Page 29: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 29

Recap...

1 2 3 4 5

Create PAS for

OE instance

Create BE’s &

business logic

Create and

expose the

Mobile Service

Consume

Mobile Service

using the

JSDO

Binding JSDO

to Kendo UI

widgets

(DataSource)

1 command (tcman) to manage, configure and

monitor

Wizard to easily create Business Entities from

a database table or include file

1 service that can contain multiple

ProDataSets with multiple tables

• Instantiate JSDO session

• Setup the CRUD operations once and

reuse those

1. After binding JSDO to the Kendo DS, it can be used for

any widget

Page 30: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 30

MVVM – seperating logic from UI

Model View ViewModel (MVVM) is a design pattern which helps developers separate the

Model (the data) from the View (the UI).

The View-Model part of MVVM is responsible for exposing the data objects from the Model in

such a way that those objects are easily consumed in the View.

Page 31: Webspeed …. I am back Enhanced WebSpeed

© 2016 Progress Software Corporation. All rights reserved. 32

Q & A