Sun Microsystems 7 - Manuals
Sun Microsystems 7 – Manual in PDF format online.
Manuals:
Manual Sun Microsystems 7
Summary
Contents Preface ...................................................................................................................................................11 1 Performance and Monitoring Overview .......................................................................................... 19 P...
Tables TABLE 1–1 Methods of Monitoring Performance ..................................................................... 22 TABLE 2–1 Parameter Mapping to server.xml ........................................................................ 46 TABLE 2–2 Connection Queue Statistics .......................
Figures FIGURE 2–1 Web Server Connection Handling .......................................................................... 40 9
Preface This guide discusses adjustments you can make that may improve the performance of Sun JavaSystem Web Server (henceforth known as Web Server). The guide provides tuning, scaling, andsizing tips and suggestions; possible solutions to common performance problems; and datafrom scalability studie...
TABLE P–1 Books in the Web Server Documentation Set (Continued) Documentation Title Contents Sun Java System Web Server 7.0 Update 1 Developer’sGuide to Java Web Applications Implementing Java Servlets and JavaServer Pages TM (JSP TM ) technology in Sun Java System Web Server Sun Java System Web Ser...
Typographic Conventions The following table describes the typographic changes that are used in this book. TABLE P–3 Typographic Conventions Typeface Meaning Example AaBbCc123 The names of commands, files, anddirectories, and onscreen computeroutput Edit your .login file. Use ls -a to list all files....
TABLE P–4 Symbol Conventions (Continued) Symbol Description Example Meaning → Indicates menu item selection in agraphical user interface. File → New → Templates From the File menu, choose New. From theNew submenu, choose Templates. Documentation, Support, and Training The Sun web site provides infor...
Sun Welcomes Your Comments Sun is interested in improving its documentation and welcomes your comments andsuggestions. To share your comments, go to http://docs.sun.com and click Send Comments. In the online form, provide the full document title and part number. The part number is a7-digit or 9-digi...
Performance and Monitoring Overview Sun Java System Web Server (henceforth known as Web Server) is designed to meet the needsof the most demanding, high-traffic sites in the world. It can serve both static and dynamicallygenerated content. Web Server can also run in SSL mode, enabling the secure tra...
Because using the Administration Server takes computing resources, the command-lineinterface and the Admin Console are the most costly monitoring methods. For more information on these monitoring methods, see the following sections: ■ “About Statistics” on page 23 ■ “Monitoring Current Activity Usin...
■ Java DataBase Connectivity (JDBC TM ) (available if a JDBC resource is created and the connection pool is accessed) For the virtual server, statistics are available in the following areas: ■ General ■ Response ■ Web Applications ■ Profiling Data (available if profiling is enabled) ■ Servlet and Se...
Restart the server. ▼ To Enable Statistics from the CLI Enter the following CLI command to enable statistics collection: ./wadm set-stats-prop --user= admin_user –password-file= password-file --config= myconfig enabled=true To disable statistics, set enabled to false. To set the interval and enable ...
Monitoring Current Activity Using the CLI You can also view statistics information using the wadm commands get-config-stats , get-virtual-server-stats , get-webapp-stats and get-servlet-stats . Note that the examples below do not contain all possible command options. For the complete syntax, see the...
process.1.fileCache.countInfoMisses=19 process.1.jvm.countGarbageCollections=96 process.1.jvm.sizeHeap=67762048 process.1.jvm.countThreads=79 process.1.jvm.countClassesUnloaded=0 process.1.jvm.vMVendor=Sun Microsystems Inc. process.1.jvm.countTotalClassesLoaded=3170 process.1.jvm.vMName=Java HotSpot...
The syntax gets the statistics for a given web application deployed on the given virtual server ofthe given instance. To get the aggregated web application statistics for a given configurationacross all the nodes where the configuration has been deployed, use the command without the node option. The...
■ session-replication ■ thread ■ thread-pool ■ thread-pool-bucket (process-level) ■ virtual-server ■ web-app-bucket ▼ To View stats-xml Output from the CLI In addition to a URI, you can also access stats-xml output through the command-line interface. It is enabled by default. Unlike viewing stats-xm...
Note – The statistics displayed by perfdump are for the server as a whole. If you enable perfdump on one virtual server, it displays statistics for the whole server, not an individual virtual server. From Common Tasks, select a configuration. Select the virtual server and click Edit Virtual Server. ...
▼ To View the perfdump Data from the CLI In addition to a URI, you can also access perfdump output through the command-line interface. It is enabled by default. Unlike viewing perfdump output through the URI, the Administration Server must be running to view perfdump output at the command-line. Howe...
29133 response 192.6.7.7 2 https-test GET /qa_webapp/CheckNetwork.class service-j2ee 29133 response 192.6.7.7 2 https-test GET /qa_webapp/CheckNetwork.class service-j2ee 29133 response 192.6.7.7 2 https-test GET /qa_webapp/CheckNetwork.class service-j2ee 29133 response 192.6.7.7 2 https-test GET /qa...
Configuration You must specify all configuration information for performance buckets in the magnus.conf and obj.conf files. Only the default-bucket is automatically enabled. First, you must enable performance statistics collection and perfdump . The following examples show how to define new buckets ...
Tuning Sun Java System Web Server This chapter describes specific adjustments you can make that might improve Sun Java SystemWeb Server performance. It provides an overview of Web Server's connection-handling processso that you can better understand the tuning settings. The chapter includes the foll...
■ Adjust gradually When adjusting a quantitative parameter, make several stepwise changes in succession,rather than trying to make a drastic change all at once. Different systems face differentcircumstances, and you might leap right past your system’s best setting if you change thevalue too rapidly....
A request processing thread might also be instructed to send the request to a different threadpool for processing. For example, if the request processing thread must perform some work thatis not thread-safe, it might be instructed to send part of the processing to the NativePool. Oncethe NativePool ...
Connection–Handling magnus.conf Directives for NSAPI In addition to the settings discussed above, you can edit the following directives in the magnus.conf file to configure additional request-processing settings for NSAPI plug-ins: ■ KernelThreads – Determines whether NSAPI plug-ins always run on ke...
3. A different thread in my-custom-pool , called the B1 thread in this example, picks up the request queued by A1. B1 completes the request and returns to the wait stage. 4. The A1 thread wakes up and continues processing the request. It executes the ObjectType SAF and moves on to the Service functi...
Init funcs= " pcheck_uri_clean_fixed_init " shlib= " C:/Sun/webserver7/lib/custom.dll " fn= " load-modules " NativeThread= " no " The NativeThread flag affects all functions in the funcs list, so if you have more than one function in a library, but only some of them u...
■ “Java Virtual Machine (JVM) Information” on page 70 ■ “Web Application Information” on page 71 ■ “JDBC Resource Information” on page 72 Once you have viewed the statistics you need, you can tune various aspects of your server’sperformance at the configuration level using the Admin Console's Perfor...
TABLE 2–2 Connection Queue Statistics Present Number of Connections Queued 0 Total Number of Connections Queued 11222922 Average Connections Over Last 1 Minute 90.35 Average Connections Over Last 5 Minutes 89.64 Average Connections Over Last 15 Minutes 54.02 Maximum Queue Size 160032 Peak Queue Size...
This setting is not tunable. Average Queue Length The Average Queue Length shows the average number of connections in the queue over the lastone-minute, five-minute, and 15–minute intervals. This setting is not tunable. Average Queuing Delay The Average Queueing Delay is the average amount of time a...
If you have created multiple HTTP listeners, perfdump displays all of them. To edit an HTTP listener using the Admin Console, for the configuration, select the HTTPListeners tab. Click the listener name to edit the listener. To configure an HTTP listener using the command-line interface, use the com...
Default Virtual Server Virtual servers work using the HTTP 1.1 Host header. If the end user’s browser does not sendthe Host header, or if the server cannot find the virtual server specified by the Host header, WebServer handles the request using a default virtual server. You can configure the defaul...
Keep-Alive Poll Interval The keep-alive poll interval specifies the interval (in seconds) at which the system pollskeep-alive connections for further requests. The default is 0.001 second, the lowest valueallowed. It is set to a low value to enhance performance at the cost of CPU usage. To tune the ...
The equivalent information as the Total Number of Threads is available through the AdminConsole from the Monitoring tab ⇒ Instances sub tab, under General Statistics. To see the maximum threads allowed, see the Maximum Threads field on the configuration's Performancetab ⇒ HTTP sub tab, under Thread ...
File Cache Entries 141/1024 File Cache Hit Ratio 652/664 ( 98.19%) Maximum Age 30 Accelerator Entries 120/1024 Acceleratable Requests 281/328 ( 85.67%) Acceleratable Responses 131/144 ( 90.97%) Accelerator Hit Ratio 247/281 ( 87.90%) The following table shows the file cache statistics as displayed i...
File Cache Entries number, you can improve the accelerator cache utilization by following thetuning information described in “Acceleratable Requests” on page 61 and “Acceleratable Responses” on page 61 . Acceleratable Requests The number of client requests that were eligible for processing by the ac...
Tuning Higher hit ratios result in better performance. To maximize the hit ratio, see the tuninginformation for “Acceleratable Responses” on page 61 . File Cache Enabled If the cache is disabled, the rest of this section is not displayed in perdump . In the Admin Console, the File Cache Statistics s...
Tuning Set the maximum age based on whether the content is updated (existing files are modified) on aregular schedule. For example, if content is updated four times a day at regular intervals, youcould set the maximum age to 21600 seconds (6 hours). Otherwise, consider setting themaximum age to the ...
... </Object> <Object name= " myname " > Service method=(GET|HEAD) type=*~magnus-internal/* fn=send-file nocache= "" </Object> In the above example, the server does not cache static files from /export/mydir/ when requested by the URL prefix /myurl . For more informa...
ReplaceFiles: false ReplaceInterval: 1 milliseconds HitOrder: false CacheFileContent: true TransmitFile: false MaxAge: 3600 seconds MaxFiles: 600000 files SmallFileSizeLimit: 500000 bytes MediumFileSizeLimit: 1000001 bytes BufferSize: 8192 bytes CopyFiles: false Directory for temporary files: /tmp H...
Native Thread Pool The following example shows native thread pool information as it appears in perfdump : Native pools: ---------------------------- NativePool: Idle/Peak/Limit 1/1/128 Work Queue Length/Peak/Limit 0/0/0 my-custom-pool: Idle/Peak/Limit 1/1/128 Work Queue Length/Peak/Limit 0/0/0 If yo...
Peak (Peak Requests Queued in the Admin Console) is the highest number of requests that were ever queued up simultaneously for the use of a native thread since the server was started. Thisvalue can be viewed as the maximum concurrency for requests requiring a native thread. Limit is the maximum numb...
The difference between this value and the maximum threads is the number of requests reservedfor non-native thread requests, such as static HTML and image files. Keeping a reserve andrejecting requests ensures that your server continues to fill requests for static files, whichprevents it from becomin...
CacheEntries 4/1024 HitRatio 62854802/62862912 ( 99.99%) AsyncDNS Data: ------------------ enabled yes NameLookups 0 AddrLookups 0 LookupsInProgress 0 The following example shows the DNS Cache information as displayed in the Admin Console: TABLE 2–6 DNS Cache Statistics Total Cache Hits 62854802 Tot...
Tuning You can set the maximum size of the DNS cache in the Admin Console in the Maximum CacheSize field on the configuration's Performance tab ⇒ DNS sub tab, under DNS Cache Settings. To set it using the command-line-interface, use wadm set-dns-cache-prop and set the max-entries property. The defau...
TABLE 2–7 Java Virtual Machine (JVM) Statistics (Continued) Total Number of Classes Unloaded 0 Number of Garbage Collections Occurred 3 Number of Live Threads 8 Number of Started Threads 9 Peak Live Thread Count 8 Most of these statistics are not tunable. They provide information about the JVM's ope...
On the Monitoring Statistics page, click Virtual Server Statistics. Click the virtual server name. On the Virtual Server Monitoring Statistics page, click Web Applications. Select the web application for which to view statistics from the Web Application pull-downmenu. Web Application Statistics The ...
The use of connection pooling improves application performance by doing the following: ■ Creating connections in advance. The cost of establishing connections is moved outside ofthe code that is critical for performance. ■ Reusing connections. The number of times connections are created is significa...
Connections This number shows the current JDBC connections, including both free and busy connections. Tuning – This setting cannot be tuned, but it is a good indicator of recent pool activity. If the number of connections is consistently higher than the minimum number of connections,consider increas...
JDBC Resource Statistics Not Available in the Admin Console Some JDBC statistics are available through the wadm get-config-stats command (using the --node option), through stats-xml , and through SNMP but not through the Admin Console. maxConnections – The configured maximum size of the pool. Use as...
While it would be extremely unusual to hit this possible performance problem, the number ofgroups cached in a single ACL cache entry can be tuned with Maximum Groups setting on theconfiguration's Performance tab ⇒ Cache sub tab. Or you can use the max-groups-per-user property of the wadm set-acl-cac...
When adding a web application, either through the Admin Console or CLI, choose theprecompile JSPs option. Enabling precompiled JSPs allows all the JSPs present in the webapplication to be pre-compiled, and their corresponding servlet classes are bundled in the webapplication's WEB-INF/lib or WEB-INF...
Using find-pathinfo-forward The find-pathinfo-forward parameter used in obj.conf can help improve your performance. It is used with the PathCheck function find-pathinfo and the NameTrans functions pfx2dir and assign-name . The find-pathinfo-forward parameter instructs the server to search forward fo...
Common Performance Problems This chapter discusses common web site performance problems, and includes the followingtopics: ■ “check-acl Server Application Functions” on page 85 ■ “Low-Memory Situations” on page 86 ■ “Too Few Threads” on page 86 ■ “Cache Not Utilized” on page 87 ■ “Keep-Alive Connect...
Low-Memory Situations If Web Server must run in low-memory situations, reduce the thread limit to a bare minimumby lowering the value of the Maximum Threads setting on the configuration's Performance Tab ⇒ HTTP sub tab. You can also set it with wadm set-thread-pool-prop command's max-threads propert...
Cache Not Utilized If the file cache is not utilized, your server is not performing optimally. Since most sites have lotsof GIF or JPEG files that should always be cacheable, you need to use your cache effectively. Some sites, however, do almost everything through CGIs, SHTML, or other dynamic sourc...
Platform-Specific Issues and Tips This chapter provides platform-specific tuning tips, and includes the following topics: ■ “Solaris Platform-Specific Issues” on page 89 ■ “Solaris File System Tuning” on page 93 ■ “Solaris Platform-Specific Performance Monitoring” on page 94 ■ “Tuning Solaris for Pe...
An alternative way to make this change is using the ulimit –n " value " command. Using this command does not require a system restart. However, this command only changes the loginshell, while editing the etc/system file affects all shells. Failure to Connect to HTTP Server If users are exper...
Connection Refused Errors If users are experiencing connection refused errors on a heavily loaded server, you can tune theuse of network resources on the server. When a TCP/IP connection is closed, the port is not reused for the duration of tcp_time_wait_interval (default value of 240000 millisecond...
■ nca(1) ■ snca(1) ■ nca.if(4) ■ ncakmod.conf(4) ■ ncalogd.conf(4) ▼ To Enable SNCA to Work With Web Server This procedure assumes that SNCA has been configured, as discussed above. From the Common Tasks page, choose a configuration and click Edit Configuration. Click the HTTP Listeners tab and sele...
Solaris File System Tuning This section discusses changes that can be made for file system tuning, and includes topics thataddress the following issues: ■ “High File System Page-In Rate” on page 93 ■ “Reduce File System Housekeeping” on page 93 ■ “Long Service Times on Busy Disks or Volumes” on page...
(the %b and svc_t columns, respectively). Service times are unimportant for disks that are less than about 30% busy, but for busier disks, service times should not exceed about 20milliseconds. If your busy disks have slower service times, improving disk performance mighthelp Web Server performance s...
■ The mpstat 60 command gives a detailed look at CPU statistics, while the netstat -i 60 command summarizes network activity. Long-Term System Monitoring It is important not only to " spot-check " system performance with the tools mentioned above, but to collect longer-term performance histo...
Tuning UltraSPARC® T1–Based Systems for PerformanceBenchmarking Use a combination of tunable parameters and other parameters to tune your system forperformance benchmarking. These values are an example of how you might tune your systemto achieve the desired result. Tuning Operating System and TCP Se...
TABLE 4–2 Tuning 64–bit Systems for Performance Benchmarking (Continued) Parameter Scope Default Value Tuned Value Comments tcp_conn_req_max_q0 ndd /dev/tcp 1024 3000 tcp_max_buf ndd /dev/tcp 4194304 tcp_cwnd_max ndd/dev/tcp 2097152 tcp_xmit_hiwat ndd /dev/tcp 8129 400000 To increase the transmit bu...
tmp= ‘ expr $tmp + 1 ‘ done done Put all network interfaces into a single group. For example: $ifconfig ipge0 group webserver $ifconfig ipge1 group webserver Web Server Start Options In some cases, performance can be improved by using large page sizes. To start the 32–bit WebServer with 4 MB pages: ...
Sizing and Scaling Your Server This chapter examines the subsystems of your server, and provides recommendations foroptimal performance. The chapter includes the following topics: ■ “64-Bit Server” on page 101 ■ “Processors” on page 101 ■ “Memory” on page 102 ■ “Drive Space” on page 102 ■ “Networkin...
Scalability Studies This chapter describes the results of scalability studies. You can refer to these studies for asample of how the server performs, and how you might configure your system to best takeadvantage of Web Server’s strengths. This chapter includes the following topics: ■ “Study Goals” o...
5 no-intr since 12/07/2006 09:17:04 ................. Web Server Tuning The following table shows the tuning settings used for the Web Server. TABLE 6–1 Web Server Tuning Settings Component Default Tuned Access logging enabled = true enabled = false Thread pool min-threads = 16 max-threads = 128 sta...
Performance Tests and Results This section contains the test-specific configuration, tuning, and results for the following tests: ■ “Static Content Test” on page 108 ■ “Dynamic Content Test: Servlet” on page 110 ■ “Dynamic Content Test: C CGI” on page 111 ■ “Dynamic Content Test: Perl CGI” on page 1...
Dynamic Content Test: Servlet This test was conducted using the servlet. The test prints out the servlet's initializationarguments, environments, request headers, connection and client information, URLinformation, and remote user information. JVM tuning settings were applied to the server. Thegoal w...
The following table shows the results for the dynamic content servlet test. TABLE 6–6 Dynamic Content Test: Servlet Scalability Number Of Cores Average Throughput (ops/sec) Average Response Time (ms) 2 5287 19 4 10492 19 6 15579 19 The following is a graphical representation of servlet scalability r...
Dynamic Content Test: Perl CGI This test was conducted with Perl script called printenv.pl that prints the CGI environment. CGI tuning settings were applied to the server. The goal was to saturate the cores on the serverand find out the respective throughput and response time. The following table sh...
Dynamic Content Test: NSAPI The NSAPI module used in this test was printenv2.so . It prints the NSAPI environment variables along with some text to make the entire response 2 KB. The goal was to saturate thecores on the server and find out the respective throughput and response time. The only tuning...
PHP Scalability Tests PHP is a widely-used scripting language uniquely suited to creating dynamic, Web-basedcontent. It is the most rapidly expanding scripting language in use on the Internet due to itssimplicity, accessibility, wide number of available modules, and large number of easily availablea...
PHP Scalability with NSAPI The following table shows the Web Server tuning settings for the PHP with NSAPI test. TABLE 6–14 NSAPI Plug-in Configuration for PHP magnus.conf Init fn= " load-modules " shlib= " libphp5.so " funcs= " php5_init,php5_close,php5_execute " Init fn= ...
TABLE 6–15 PHP Scalability with NSAPI Number of Cores Average Throughput (ops/sec) Average Response Time (ms) 2 950 105 4 1846 108 6 2600 115 The following is a graphical representation of PHP scalability with NSAPI. SSL Performance Test: Static Content This test was performed with static download o...
■ Web Server is configured with 64 bit The following table shows the SSL static content test results. TABLE 6–16 SSL Performance Test: Static Content Scalability Number of Cores Average Throughput (ops/sec) Average Response Time (ms) 2 2284 379 4 4538 387 6 6799 387 The following is a graphical repr...
TABLE 6–17 SSL Performance Test: Perl CGI Scalability Number of Cores Average Throughput (ops/sec) Average Response Time (ms) 2 303 329 4 580 344 6 830 361 The following is a graphical representation of Perl scalability with SSL. SSL Performance Test: C CGI This test was performed by accessing a C e...
TABLE 6–18 SSL Performance Test: C CGI Scalability Number of Cores Average Throughput (ops/sec) Average Response Time (ms) 2 792 126 4 1499 133 6 2127 141 The following is a graphical representation of C CGI scalability with SSL. SSL Performance Test: NSAPI The NSAPI module used in this test was pri...
TABLE 6–19 SSL Performance Test: NSAPI Scalability Number of Cores Average Throughput (ops/sec) Average Response Time (ms) 2 2729 29 4 5508 30 6 7982 32 The following is a graphical representation of NSAPI scalability with SSL. E-Commerce Web Application Test The e-commerce application is a more com...
Database system configuration: ■ Sun Microsystems Sun Fire 880 ( 900MHz US-III+) ■ 16384 Megabytes of memory ■ Solaris 10 operating system ■ Oracle 10.1.0.2.0 Driver system configuration: ■ Sun Microsystems Sun Fire 880 ( 900MHz US-III+) ■ Solaris 10 operating system Network configuration: The Web S...
Index Numbers and Symbols 64–bit servers performance advantages, 21scaling, 101 A acceptor threads, 52access time updates, 93acl-bucket, 36ACL user cache, 77-78 max-groups-per-user, 78max-users, 77maximum age, 78 activating statistics, 24-25AddLog, 83Admin Console, more information about, 12assign-n...
Sun Microsystems Manuals
-
Sun Microsystems B1600
Manual
- Sun Microsystems V120 Manual
-
Sun Microsystems AC200
Manual
-
Sun Microsystems Sun Quad
Manual
- Sun Microsystems 60 Manual
-
Sun Microsystems SG-XPCIE1FC-EM8-Z
Manual
-
Sun Microsystems 10
Manual
-
Sun Microsystems 4000
Manual
-
Sun Microsystems 96257
Manual
-
Sun Microsystems T3
Manual
-
Sun Microsystems 819468310
Manual
-
Sun Microsystems 2000E
Manual
-
Sun Microsystems SPARCcenter 2000
Manual
-
Sun Microsystems X4140
Manual
-
Sun Microsystems X6250
Manual
- Sun Microsystems 2500 Manual
-
Sun Microsystems GigaSwift Ethernet Adapter
Manual
-
Sun Microsystems 805-7945-10
Manual
-
Sun Microsystems A5000
Manual
-
Sun Microsystems X4240
Manual