Transcript Slide 1

Chapter 3
The Internet Database
Environment
1
Outline
• Characteristics of Web-Based Database Applications
• Database-enabled intranet/internet environment
• Internet and Intranet Services
• Web-Related Terms
• Communications Technology
• Internet-Related Languages
• Server/Client Extensions
• Web Server Interfaces
• Dynamic Web development environment
• Web services deployment
• Web Security
2
Characteristics of Web-Based
Database Applications
• Web browsers are simple to use
• Information transfer can take place across
different platforms
• Development time and cost have been
reduced
• Sites can be static (no database) or
dynamic/interactive (with database)
– Potential e-business advantages (improved
customer service, faster market time, better supply
chain management)
3
Database-enabled intranet/internet environment
4
Internet and Intranet Services
•
•
•
•
•
•
•
•
•
Web server
Database-enabled services
Directory, security, authentication
E-mail
File Transfer Protocol (FTP)
Firewalls and proxy servers
News or discussion groups
Document search
Load balancing and caching
5
File Transfer Protocol (FTP)
• The most common protocol for transferring files
between two locations
• The protocol supports the following:
– User id based login (User-id/Password combination)
– Hierarchical folders
– File Management (Rename, Delete, Upload, Download,
Download with overwrite, Download with append)
6
Proxy Server
• a proxy server is a server (a computer system or an
application) that acts as an intermediary for requests from
clients seeking resources from other servers.
• Proxies were invented to add structure and encapsulation to
distributed systems.
• Today, most proxies are web proxies, facilitating access to
content on the World Wide Web and providing anonymity.
7
Firewalls
• A firewall is a software or hardware-based network
security system that controls the incoming and
outgoing network traffic based on applied rule set.
• It establishes a barrier between a trusted, secure
internal network and another network (e.g., the
Internet) that is not assumed to be secure and
trusted.
8
Web Load Balancer
• Load Balancers provide increased performance to
your website by distributing traffic efficiently to
multiple servers, and create a more robust and faulttolerant system.
9
Load Caching
• A temporary storage area where
frequently accessed data can be stored
for rapid access.
• Cached data are stored in the memory.
• Defining frequently accessed data is a
matter of judgment and engineering.
− What resource should be stored in the cache?
− How long should the resource be stored in the
cache?
10
Web-Related Terms
• World Wide Web (WWW)
– The total set of interlinked hypertext documents residing on
Web servers worldwide.
• Browser
– Software that displays HTML documents and allows users to
access files and software related to HTML documents.
• Web Server
– Software that responds to requests from browsers and
transmits HTML documents to browsers.
• Web pages–HTML documents
– Static Web pages–content established at development time.
– Dynamic Web pages–content dynamically generated, usually
by obtaining data from database.
11
Communications Technology
• IP Address
– Four numbers that identify a node on the Internet
– e.g. 131.247.152.18
• Hypertext Transfer Protocol (HTTP)
– Communication protocol used to transfer pages from Web
server to browser
– HTTPS is a more secure version
• Uniform Resource Locator (URL)
– Mnemonic Web address corresponding with IP address
– Also includes folder location and html file name
Typical URL
12
Internet-Related Languages (1)
• Hypertext Markup Language (HTML)
– Markup language specifically for Web pages
• Standard Generalized Markup Language
(SGML)
– Markup language standard
• Extensible Markup Language (XML)
– Markup language allowing customized tags
• XHTML
– XML-compliant extension of HTML
13
Internet-Related Languages (2)
• Java
– Object-oriented programming language for
applets
• JavaScript/VBScript
– Scripting languages that enable interactivity
in HTML documents
• Cascading Style Sheets (CSS)
– Control appearance of Web elements in an
HML document
• XSL and XSLT
– XML style sheet and transformation to HTML
14
Server-Side Extensions
• Programs that interact directly with Web
servers to handle requests
− e.g. database-request handling middleware
Web-to-database middleware
15
Web Server Interfaces
• Common Gateway Interface (CGI)
– Specify transfer of information between
Web server and CGI program
– Performance not very good
– Security risks
• Application Program Interface (API)
– More efficient than CGI
– Shared as dynamic link libraries (DLLs)
• Java Servlets
– Like applets, but stored at server
– Cross-platform compatible
– More efficient than CGI
16
Web Servers
• Provide HTTP service
• Passing plain text via TCP connection
• Serve many clients at once
– Multithreading
– Multiprocessing
• Load balancing approaches:
– Domain Name Server (DNS) balancing
• One DNS = multiple IP addresses
– Software/hardware balancing
• Request at one IP address is distributed to
multiple servers
– Reverse proxy
• Intercept client request and cache response
17
Client-Side Extensions
• Add functionality to the browser
• Plug-ins
– Hardware/software modules that extend
browser capabilities by adding features
(e.g. encryption, animation, wireless
access)
• ActiveX
– Microsoft COM/OLE components that allow
data manipulation inside the browser
• Cookies
– Block of data stored at client by Web server
for later use
18
Components for Dynamic Web Sites
• DBMS–Oracle, Microsoft SQL Server, Informix,
Sybase, DB2, Microsoft Access, MySQL
• Web server–Apache, Microsoft IIS
• Programming languages/development technologies
– ASP .NET, PHP, ColdFusion, Coral Web Builder,
Macromedia’s Dreamweaver
• Web browser–Microsoft Internet Explorer, Netscape
Navigator, Mozilla Firefox, Apple’s Safari, Opera
• Text editor–Notepad, BBEdit, vi, or an IDE
• FTP capabilities–SmartFTP, WS_FTP
19
Dynamic Web development environment
20
Web Services
• XML-based standards that define protocols for automatic
communication between applications over the Web.
• Components of Web Service:
– Universal Description, Discovery, and Integration (UDDI)
• Technical specification for distributed registries of Web
services and businesses open to communication on these
services
– Web Services Description Language (WSDL)
• XML-based grammar for describing Web services and
providing public interfaces for these services
– Simple Object Access Protocol (SOAP)
• XML-based communication protocol for sending messages
between applications via the Internet
• Challenges for Web Services
– Lack of mature standards
– Lack of security
21
Web services protocol stack
22
Deployment of Web services
23
Website Security
• Firewall
–
hardware/software
security
component that limits external access to
company’s data.
• Proxy server – firewall component that
manages Internet traffic to and from a LAN.
• Router – intermediate device that transmits
message packets to correct destination over
most efficient pathway.
• Intrusion detection system (IDS) – system
that identifies attempt to hack or break into a
system.
24
Establishing Internet security
Routers to transmit
message packets to
correct destination
Firewall to limit
external access
to data
IDS to monitor and
recognize security
breach attempts
25