chapter 3: objects, components, and the web
DESCRIPTION
Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt September 30, 2008. Chapter 3: Objects, Components, and the Web. History of Middleware. Chapter 2 was history of middleware into 1980's - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/1.jpg)
Chapter 3: Objects, Components, and the Web
TextbookIT Architectures and Middleware, Second Edition
Chris Britton and Peter Bye
AIT 600Jeff Schmitt
September 30, 2008
![Page 2: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/2.jpg)
History of Middleware
● Chapter 2 was history of middleware into 1980's● Chapter 3 continues at end of 1980s with
resurgence in OO programming and a new kind of OO middleware requestor calls a remote object like RPC, replaces RPC/transactional does not replace the two other kinds of middleware:
message queue and remote DB notable example: CORBA
![Page 3: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/3.jpg)
CORBA
● Common Object Request Broker● a standard, not a product● developed by Object Management Group
(OMG) a consortium of software vendors● influental but seldom seen in implementations,
similar situation with ISO 7-layer network model● Problem: its complexity, interoperativity● Rise of component technology made it less
important
![Page 4: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/4.jpg)
Component Technology
● Key characteristics code file – can be interpreted or executed run-time code has its own private data and provides
an interface can be deployed many times and on many different
machines (reused) component object creates one or more objects and
makes the interface of these available
![Page 5: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/5.jpg)
Microsoft Components
● Microsoft COM (Component Object Model), by end of 1990s used extensively in windows called from any language ( C++, Visual Basic) don't need to know file name – find it in system
registry● Middleware Distributed COM (DCOM)
call a COM object on another Windows machine
![Page 6: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/6.jpg)
Java Components
● Java emerged as an important language by 1995
● Java component model is called JavaBean● Java runs in Java Virtual Machine (JVM) –
macnine independent● Middleware called Remote Method Invocation
(RMI)
![Page 7: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/7.jpg)
Transactional Component Middleware
● solves some problems of using object component
● Microsoft Transaction Server evolved into COM+
● Enterprise JavaBeans (EJB)● issue is management of sessions, discussed
later
![Page 8: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/8.jpg)
Using Object Middleware
● program must have a reference pointing to the object on the other machine
● works like a pointer (to ram) but details are hidden
● Two steps getting pointer to the object repeatedly calling an operation(s) on the object give up the reference
![Page 9: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/9.jpg)
Object Interfaces
● Interface Definition Language interfaces more explicit than in OOP gives flexibility and encapsulation generates a stub that converts messages into
operation calls marshalling, converting object reference to binary
string interface is not the same as a class – one interface
can be used by many classes
![Page 10: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/10.jpg)
![Page 11: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/11.jpg)
OO Middleware compared to RPC
● OO middleware is a natural for OOP languages● OO middleware is more flexible
interfaces delinked from the server program – this simplifies deployment by hiding details
changes to an interface can be handled by adding a new interface to an object, rather than creating a new object – eventually old interface can be removed allowing time for rewriting dependent code
![Page 12: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/12.jpg)
Transactional Component Middleware
● a term coined by the textbook authors● fills same niche in object middleware as
transaction monitors in RPCs● makes transaction processing easier to
implement and more scalable● components can be deployed with different
settings to behave in different ways● examples: COM+ and EJB
![Page 13: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/13.jpg)
COM+
![Page 14: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/14.jpg)
![Page 15: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/15.jpg)
EJB
![Page 16: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/16.jpg)
![Page 17: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/17.jpg)
More about TCM
● compare COM+ and EJB – which is better solution? Disciples cannot agree
● Go with the one your skill level and experience favors
● EJB is operating system independent● COM+ is language independent● COM+ is now called Enterprise Services, a part
of .NET● New development: SOA and Service
Orientation (next chapter)
![Page 18: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/18.jpg)
Internet Applications
![Page 19: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/19.jpg)
![Page 20: Chapter 3: Objects, Components, and the Web](https://reader036.vdocument.in/reader036/viewer/2022062422/568139e5550346895da19d6c/html5/thumbnails/20.jpg)
Summary
● TCM is the dominant technology for