18
PERTEMUAN 8 PENGEMBANGAN APLIKASI ENTERPRISE KLASIFIKASI MIDDLEWARE DAN ARSITEKTUR

Ead pertemuan-7

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Ead pertemuan-7

PERTEMUAN 8PENGEMBANGAN APLIKASI ENTERPRISE

KLASIFIKASI MIDDLEWARE DAN ARSITEKTUR

Page 2: Ead pertemuan-7

Middleware Elements

Middleware is more complex than most IT people recognize

A B

1. The Commucication Link2. The Middleware Protocol

3. The API4. A Common Data Format

6. Naming/Directory Services7. Security8. Administration

5. Server Process Control

Page 3: Ead pertemuan-7

Middleware Elements Network & Interoperability

Magister Teknologi Informasi - ITB

• The communications link restricted to use one or a few networking standarts, the dominant standarts at the moment being TCP/IP and SNA

• The middleware protocol often calles wire protocol; - the format of message over the communications link

- the state transition diagrams of the entities at each end

Chapter 5 – Middleware Classification & Architecture

Page 4: Ead pertemuan-7

Middleware Elements The Programmatic Interface

• The application programmatic interface (API); - API can be Object Oriented of conventional - can be fixed or can be compiled for specific application - can be operations-based or language-based - API calls may or may not block the processing thread until the server replies

• Common data format e.g. ASCII, EBCDIC, UNICODE

Page 5: Ead pertemuan-7

Middleware ElementsServer Control

3 main tasks server controls- process and thread control

when load is heavy additional processes & thread started when load is lightens desirable to lessen the number of processes and/or threads

- resources management database connection polling

- object management may be activated or deactivated

Page 6: Ead pertemuan-7

Middleware ElementsSystem Administration Infrastructure

• Naming/Directory Services Network access point to a middleware server us typically a 32-bit number defining the network access and a port number that allows the operating system to route the message to the right progam

• Security Valid users may be allowed to use the server resources and may be given to only a limited selection of the possible services

• Administration Human interface to all this software for operational control, debugging, monitoring, configuration control

Page 7: Ead pertemuan-7

A Technical Classification of Middleware

• What is communicating ? First dimension classification according to what entities are communicating. Nowadays, process communicated with process. Observe Layering:

- Physical- Data link- Network- Transport

• How they communicate ? Each layer has protocol. 2 major categories of protocols :

- session protocols- sessionless protocol

Page 8: Ead pertemuan-7

Protocol Categories

Inisiator / Requester Responder

Client/Server

Peer-to-Peer

Push

Page 9: Ead pertemuan-7

Transaction & Information Middleware

Transaction & Information retrieval middleware must be - no messages lost - no messages received in the wrong order - no messages corruption - no messages duplication

The real characteristic of middleware protocol : - the middleware should have a protocol that is convenient for the structure of the application (for instance, client/server or queuing) - the middleware can implement additional application-level integrity like two-phase commit

Page 10: Ead pertemuan-7

What is the interface ?

Many different style of API-based middleware interface : message-based : API has a message and message type command language-based : the command is encoded into a

language operation call-based : built up by a series of middleware

procedure calls

Classification of impact on process thread control : blocked – thread stops until reply arrives unblocked – client every now and then has a look to see if reply has arrived event based – when the reply comes, an even is caused, which

wakes up the client

Page 11: Ead pertemuan-7

Vendor architectures

Two architectures that are grabbing attention now : Microsoft Windows Distributed interNet Applications Architecture (DNA) Java 2 Enterprise Edition (Java EE) by Oracle Sun

DNA consists of Presentation services (HTML,DHTML, scripting, ActiveX COM) Application services (Internet Information Server-IIS, COM+) Data services (ADO, OLE DB) System services (directory, security, management,networking)

Java EE consists of client tier (browser, Java Applets, standalone Java program) web tier (JSP, Java Servlets) enterprise java beans tier (EJB container) enterprise information systems tier (database/mainframe application)

Page 12: Ead pertemuan-7

COM+ Container COMobject

IIS Web Server

Microsoft Windows DNA

ADO&OLE DB DCOM MSMQ

DCOMUniversal Data Access(ADO & OLE DB) MSMQ

COMTI DCOMUniversal Data Access(ADO & OLE DB) MSMQ

ASP

Mainframe E-mail &Messaging

Directory SQLDatabase

File System

Rich Client (GUI application)Thin Client (Web Browser)

HTML, DHTML, XML

Presentation Tier

BusinessLogic Tier

Data Tier

Page 13: Ead pertemuan-7

Java EE

EJB Container EJB

Web Container

JDBC JMS RMI-IIOP

Connector

JavaServlet

Mainframe Data

Java GUI ApplicationWeb Browser + Applets

HTML, DHTML, XML

Presentation Tier

BusinessLogic Tier

Data Tier

JNDI Java Mail

JDBC JMS RMI-IIOP JNDI Java Mail

JSP

JDBC JMS RMI-IIOP JNDI

Page 14: Ead pertemuan-7

Vendor ArchitecturesPositioning

• DNA has number of alternative presentation technologies, ranging from “rich client” to “thin client”

• DNA & Java EE architecture are similar (in many ways) have web server have transactional component middleware engine

• But... One is COM-based, and other is Java-based

Page 15: Ead pertemuan-7

Vendor ArchitecturesStrawman for user target architecture

• Both of them offer message queuing & transaction service but not given equal prominence

• The implication of architecture set of tools from DNA bag will work together set of tools from J2EE will work together but if mix and match from both bags, are on our own

• Both of them are silent on the subject of batch processing

Page 16: Ead pertemuan-7

Vendor ArchitecturesMarketing

• The biggest problem is bafflement by its very nature when explaining an architecture that have to explain a range of very complex software

• If the architecture; too complex hard to explain

too simple no substance

Page 17: Ead pertemuan-7

Implicit Architectures

• We can buy application such as SAP, Baan, PeopleSoft but we have to think about integration

• A way accessing the architectural implication of product is to ask ourself about these question : what impact does this product have on the positioning

of existing appliations? what impact does this product have on future development? What tools do we use and where? How do we partition the functionality between the tiers? what is the vendor’s vision for the future?

Page 18: Ead pertemuan-7

SELESAIPERTEMUAN 7