800 likes | 920 Vues
Technical Aspects of E-Commerce Part 1 of 2. Mort Anvari. Introduction. - Overview of Sample Network - Definitions - Transaction Walk Through - The E-Commerce Application - Web Servers - Operating Systems - Hardware. Sample Network. PC. Web Server. SQL Server. PC. Internet.
E N D
Technical Aspects ofE-Commerce Part 1 of 2 Mort Anvari
Introduction - Overview of Sample Network - Definitions - Transaction Walk Through - The E-Commerce Application - Web Servers - Operating Systems - Hardware
Sample Network PC Web Server SQL Server PC Internet FW PC PC R PC Mail Server File Server PC
CGI Script Web Server User Space Software Operating System System Space I/O Layer Motherboard Physical World HD Controller Hardware Network Card Video Card Hard Drive HTML Pages Data Architecture
Definitions Scalability - The ability of a product to work well as it or it’s environment is changed in size or power. Reliability - The ability of product to continue working in adverse situations or with bad data. TCO - Total Cost of Ownership. How much a product costs over it’s life span.
Definitions Manageability - The ease with which a product can be maintained. Also, the degree of control allowed by the vendor. User Friendliness - The ease with which and untrained person can use a product. Security - The ability of a product to protect itself from malicious attack.
Example Transaction In our example, the user wants to get their bank statement for the month as well as their bank balances. This is representative of small to medium size e-commerce sites. Larger sites use much of the same components, but more powerful or in larger quantities.
Internet Example Transaction 1. Client makes request to Web Server PC Web Server SQL Server PC FW PC PC R PC Mail Server File Server PC
Web Server Network Card Video Card Example Transaction 2. Web server fetches HTML page containing a form from the hard drive CGI Script User Space Operating System System Space I/O Layer Motherboard Physical World HTML Pages Data
Internet Example Transaction 3. Server sends page to client PC Web Server SQL Server PC FW PC PC R PC Mail Server File Server PC
Internet Example Transaction 4. User fills in form and clicks on submit button. PC Web Server SQL Server PC FW PC PC R PC Mail Server File Server PC
Internet Example Transaction 5. Browser sends contents of form to web server requesting that it be passed to a specific cgi script. The name of the script to be executed is embedded in the form. PC Web Server SQL Server PC FW PC PC R PC Mail Server File Server PC
Web Server Network Card Video Card Example Transaction 6. Web server executes CGI script and passes it form data. CGI Script User Space Operating System System Space I/O Layer Motherboard Physical World HD Controller Hard Drive HTML Pages Data
Network Card Video Card Example Transaction 7. CGI script validates the “form” data. CGI Script User Space Web Server Operating System System Space I/O Layer Motherboard Physical World HD Controller Hard Drive HTML Pages Data
Internet Example Transaction 8. The script contacts the SQL server and requests the account history and balances using the account number given to the script by the user. PC Web Server SQL Server PC FW PC PC R PC Mail Server File Server PC
Internet Example Transaction 9. The SQL server locates the data and sends it back to the CGI Script. PC Web Server SQL Server PC FW PC PC R PC Mail Server File Server PC
Network Card Video Card Example Transaction 10. Using the account history and balances acquired from the SQL server, the script creates a web page. A common method is to have a template file that contains the basic HTML formatting and fill in the body with dynamic data. CGI Script User Space Web Server Operating System System Space I/O Layer Motherboard Physical World HD Controller Hard Drive HTML Pages Data
Web Server Network Card Video Card Example Transaction 11. The CGI script passes the newly formed page to the web server. CGI Script User Space Operating System System Space I/O Layer Motherboard Physical World HD Controller Hard Drive HTML Pages Data
Internet Example Transaction 12. Web server sends the final page to the client PC’s browser which displays it for the user. PC Web Server SQL Server PC FW PC PC R PC Mail Server File Server PC
The E-Commerce App What is it? - Set of software components and web data - Made to conduct business transactions - Designed to interact with both web users and internal company systems - It is the web site - All other components act as support for this piece
Web Server Video Card Network Card The E-Commerce App CGI Script User Space Software Operating System System Space I/O Layer Motherboard Physical World HD Controller Hardware Hard Drive HTML Pages Data
The E-Commerce App - Web Page Languages - CGI Scripts & Their Languages - What do the scripts do? - Prepackaged or Custom?
Web Page Languages - HTML - JavaScript - Java - ActiveX
HTML Hyper Text Markup Language - The Lingua Franca of the Web - Accessible from all browsers - No Intelligence - Cannot be changed on the fly - All of your pages should look good using HTML only. The rest is gravy.
Java Script - Language designed to add minor functionality to HTML pages - Simple Intelligence - Sample Apps: counters, audio effects, calculators, scrolling text, menus, graphic effects etc...
Java - Sophisticated language and operating environment from Sun Microsystems - Very intelligent - Platform Independent - Sample Apps: word processors, control systems, network services
ActiveX - A mechanism for transmitting full programs over the internet and running them - Arguably most powerful technology - Major security headache - Platform Dependant - Faster than Java
Best Use HTML - The basis of all web pages - Pages should be accessible to HTML only browsers JavaScript - Add on to HTML for pizzazz
Best Use Java - Add real sophistication to web pages ActiveX - Add real sophistication to web pages - Best in Intranets - Sites may block your ActiveX
CGI Scripts - CGI = Common Gateway Interface - CGI connects web users to programs - Script is just a normal program - Makes web pages - May take other, advanced actions - Think Security: The whole world can run programs on your server
ASPs and PHP3 - ASP = Active Server Page - PHP3 = PHP: Hypertext Preprocessor - A very efficient replacement for CGI - Puts tiny programs in web pages - The programs are run before the page is sent to the browser - Browsers can only see the results of the program
CGI Script/ASP Languages - Visual Basic/VB Script - Shell Scripts - Java - Perl - C/C++
Visual Basic/VB Script - Reasonably sophisticated languages produced by Microsoft - Easy to find programmers - Not Platform Independent - Not very efficient - VB Script is a cut-down version of Visual Basic
Shell Scripts - A way of automating complex tasks in Unix. Like a DOS batch file but far more sophisticated - Powerful and easy to write - Platform Independent amongst Unixes
Java - Java is also used as a server side language. It is one of the few that can be used on both the client and server sides.
Perl - An extremely versatile language designed by Larry Wall - Scripts can be written quickly and efficiently - A very practical language - Platform Independent
C/C++ - The Lingua Franca of professional application development - Easy to find programmers - Takes longer to write in but yields a better product - Platform Independent
Types of Scripts - Submit form contents into database - Send form contents via e-mail - Retrieve information from database and create web page based on it - Verify credit card transaction - Send form contents as fax - Send a message to a pager
Pre-Packaged vs. Custom Pre-Packaged - Minimal Effort - Many can be found for free - Difficult or impossible to customize - Licensing agreements may limit your commercial use
Pre-Packaged vs. Custom Custom - Expensive - Long implementation time - Built to suit Hybrid - Best overall solution
Web Server What is it? - A software program - Prepares HTML pages by reading them from disk or executing a CGI Script - Sends HTML pages to web client - Runs the CGI scripts - Passes user data to the CGI scripts
Web Server Video Card Network Card Web Servers CGI Script User Space Software Operating System System Space I/O Layer Motherboard Physical World HD Controller Hardware Hard Drive HTML Pages Data
Web Servers - Microsoft IIS - Netscape Enterprise - Apache
Microsoft IIS - IIS = Internet Information Server - Inexpensive - Solid feature set - Fast - Best pre-packaged site support - Security Problems - Platform Dependant
Netscape Enterprise Server - Best overall web server - Best feature set - Decentralized content creation - Good security - Multi-platform - Relatively costly
Apache - Market dominance (55%) - Very fast, scalable & flexible - Great support - Best security - Not user friendly - Features may need to be added
Reliability Chart 1. Apache 100 2. Netscape 95 3. IIS 90
Scalability Chart 1. Apache 100 2. Netscape 90 3. IIS 45
Manageability Chart 1. Netscape 100 2. IIS 90 3. Apache 80
Security Chart 1. Apache 100 2. Netscape 95 3. IIS 60