ArcIMS 4 ArcIMS Tips & Tricks Dan Haag November 12, 2002 Overview Topics to a better ArcIMS site Performance Scalability Availability Security Manageability
Case Studies ArcIMS 4 ArcIMS Evolutio n ArcIMS 9 ArcIMS Tracking Server ArcIMS ArcMap Server ArcIMS 4 2002 ArcIMS Route Server ArcIMS 3.1 ArcIMS 4 2001 Migrating from previous
versions Currently using ArcIMS 3.0: Wait until you receive ArcIMS 4. Migrate directly from ArcIMS 3.0 to 4, following instructions for 3.0 to 3.1 migration. Migrating pdf available at support.esri.com. Currently using ArcIMS 3.1: ArcIMS 4 Use existing 3.1 config axls & viewers in 4.0. No modifications should be required. System Requirements Microsoft
Windows NT 4.0, 2000, XP Sun Solaris, AIX, HP-UX, Linux Choice of operating system will determine: Web Server Java Servlet engine Application Servers Java Runtime Environment (JRE) Detailed ArcIMS 4 requirements at support.esri.com Installation Tips General
Uninstall ArcIMS 3.1/3.0 completely Uninstall Servlet Engine & JRE Install ArcIMS 4.0 Use Site Converter Utility to transfer existing serialization files to new format if desired. Migrate Viewers & config axl files if going from 3.0 to 4.0 ArcIMS 4 Installation Tips Install JRE before anything else JRE 1.3.1 ships with ArcIMS Make sure that Web server is up and running
Use default port 80 for web server, different one for additional servers Hit http://localhost to ensure web server is running, or use web servers management tool. Make sure that the servlet engine is correctly installed and configured with the web server Can only have ONE servlet engine configured ArcIMS 4 More Installation Tips Use test servlets that come with software Example: ServletExec, test with
Make sure virtual directories are in place Adequate system resources for ArcIMS Spatial Servers Network security issues: Firewalls, DNS issues Use the ArcIMS Diagnostics Page: http://localhost/servlet/TestServlet http://localhost/servlet/DateServlet C:\Program Files\ArcGIS \ArcIMS\Common\Diagnostics\ArcIMS_Diagnostics.html
Majority of installation problems start and end here!!! ArcIMS 4 Performance How long does a request take? Perceived vs. actual performance Focus on getting the fastest single user performance by Tuning your data Tuning your AXLs Choosing your client applications ArcIMS 4 Spatial Server Log Files
Use your spatial server log files to determine performance and hot spots Most popular map services Slowest map services Slowest layers Located in the \Server\log or $AIMSHOME/log directory One log file for each server type: image, feature, query, geocode, extract, arcmap, metadata Provide a record of all requests and responses First place to go if theres a problem with the
response ArcIMS 4 Turning Log Files on Log files, by default, only log errors To log all requests and responses: Open aimsserver.cfg in server\etc directory Change logfiles=errors to logfiles=on Restart monitor and appserver More details on log files are available at http://support.esri.com/ ArcIMS 4 Type in the key words log files
Tune Your Data Data Shapefiles Generalize data by reducing features and/ or vertices Make sure your spatial index files (.sbn and .sbx) are in sync with your data ArcSDE RDBMS tuning Grid sizes
ArcIMS 4 Steps to Better AXL Tuning Tune your scale dependencies Where clause vs. Valuemaps 1. 2. SPATIALQUERYs searchorder attribute (ArcSDE only) 3. 4. ArcIMS 4 Use where clauses when you can reduce the number of features found.
Use attributefirst if the query will reduce the amount of features queried more than the filter. Use Strings & Integers in Valuemaps Steps to Better AXL Tuning 5. Use Featurelimits for large layers 6. 7. Minimize the use of antialiasing and transparency Minimize multilayered symbols ArcIMS 4 To avoid having large queries bog
down your system Cased highways, etc. Steps to Better AXL Tuning Choose the right output image (GIF, JPG, PNG-8 bit, PNG-24 bit) 8. 9. 10. ArcIMS 4 JPG, PNG-24 bit for > 256 Colors GIF, PNG-8 bit for < 256 Colors
Bandwidth 28.8k connection use server side or thin DSL or Intranet can use thick Functionality ArcIMS 4 Simple functionality (pan, zoom, id)thin Sophisticated geoprocessingthick Tune Your Viewers
Default viewers are meant to be generic. Modify them so that they are optimized for your data and application. If you need major customization, use the server side connectors (Java, ActiveX, or ColdFusion). ArcIMS 4 Scalability How can you maintain your single user performance across multiple users? Tune your ArcIMS instances Hardware (capacity planning) ArcIMS 4
Understanding Instances ArcIMS 4 Understanding Instances ArcIMS 4 How Many ArcIMS Instances Do I Need? Answer: Approximately one for each simultaneous request Simultaneous users are not the same as simultaneous requests!
Can estimate simultaneous requests from average requests per day Example: 300,000 avg. req/day ArcIMS 4 Average Request/Second Estimate From avg. req/day find avg. req/s Might use 80/20 rule 80% of Web traffic occurs 20% of the time
For 300,000 avg. req/day, this is 14 avg. req/s. ArcIMS 4 Maximum Request/Second Estimate Poisson distribution can be used to estimate the maximum req/s. P ( x) e x x! P(x) is the probability of getting x
simultaneous requests with an avg. req/ s of ArcIMS 4 Some Examples Poisson Distribution of Simultaneous Requests for Different Means 14.00% Probability 12.00% 14 req/s avg. 10.00% 8.00% 10 req/s avg. 6.00% 4.00% 20 req/s avg.
avg. req/day, you will at most get 2627 simultaneous requests. What Does All This Mean? For 300,000 -> expect 27 requests/second Need to scale your ArcIMS site to handle 27 simultaneous requests: ArcIMS 4 Set the number of instances to 27 if you dont want requests to wait in the queue
How Many ArcIMS Machines Do I Need? Rule of thumb 48 instances of ImageServer per CPU 515 instances of FeatureServer per CPU No more than 10 instances per spatial server Some variables affect this ArcIMS 4 Scalability Factors ArcSDE vs. Shapefiles Shapefiles Faster setup Faster single hit performance
DE ArcS More CPU usage on MapServer ArcSDE Better maintainability Number of Users Better scalability Offset CPU to DB server ArcIMS 4 Sha p Retrieval Time e Scalability Factors
Vector vs. Raster Raster decompression (MrSID, JPG, etc.) requires more CPU on spatial server. FeatureServer vs. ImageServer FeatureServer only retrieves features and streams them (compressed or decompressed). ImageServer retrieves and renders features and therefore takes more CPU. ArcIMS 4 Other Scalability Factors Serverside business logic ColdFusion/JSP/ASP
Extra processing on Web server machines ArcIMS 4 Other Scalability Factors Make sure you have enough bandwidth ImageServer Average Image Size * req/s = Mbits/s Example 1: Example 2:
10k PNG * 10 = .1MBytes/s = .8Mbits/s = T1 FeatureServer Depends ArcIMS 4 100k JPG * 50 = 5MBytes/s = 40Mbits/s = Large T3! Compression ~1020 times Number of features transferred Virtual Servers What are they?
Groups of instances across machines Why do we need them? ArcIMS 4 To be able to assign services to different spatial servers/machines Virtual Servers Recommendation Use only the default virtual server Except if
Need to prioritize services ArcIMS 4 e.g., Services A and B are more important and need to run on the 1.5 GHz machine. Services C and D are less important and can run on the 133 MHz machine. Availability How much time is your site available for use? Components will fail. Often measured in percentage uptime.
2628 525.6 52.56 5.256 How to Maximize Availability Machine availability Use UPSs on all machines Redundant power supplies Everything hot swappable Data availability
Use a RAID configuration ArcIMS 4 Level 0striping Level 1mirroring Level 5parity Level 0+1mirrored and striped Application Availability Web servers Multiple Web servers with a load balancer
ArcIMS availability Distribute components on different machines Multiple spatial servers Multiple ArcIMS AppServers ArcIMS 4 Always run multiple spatial servers Distribute spatial servers on multiple machines Consider running multiple ArcIMS AppServers Network Availability
Multiple Internet Connections Backup Firewalls Backup Routers Backup Switches ArcIMS 4 Staging & Production Never ever develop and test on your production system. Development Staging
Develop and test new applications Test new applications under production conditions Production ArcIMS 4 Move to production when ready Monitor, Monitor, Monitor Even if Web site is designed for 99.999% availability, things will
still fail. Monitoring can be done using Simple scripts: perl, awk, bat Commercial tools (SNMP, etc.) Alerts can easily be sent to a pager ArcIMS 4 Security How secure is your site? How long would it take for someone to break-in? What would be the costs related to a break-in? ArcIMS 4
Firewalls A firewall allows control of access to a machine from the network. It filters out packets of data based on a set of rules. ArcIMS 4 For instance: allow all access to port 80 (http) and disallow all other ports on the system (ftp, telnet, etc.). Recommend: DMZ Network Internet Internet DMZ Web
Server ArcIMS Server Intranet Intranet ArcIMS 4 Most Popular Web Server Outside Firewall Port 5300 Open File sharing from Intranet to Web server for image output Intranet Intranet Internet Internet
Web Server ArcIMS 4 AppServer Spatial Server Data Not Recommended Connection between AppServer and spatial server persistent Http 5353 WebServer + AppServer ArcIMS 4 Spatial
Servers Service Authentication Access to ArcIMS services can be restricted Only people with proper credentials can access services If information for accessing service is not correct, request is not sent to the ArcIMS Application Server, and an error message is returned to client Process is called authentication ArcIMS 4 Limiting Access
By user name and password By IP address By setting an expiration date By limiting the number of times a user can access the MapService By limiting request elements such as GET_IMAGE or GET_FEATURES ArcIMS 4 Access Control List (ACL) Text file based JDBC-based ACL
XML based using XML elements File is loaded in memory Cumbersome to manage with many users Must restart servlet engine after every change Store permissions in a relational database accessed through a JDBC driver Easier to manage large number of users Changes can be made without restarting the servlet engine If ACL is used, services are not accessible unless listed ArcIMS 4 ArcIMS Authentication
Use Digest Authentication Not Basic Use the RDBMS Acl over the filebased Acl Can dynamically add/remove/update users Single place to store privileges ArcIMS 4 Manageability
How manageable is your system? Use fewer machines! Use standard paths on all machines. Come up with a standard methodology for installations, patches, etc. Document all installs and changes made. ArcIMS 4 Case Studies One Machine Scenario Capacity Internet Internet 30,000 maps/day (6 max. req/ s) 95% availability (18 days/yr)
Configuration ArcIMS 4 1 machine running everything (Web server, ArcIMS, shapefiles) Can support about 46 simultaneous requests Two Machine Scenario Capacity Internet Internet
Web Server AppServer Configuration Spatial Server ArcIMS 4 50,000 maps/day (8 max. req/s) 95% availability (18 days/yr)
1 machine for Web server and AppServer 1 machine for spatial server and shapefiles Can support about 68 simultaneous requests Three Machine + DB Server Scenario Internet Capacity Internet Web Server AppServer
Configuration Spatial Server ArcSDE Server ArcIMS 4 150,000 maps/day (16 max. req/s) 99% availability (3.6 days/yr) 1 machine for Web server and AppServer
2 machines for spatial server 1 ArcSDE server Can support about 16 simultaneous requests Five Machine + DB Server Scenario Requirements Internet Requirements Internet Web Servers Configuration
AppServer Spatial Server Spatial Servers ArcSDE Server ArcIMS 4 250,000 maps/day (24 max. req/s) 99.5% availability (43 hrs/yr) 2 machines for Web server and AppServer 1 machine as AppServer/spatial
server 2 machines for spatial server 1 ArcSDE server Can support about 24 simultaneous requests A Large Size Mapping System Web Server ArcIMS 4 App Servers Spatial Servers ArcSDE Server ESRI Geography Network Node
ArcIMS 4 ESRI Geography Network Node Global Load Balancer Redlands ArcIMS 4 Off-Site Data Center Hardware Configuration Data servers Sun Ultra Enterprise 6500s
12360 MHz Processors 8 GB of Random Access Memory 1 TB of Disk Storage Web servers U220Rs, E250s ArcIMS 4 1 GB2 GB RAM 2450 MHz Processors Hardware Configuration AppServers/Spatial Servers E450s, U420Rs
Delaware Code Title 11 § 617 Criminal Youth Gangs (a) Definitions. (1) "Criminal youth gang" shall mean a group of 3 or more persons with a gang name or other identifier which either promotes, sponsors, assists in, participates in or...
The notion of converseness can be applied to examples in which three things (or people) are mentioned. ... Start review for Unit 11 Part 2. Assignments for last 3 Weeks. Dec. 2 Review of units 4, 5,6 for Mid 2...
The Cell Theory. 1. All living things are composed of one or more cells. 2. Cells are organisms' basic units of structure and function. ... or worn out cell parts. they are also called suicidal bags of the cells. Instructional...
PowerPoint Presentation Last modified by: Government User ... Times New Roman Tahoma WP IconicSymbolsA Arial Unicode MS Arial Default Design Window to My Environment No Slide Title No Slide Title No Slide Title No Slide Title No Slide Title No...
Title: This document demonstrates how a typical London 2012 presentation will feel to reflect our ambition and new brand, and includes a running order of sample slides supported by a library of additional slides to choose from.
Patients who are controlled should cont. 2-4 more weeks. If symptoms persist then refer to specialist for additional diagnostic testing. * Mortality rate decreased d/t discovery of H. Pylori and PPI's. * Socioeconomic status may play into risk factors as...
Ready to download the document? Go ahead and hit continue!