Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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 2 Sample Network PC Web Server PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 3 Architecture CGI Script User Space Web Server Software Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card Hardware HTML Pages 4 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. 5 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. 6 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. 7 Example Transaction 1. Client makes request to Web Server PC Web Server PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 8 Example Transaction 2. Web server fetches HTML page containing a form from the hard drive CGI Script User Space Web Server Operating System Space System I/O Layer Motherboard Physical World Video Card Data Network Card HTML Pages 9 Example Transaction 3. Server sends page to client PC Web Server PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 10 Example Transaction 4. User fills in form and clicks on submit button. PC Web Server PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 11 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 PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 12 Example Transaction 6. Web server executes CGI script and passes it form data. CGI Script User Space Web Server Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card HTML Pages 13 Example Transaction 7. CGI script validates the “form” data. CGI Script User Space Web Server Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card HTML Pages 14 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 PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 15 Example Transaction 9. The SQL server locates the data and sends it back to the CGI Script. PC Web Server PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 16 Example Transaction CGI Script User Space Web Server Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data HTML Pages Video Card Network Card 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. 17 Example Transaction 11. The CGI script passes the newly formed page to the web server. CGI Script User Space Web Server Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card HTML Pages 18 Example Transaction 12. Web server sends the final page to the client PC’s browser which displays it for the user. PC Web Server PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 19 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 20 The E-Commerce App CGI Script User Space Web Server Software Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card Hardware HTML Pages 21 The E-Commerce App - Web Page Languages - CGI Scripts & Their Languages - What do the scripts do? - Prepackaged or Custom? 22 Web Page Languages - HTML - JavaScript - Java - ActiveX 23 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. 24 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... 25 Java - Sophisticated language and operating environment from Sun Microsystems - Very intelligent - Platform Independent - Sample Apps: word processors, control systems, network services 26 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 27 Best Use HTML - The basis of all web pages - Pages should be accessible to HTML only browsers JavaScript - Add on to HTML for pizzazz 28 Best Use Java - Add real sophistication to web pages ActiveX - Add real sophistication to web pages - Best in Intranets - Sites may block your ActiveX 29 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 30 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 31 CGI Script/ASP Languages - Visual Basic/VB Script - Shell Scripts - Java - Perl - C/C++ 32 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 33 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 34 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. 35 Perl - An extremely versatile language designed by Larry Wall - Scripts can be written quickly and efficiently - A very practical language - Platform Independent 36 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 37 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 38 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 39 Pre-Packaged vs. Custom Custom - Expensive - Long implementation time - Built to suit Hybrid - Best overall solution 40 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 41 Web Servers CGI Script User Space Web Server Software Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card Hardware HTML Pages 42 Web Servers - Microsoft IIS - Netscape Enterprise - Apache 43 Microsoft IIS - IIS = Internet Information Server - Inexpensive - Solid feature set - Fast - Best pre-packaged site support - Security Problems - Platform Dependant 44 Netscape Enterprise Server - Best overall web server - Best feature set - Decentralized content creation - Good security - Multi-platform - Relatively costly 45 Apache - Market dominance (55%) - Very fast, scalable & flexible - Great support - Best security - Not user friendly - Features may need to be added 46 Reliability Chart 1. 2. 3. Apache Netscape IIS 100 95 90 47 Scalability Chart 1. 2. 3. Apache Netscape IIS 100 90 45 48 Manageability Chart 1. 2. 3. Netscape IIS Apache 100 90 80 49 Security Chart 1. 2. 3. Apache Netscape IIS 100 95 60 50 User Friendliness Chart 1. 2. 3. IIS Netscape Apache 80 70 35 51 Price Chart 1. 2. 3. Apache IIS Netscape 100 98 40 52 Best Uses for Servers Microsoft IIS - Medium traffic sites - Good for cost conscious sites - Not good for E-Commerce Netscape Enterprise - Medium or high traffic sites - Best intranet server - E-Commerce capable 53 Best Uses for Servers Apache - Low, medium or high traffic sites - E-Commerce capable - Best overall server - Not for technical newcomers 54 Operating System What is it? - A software program - Manages all other programs - Manages hardware resources - Handles input and output from to and from devices like printers, disks, and the network - Communicates status info to users 55 Operating Systems CGI Script User Space Web Server Software Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card Hardware HTML Pages 56 Operating Systems - Windows 95/98 - Windows NT - Unix - Linux 57 Windows 95/98 - Microsoft’s consumer level OS - Not a proper OS - No scalability - Inefficient - Dies like a lemming - It’s rubbish - Never use it for anything serious 58 Windows NT/2000 - Microsoft’s Professional OS - Better than 95/98 in every respect - Inexpensive - Excellent application support - Security Issues - Immature - Highly proprietary 59 Unix - Collection of similar OSes - HP/UX, Solaris, AIX - Best is all categories except User Friendliness - Mature, Internet = Unix - Multi-user design - Expensive and technical 60 Linux - Free version of Unix - Huge momentum in marketplace - Great support - Friendlier than other Unixes - E-Commerce in a box - Not quite as good as other Unixes 61 Reliability Chart 1. 2. 3. 4. 5. Unix Linux Windows NT Windows 95 Windows 3.11 100 90 40 15 5 62 Scalability Chart 1. 2. 3. 4. Unix Linux Windows NT Windows 95 100 50 20 5 63 Manageability Chart 1. 2. 3. 4. Unix Linux Windows NT Windows 95 100 90 60 40 64 Security Chart 1. 2. 3. 4. B1 Unix C2 Unix/Linux Windows NT Windows 95 100 65 40 5 65 User Friendliness Chart 1. 2. 3. 4. 5. Macintosh Windows 95 Windows NT Linux Unix 100 60 55 45 20 66 Price Chart 1. 2. 3. 4. Linux Windows 95 Windows NT Unix 95 65 35 10 67 Best Uses of Each OS Windows 95 - Games - Word Processing - Not a serious OS Windows NT - Low to medium traffic - Be very careful with E-Commerce - Best for low-tech firms 68 Best Uses of Each OS Unix - Low, medium and high traffic - E-Commerce capable - Best for mega-sites Linux - Low, medium and high traffic - E-Commerce capable - Good for all uses 69 Hardware What is it? - The physical components of a computing system - If it can be held in your hand it’s hardware - If it can’t it’s software 70 Hardware CGI Script User Space Web Server Software Operating System Space System I/O Layer Motherboard Physical World HD Controller Hard Drive Data Video Card Network Card Hardware HTML Pages 71 Hardware - Architecture - Hard Drives - Backup Systems - Network Interfaces - RAM 72 Architecture - CISC (Complex Instruction Set Comp.) Can do complex operations Can do many functions i.e. 486, Pentium, PowerPC - RISC (Reduced Instruction Set Comp.) Can do a few simple operations Faster than CISC i.e. SPARC, HP9000 73 Hard Drives - Single A regular hard drive - Mirrored Fault-Tolerant Expensive - Drive Array Fault-Tolerant Slower but cheaper than Mirror 74 Hard Drives - Highly Redundant Drive Enclosure External to server Can lose multiple drives Very fast Very expensive 75 Backup Systems - DAT (Digital Audio Tape) Fast, efficient and reliable Tape sizes from 2-24GB Backwards compatible - DLT (Digital Linear Tape) Very fast, reliability problems Tapes can hold up to 70GB New technology 76 Backup Systems - Tape Library Uses multiple DLTs or DATs Uses many tapes Robotic arm changes tapes 77 Network Interfaces - LAN (Local Area Network) Small in geographic size Fast and cheap Owned - WAN (Wide Area Network) Connects distant LANs Slow and expensive Rented 78 Random Access Memory - Regular Garden variety memory - Parity Checks for memory errors Stops machine on error - ECC (Error Checking and Correcting) Checks for memory errors Corrects errors 79 Next Time PC Web Server PC Internet R SQL Server PC FW PC Mail Server File Server PC PC 80