Date: 01.07.2004 About the Presenter: 7 years of Cold Fusion development experience Participated in the development of 100+ Cold Fusion websites 10 years of Webhosting/ ISP/ Telecommunications experience Co-Founder and Director of Operations for Digital North Email: jbaker@digitalnorth.net About Digital North: Business Class Hosting Provider since 2001 Shared and Dedicated Hosting, Colocation, Managed Services 3 Data Centers: Agiliti, Inflow, Visi Windows, Linux, IIS, Apache, MS SQL, Load Balancing, Firewalls, Cold Fusion 4.5-6.1, Flash Remoting We serve over 1,000 business customers www.digitalnorth.net What is High Availability? High Availability (HA) web applications provide maximum uptime while minimizing risks associated with service failures. We need to think about the Datacenter, Network, Server, OS, Application, People Risks: Architecture changes, Business process changes, Cost Rewards: Better uptime, faster websites, happy customers HA Infrastructure Requirements Environment Is Everything Physical service location Climate control Physical security protection from yourself Power backup and redundancy Multiple upstream providers Local network redundancy Fire suppression HA Webserver Requirements Server-class machine Redundant power supplies Redundant Array of Independent Disks (RAID) Network storage Redundant network access Latest Firmware updates HA OS & Application Requirements Hardened OS: Windows, Linux, Sun Security and performance tweaks Virus Protection Firewall Protection Intrusion Detection Data Backup Onsite and Offsite Service Monitoring Cold Fusion Security Best Practices http://www.macromedia.com/devnet/server_archive/articles/prioritizing_network_server_security.html Macromedia Security Zone: http://www.macromedia.com/devnet/security/security_zone/ What is Load Balancing? Load Balancing is using multiple webservers to maximize service performance and minimize service failures. 2+ servers can handle more requests or handle current requests faster 2+ servers minimize risks associated with hardware failure, OS failure, Cold Fusion failure Load Balancing Techniques DNS Round-Robin: El Cheapo Method Software Load Balancing: The Heartbeat Cold Fusion MX for J2EE: Multiple Instances Application Isolation ColdFusion Development Center: http://www.macromedia.com/devnet/mx/coldfusion/clustering.html
Cold Fusion Distributed Mode
Hardware Load Balancing http://www.macromedia.com/devnet/server_archive/articles/choosing_hardware_lbdevice.html Hardware Load Balancing Network Architecture Server failover: one server takes the load of INTERNET two servers Load balancing LoadBalancingSwitch algorithms: Round Robin, Least Used, Webserver#1 Webserver#2 Fastest Response Sticky sessions Service monitoring agents Active Content Verification Cold Fusion Development Issues Best case scenario: Cold Fusion installation is identical on multiple servers Store Cold Fusion session information in a database!! (Common problem) Beware of local databases (MS Access) Beware of writing to local disk (uploads), memory, or registry Use replication to deploy application Create a clustered development environment to properly test Additional Design Issues Load balanced applications could share similar failure points Recognize issues related to applications sharing a common database SSL requirements: same key on each server or SSL proxy on hardware Logfile analysis tools need to handle multiple logs Stress test your applications in a load balanced environment Hardware Load Balancing Costs Costs for an entry-level solution (2 servers, < 1000 simultaneous connections, 5-10 Mb/s bandwidth) Hardware: 2 Dell/HP/IBM Servers $6,000 1 Load Balancing Switch $5,000 Software: 2 MS Windows 2000 $1,500 2 Cold Fusion MX $2,500 1 File Replication $1,000 Labor: 8 hours $1,000 Total: $17,000 Questions? Thank you!