460 likes | 646 Views
Optimizing SalesLogix Web. Tips for your SalesLogix Web Environment. Agenda. Introduction. The Art of Performance Tuning. SQL Server Indexes. IIS. Thinking outside the box when nothing seems to work. Optimized Presentation (FireFox vs IE). Q & A.
E N D
Optimizing SalesLogix Web Tips for your SalesLogix Web Environment
Agenda Introduction The Art of Performance Tuning SQL Server Indexes IIS Thinking outside the box when nothing seems to work Optimized Presentation (FireFox vs IE) Q & A Note: The tips and tricks provided here are the byproduct of countless implementations and integrations performed by Sage’s Professional Services Group. These recommendations are shared with product development and technical publications in order to provide a better implementation experience in the future. Until they are officially documented, please consider them suggestions that have helped in other SalesLogix implementations and may help in yours.
Sage Professional Services Group Mike Strieder Project Manager, Professional Services Group Mike.Strieder@Sage.com 480-444-4956
The Art of Performance Tuning One bad setting can have a tremendous impact on your server. The trick to performance tuning is to make your changes one at a time ….then monitor the results, ….then do it again! Once you are happy with the results move the configurations and settings from your SalesLogix TEST environment to your PRODUCTION server. Continue to use Performance tuning regularly over time as things might need to be reviewed periodically as data changes.
SQL Server Tuning Tips for Optimizing Indexes
SQL Server Indexes Note: Sage SalesLogix provides two out of the box, starter databases. The starter database configuration supports a number of user scenarios and system configurations. In many cases, the performance will be acceptable. If not, a number of optimization techniques can be assessed and deployed to help with your optimization goals. Results will vary due to system environment, system load, and database customizations. Consult an experienced database specialist familiar with Sage SalesLogix or similar application to achieve optimal performance. Know your customer and their business rules. Ownership: Teams vs Everyone. Deep Dive… (Keep in mind this is a consulting engagement so an experienced resource with a DBA related skillset should be the only person performing this work)
SQL Server Indexes Step 1: Change Account.SeccodeID to a NONCLUSTERED index
SQL Server Indexes Step 2: Make Account.AccountID your unique CLUSTERED index
SQL Server Indexes When Finished….
SQL Server Indexes Other indexes you may want to create / change Account Ticket User_Activity Contact User_Notification Contract Opportunity Seccode
SQL Server Indexes Using SLX Profiler Launch it! Start it! Analyze it!
SQL Server Indexes Fix the Top 10 Worst Performing Queries from SLXProfiler.exe
SQL Server Indexes Apply recommendations, document in .txt file to apply to Production
SQL Server Indexes Append DBCC Reindex statement at bottom of your Indexes.txt file When ready, execute entire .txt file in Query Analyzer and reindex DB
IIS Tuning How to configure IIS for Optimal Performance
IIS Optimization Use SLXProfiler & FiddlerTool to establish SQL & HTTP baselines for your tests: http://www.fiddlertool.com Document original IIS settings before modifying. Perform EXACT test scripts every time you make a change. • Ensure tabs stay consistent each visit to the screen. If the history tab is visible the first time you navigate to the Account Detail form, ensure it is visible on ALL your visits to the form. • Login as a USER rather than Admin. (Admin is NOT a USER) When in doubt, plan to re-run tests a second time.
IIS Optimization Top 10 Performance Tweaks (No specific Order) #1. Turn on Compression
IIS Optimization Top 10 Performance Tweaks (No specific Order) #2. Modify Compression Settings (IIS Resource Kit or Script it!) # of bytes received by SalesLogix area Full Compression works well in most environments
IIS Optimization Top 10 Performance Tweaks (No specific Order)
IIS Optimization Top 10 Performance Tweaks (No specific Order) This script has not been qualified or tested by Sage QA. It is an attempt to save time without having to download the IIS Resource Kit and edit values manually. Use at your own risk.
IIS Optimization Top 10 Performance Tweaks (No specific Order) #3. Add gzip.dll to Web Service Extension
IIS Optimization Top 10 Performance Tweaks (No specific Order) #3. Add gzip.dll to Web Service Extension
IIS Optimization Top 10 Performance Tweaks (No specific Order) #3. Add gzip.dll to Web Service Extension
IIS Optimization Top 10 Performance Tweaks (No specific Order) #3. Add gzip.dll to Web Service Extension
IIS Optimization Top 10 Performance Tweaks (No specific Order) #4. Turn off Logging
IIS Optimization Top 10 Performance Tweaks (No specific Order) #5. Avoid Indexing
IIS Optimization Top 10 Performance Tweaks (No specific Order) #6. Enable Content Expiration
IIS Optimization Top 10 Performance Tweaks (No specific Order) #7. ISAPI Caching
IIS Optimization Top 10 Performance Tweaks (No specific Order) #8. ASP Buffering
IIS Optimization Top 10 Performance Tweaks (No specific Order) #9. Disable Debugging IIS & SLX Deployment
IIS Optimization Top 10 Performance Tweaks (No specific Order) #10. Defrag your Web Server. If WebServer is Virtualized, defragging may cause unwanted .vmx growth exponentially until it has been shrunk
IIS Optimization Your IIS WebServer should now be optimized (or a lot better off). Remember to RESET IIS * You may also want to recommend a scheduled nightly IISRESET for maintenance reasons
Thinking Outside the Box “I think I tuned my DB and Web Server …what else??”
Thinking outside the box… Tried everything and you seem to be running out of ideas? Huh?? Ram Drive??!? De-Chroming FireFox / Adding a Theme
Thinking outside the box… Here’s what to do with all those 128MB Flash Drives stashed in your drawer… Move your Temporary Internet Files to Memory! • It’s faster than the virtual memory which is accessed through the hard disk drive • It’s cheaper as compared to the actual • Physical Memory. • If you are using Vista, you can use your • RAM Drive if you need more memory via ReadyBoost
Thinking outside the box… Browser Optimization Disable AutoComplete Keep IE/FireFox Cache Small Clear Passwords/Cookies/History, etc Disable Add-Ons clogging up your browser (ssvHelperClass Plugin) Clean up the Temp Folder Turn off Phishing (Some companies may not like this) Disable RSS Feeds Turn off Clear Type Upgrade your browser to a newer SUPPORTED version
Thinking outside the box… • Use Hardware Raid 0 • It is recommended to use a hardware RAID system rather than software RAID included with Windows 2003 Server. Using out of box software RAID places additional demands on your processor, whereas hardware RAID offloads these demands to the RAID unit. Server Optimization Set your servers to Maximize data throughput for network applications. (File Sharing is default) Defrag your servers!
Thinking outside the box… Theming FireFox If you are still “not there yet”, see if you can use FireFox or other browsers. If your customer does not need ActiveX controls, consider using FireFox and THEME it so much to the point it no longer resembles a browser. (Many companies don’t allow browsers other than IE. Therefore make SalesLogix look like an application, not a browser) ..or
Thinking outside the box… Data Encryption & AntiVirus The following screenshot was taken from an actual customer’s workstation. It shows the system running IDLE at 33-40% CPU utilization. By default, most antivirus programs are also scanning the Temporary Internet files folder on the workstation and the Web Server might be consumed with Antivirus scanning the web deployment folders. If this is an issue, always check with your customer to see if this can be changed.
Demonstration Optimized SalesLogix Web Deployment
IE vs FireFox IE FireFox
Summary of Optimizations If the recommendations and guidelines I’ve covered are followed, your customers performance goals will be met (if not exceeded) for general navigation and group lookups.