Recipes for Use With Thin Clients

Slides:



Advertisements
Similar presentations
ICS 434 Advanced Database Systems
Advertisements

Fundamentals of Information Systems, Second Edition 1 Telecommunications, the Internet, Intranets, and Extranets Chapter 4.
CSIS0402 System Architecture K.P. Chow University of Hong Kong.
Business Continuity and DR, A Practical Implementation Mich Talebzadeh, Consultant, Deutsche Bank
Technical Architectures
DATABASE APPLICATION DEVELOPMENT SAK 3408 The Web and DBMS.
Introduction to Web Base Multimedia Application. Web base application TCP/IP (HTTP) protocol Using WWW technology & software Distributed environment.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
12 Chapter 12 Client/Server Systems Hachim Haddouti.
The University of Akron Dept of Business Technology Computer Information Systems Database Management Approaches 2440: 180 Database Concepts Instructor:
Client/Server Architecture
Centralized and Client/Server Architecture and Classification of DBMS
Dynamics AX Technical Overview Application Architecture Dynamics AX Technical Overview.
N-Tier Architecture.
Client/Server Architectures
Introducing ETIS n Express Term Internet Server is Express Term ‘on the Net’ n All the features of Express Term, plus –Complete control of your site look.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
The Internet, Intranets, & Extranets Chapter 7. IS for Management2 The Internet (1) A collection of networks that pass data around in packets, each of.
Oracle8 JDBC Drivers Section 2. Common Features of Oracle JDBC Drivers The server-side and client-side Oracle JDBC drivers provide the same basic functionality.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 14 Networks, Multi-Tier Architectures, and XML.
Introduction to Internet Programming (Web Based Application)
11/16/2012ISC329 Isabelle Bichindaritz1 Web Database Application Development.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
M1G Introduction to Database Development 6. Building Applications.
Fundamentals of Information Systems, Second Edition 1 Telecommunications, the Internet, Intranets, and Extranets.
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.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
1 Welcome to CSC 301 Web Programming Charles Frank.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
SE-02 COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require.
"The majority of users in a typical enterprise simply want frequent, location-independent access to a few key applications, such as , calendar and.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
"The majority of users in a typical enterprise simply want frequent, location-independent access to a few key applications, such as , calendar and.
Building High Performance, Robust Server Applications with Internet Information Server 5.0 Van Van IIS - Program Manager Microsoft Corporation.
Fundamentals of Information Systems, Second Edition 1 Telecommunications, the Internet, Intranets, and Extranets.
Higher Computing Networking. Networking – Local Area Networks.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
E-Business Infrastructure PRESENTED BY IKA NOVITA DEWI, MCS.
WEB TESTING
Web-based Software Development - An introduction
Business System Development
System Architecture & Hardware Configurations
N-Tier Architecture.
Chapter 2 Database System Concepts and Architecture
Database System Concepts and Architecture
MVC and other n-tier Architectures
The Client/Server Database Environment
System Architecture & Hardware Configurations
Introduction to J2EE Architecture
PHP / MySQL Introduction
#01 Client/Server Computing
Ch > 28.4.
Chapter 2 Database Environment Pearson Education © 2009.
An Introduction to Computer Networking
Oracle Architecture Overview
SpiraTest/Plan/Team Deployment Considerations
Introduction to Databases Transparencies
Lecture 1: Multi-tier Architecture Overview
Chapter 17: Client/Server Computing
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require understanding.
UFCEUS-20-2 Web Programming
#01 Client/Server Computing
Presentation transcript:

Recipes for Use With Thin Clients Dave Ensor BMC Software

Agenda Introduction Issues Conclusions Key Choices for Web Deployment Remember Client/Server? Current Best Practice 300% Java examined Planning Server Distribution Conclusions

Introduction Application Architecture? It’s the web Three easy pieces “Run anywhere” Ease of use Three easy pieces Browser Web Server Data Server Now the problems begin Data Management Presentation Management Application Logic

Architectural Issues I Intranet or Extranet or Internet? Has fundamental impact on other choices Browser Make & Version Independence Security Firewall? DMZ?

Net Worlds The Internet An Extranet An Intranet Fire Wall Customers Local Users Stock Suppliers Orders

Architectural Issues II Web Server Oracle Instance Oracle Application Server Other Programming Language At the interface (D)HTML, JavaScript In the middle Java Servlets In the database Java, PL/SQL

Deployment Choices Web servers How many? Data Servers Distributed? Distribution algorithm Functional Geographic Data Servers Distributed? Clustered? Fail-safe?

Remember Client/Server? Two drivers Desire to leverage cheap desktop devices Desire for Graphical User Interfaces (GUI’s) Apparently a winning combination Desktop manages the pixels Server manages the data Where to run application logic? Stock

Expectations for Distribution Lower Cost Faster Response Greater Availability Greater Control Greater Throughput The reality was different

Network Limits The major problems Bandwidth Packet rates Web more so than Client/Server Packet rates Message round trip times The solutions Hardware & Software Improvements Encapsulation Architectural Improvements

Bandwidth Typical screen entry < 100 Typical screen data ~ 2K ? Typical server messages ~ 10k ? Typical Java Applet ~ 200k ? >= 0.0096 MHz 10 MHz 100 Mhz

Packet Rates Per card Perhaps 1,500/second

Message Round Trip Times 500 msec ~2 msec ~1 msec

* plus network load for message transfer Load Distribution Load Presentation Management High* in short bursts Application Logic Low* can be increased through design High* and typically continuous Data Management * plus network load for message transfer

Presentation Management Load Distribution Presentation Management Message Passing Message Passing Application Logic Message Passing Message Passing Data Management Not to scale

Current Best Practice Interface Layout (& Logic?) Three tier architecture Interface Layout (& Logic?) Conventional App, Applet (D)HTML + JavaScript Application Logic within Dedicated Web Server Transaction Manager DBMS Packaged Procedures Data Management Logic Triggers Declarative Constraints Interface Application Data Management Browser Web Server Data Server

Current Best Practice Interface Layout (& Logic?) Application Logic Encapsulate & Separate Interface Layout (& Logic?) Application Logic Data Management Logic Minimize Network Traffic Limit Process Counts Connection Counts Interface Application Data Management

Three tier architectures Markedly superior at handling heterogeneity Across the interfaces No longer an issue! Across the data servers Sybase Windows Windows CE Oracle Motif IMS/DB Embedded

300% Java Examined Java on the client Should be the exception rather than the rule Java on the App Server Potentially a good choice Java on the Data Server PL/SQL still the language of choice for embedded SQL? Total 100% ~10% 100% ~75% 100% ~10% 300% <100%

Applet Avoidance HTML Capable of presenting most data clearly XML Overcomes most of the issues with HTML Only operable in the latest browser releases DHTML and JavaScript Not as pure as an applet But much less to download Allows local validation

Client-side Logic How far can you get with just HTML? Anywhere with an airport! So when do you need Java at the client?

Using win32 calls Necessary? Desirable? More is possible But is it Interactive design may have to be re-learnt to completely avoid it …

… much the same is possible in Java

Key questions OK, Mr Architect. You’re a smart guy. Tell me some advantages of complex client-side validation Then tell me some advantages of other client-side application logic

Planning Server Distribution Between Browsers and App Servers Only two cases LAN High bandwidth, fast round trips WAN Distance is not a problem Round trip times & bandwidth are major issues Between App Servers and Data Servers Normal rules apply Minimize network traffic Place high volumes on “short” network paths

Planning Server Distribution Navigation between App Servers via HTML Links Multiple Databases can work well Single Physical Site may be an advantage

Failure Resilience App Servers scale well The paradox The answer cookies can ease failover issues The paradox The web is absolutely 365*24*7 Database outages are still required e.g. logical schema changes The answer The application must cope Pended transactions? Allowable failure rate?

Conclusions Use web technology Put application rules on servers A middle tier is inevitable But it can share hardware KISS Keep the client thin e.g. HTML Control the message traffic Between client & server Between cooperating servers Leverage the paradigm shift in the interface Web Server Data Server Browsers