Commercial Information Technology Group  Inter-operable Server Smalltalk and Client Java Architectures Kirk D. Blackburn Greg Frohring.

Slides:



Advertisements
Similar presentations
Vrije Universiteit amsterdamPostacademische Cursus Informatie Technologie Web Applications – The Object Web combining servers and client-applications multiple.
Advertisements

1 CGICGI Common Gateway Interface Server-side Programming Lecture.
Netscape Application Server Application Server for Business-Critical Applications Presented By : Khalid Ahmed DS Fall 98.
- Page 1 - VisualWorks Web Services 8/27/02 Version 1.0 Exp osin g Business Value with VisualWorks Web Services Kirk D. Blackburn Qwest Communications,
Chapter 6: Client/Server and Intranet Computing
Chapter 16 Client/Server Computing Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Chapter 17: Client/Server Computing Business Data Communications, 4e.
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
Event Application Using Pushlets by Patricia Ferrao December, 2002.
1 Database Architectures Modified from …..Modern Database Management Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden.
Chapter 7: Client/Server Computing Business Data Communications, 5e.
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Chapter 9: The Client/Server Database Environment
Object Based Operating Systems1 Learning Objectives Object Orientation and its benefits Controversy over object based operating systems Object based operating.
Introduction to Servlet & JSP
A Computer Aided Despatch System on CORBA/Java Platform Chau Chi Wing.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
CIS 365 Vandana Janeja Nov 27 th 2001 Connecting Cobol programs to Other Languages- Visual Basic, Java,HTML.
1 © Prentice Hall, 2002 The Client/Server Database Environment.
Web-Enabling the Warehouse Chapter 16. Benefits of Web-Enabling a Data Warehouse Better-informed decision making Lower costs of deployment and management.
Session-01. What is a Servlet? Servlet can be described in many ways, depending on the context: 1.Servlet is a technology i.e. used to create web application.
Lecture The Client/Server Database Environment
Apache Jakarta Tomcat Suh, Junho. Road Map Tomcat Overview Tomcat Overview History History What is Tomcat? What is Tomcat? Servlet Container.
The Client/Server Database Environment
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Web Services Mohamed Fahmy Dr. Sherif Aly Hussein.
SAP R/3 System: Client Server Overview (Buck-Emden & Galimow, 1998) Dr. K. Palaniappan.
Enterprise Java Beans CS-422. Application Servers In the late 1980s and though the mid 1990s a number of corporations (Broadvision, Netscape…) marketed.
HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel Copyright Springer Verlag Berlin Heidelberg 2004.
Enterprise Systems MIS 181.9: Service Oriented Architecture 2 nd Semester,
1 © Prentice Hall, 2002 Chapter 8: The Client/Server Database Environment Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
MBA 664 Database Management Systems Dave Salisbury ( )
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 21, 2005.
1 G52IWS: Distributed Computing Chris Greenhalgh.
Introduction to Internet Programming (Web Based Application)
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
© 2005 by Prentice Hall 1 Chapter 9: The Client/Server Database Environment Modern Database Management 7 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
第十四章 J2EE 入门 Introduction What is J2EE ?
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
A.Obaid - Wilfried Probst - Rufin Soh INE4481 DISTRIBUTED DATABASES & CLIENT-SERVER ARCHITECTURES1 Chapter 1. Distributed systems: Definitions, design.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
Introduction to CORBA University of Mazandran Science & Tecnology By : Esmaill Khanlarpour January
Lecture 22: Client-Server Software Engineering
Databases JDBC (Java Database Connectivity) –Thin clients – servlet,JavaServer Pages (JSP) –Thick clients – RMI to remote databases –most recommended way.
Chapter 17: Client/Server Computing Business Data Communications, 4e.
Copyright © 2013 Curt Hill SOAP Protocol for exchanging data and Enabling Web Services.
GemStone/J 3.0 Objects Across the Enterprise Paul Chambers Chief Technical Officer (Europe)
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Database Server Concepts and Possibilities Lee Lueking D0 Data Browser Workshop April 8, 2002.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
1 Distributed System using J2EE. 2 What is J2EE?  J2EE (Java2 Enterprise Edition) offers a suite of software specification to design, develop, assemble.
Windows Azure poDRw_Xi3Aw.
EGEE is a project funded by the European Union under contract IST Introduction to Web Services 3 – 4 June
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
2 Copyright © Oracle Corporation, All rights reserved. Basic Oracle Net Architecture.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Lecture 9: The Client/Server Database Environment Modern Database Management 9 th Edition.
Chapter 9: The Client/Server Database Environment
Netscape Application Server
The Client/Server Database Environment
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
#01 Client/Server Computing
Chapter 17: Client/Server Computing
#01 Client/Server Computing
Presentation transcript:

Commercial Information Technology Group  Inter-operable Server Smalltalk and Client Java Architectures Kirk D. Blackburn Greg Frohring Gregory P. Smith Presentation to European Smalltalk User Group Summer School Brescia, Italy August 31, 1998

 Commercial Information Technology Group Structure of Presentation Business Needs Architectural Givens Five Client-Server CORBA Architectures Benefits/Shortcomings Why Server Smalltalk? Summary/Conclusions

 Commercial Information Technology Group Business Needs System to Provide: –Multi-Media Content Creation –Web-based Content Delivery –Enable “Just In Time” Training –Central Administration of Content –Object-Oriented Database Storage/Retrieval –Scalable to Hundreds of Thousands of Users

 Commercial Information Technology Group Architectural Givens Web Clients ( Netscape, IE ) Java Clients ( Applications /Applets ) Smalltalk Clients ( VisualWorks Applications ) CORBA ( Multiple ORBs ) Server Smalltalk ( VisualWorks ) Gemstone/S Application Server/DB

 Commercial Information Technology Group Architecture I

 Commercial Information Technology Group Pros: –Uses CORBA for Remote Messaging –No Webserver Required –Heterogeneous Language Integration –It “worked” ( J. Bostrom quote ) Cons: –Uses IIOP for Data Transfer –Heavy Synchronous Client –COS Lifecycle/Timeout Issues –Non-optimal Memory Utilization –Required Application Source Modifications Architecture I

 Commercial Information Technology Group Architecture II

 Commercial Information Technology Group Architecture II Pros: –Uses CORBA for Remote Messaging –No Webserver Required –Asynchronous Client Communication (non-blocking) –Minimal Application Source Modifications Cons: –Uses IIOP for Data Transfer –Heavy Client (Content Generation Logic) –Lifecycle/Timeout Issues –Non-optimal Memory Utilization –Instability of Large Applets Running in Browser VMs

 Commercial Information Technology Group Architecture III

 Commercial Information Technology Group Architecture III Pros: –Uses CORBA for Remote Messaging –No Webserver Required –Asynchronous Client –COS Lifecycle/Timeout Issues Minimized –Memory Requirements Optimized –Retains VisualWorks Development Environment –Gemstone Runtime Environment (Scalability, Partitioning, Native Threads) Cons: –Uses IIOP for Data Transfer –Heavy Client (Content Generation Logic) –Loss of Robust VisualWorks Engine for Debugging –Instability of Large Applets Running in Browser VMs

 Commercial Information Technology Group Architecture IV

 Commercial Information Technology Group Architecture IV Pros: –Uses CORBA for Remote Messaging –Asynchronous Thinner Client with Stable Java VM –Memory Requirements Optimized –Help Becomes Guaranteed Client CORBA Service –Uses HTTP for Data Transfer (vs. IIOP) Cons: –Loss of Robust VisualWorks/DST Engine for Debugging –Content Generation Logic Still in Client

 Commercial Information Technology Group Architecture V

 Commercial Information Technology Group Architecture V Pros: –Uses CORBA for IPC –Asynchronous Thin Client –Java Servlets Filter http Requests Into CORBA Requests, Allowing for Thinnest Client Possible –Content Generation Logic Partitioned to Server –Memory Requirements Optimized –Uses HTTP for Data Transfer (instead of IIOP) Cons: –Loss of Robust VisualWorks/DST Engine for Debugging

 Commercial Information Technology Group Why Server Smalltalk? Productivity Benefits ( Debugging, Development ) Open (dll/c, sockets, RPC, CORBA ) Robust Mature Class Libraries Mature ORBs and COS Services Many Mission-Critical Deployments Ease of Designing New Algorithms ( Caching, Searching )

 Commercial Information Technology Group Summary/Conclusions Clients ( Java/Browsers seem to have won the client wars ) Server Smalltalk is Viable –Maturity –Proven –Premier Development Environment –Extensible Smalltalk ORBs ( DST, GemORB ) Inter-operate Well With Other ( Java, C++ ) ORBs

 Commercial Information Technology Group Summary/Conclusions (cont.) Servlets Enabled: –The right protocol at the right time IIOP for stable connections (e.g. IPC) HTTP for less stable connections (e.g. Internet) –Thinner Client HTTP libraries are part of Java runtime Imply server side processing CORBA Architectures –Good for Command and Control –High-Value Messages –Are Not Good for Bulk Data Transfer –Integrate Heterogeneous Languages and Platforms