Optimizing SalesLogix Web Tips for your SalesLogix Web Environment.

Post on 24-Dec-2015

223 views 2 download

Tags:

transcript

Optimizing SalesLogix WebTips for your SalesLogix Web Environment

Agenda

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.

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

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

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.

….then monitor the results,….then do it again!

SQL Server TuningTips 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

SQL Server IndexesStep 1: Change Account.SeccodeID to a NONCLUSTERED index

SQL Server IndexesStep 2: Make Account.AccountID your unique CLUSTERED index

SQL Server IndexesWhen Finished….

SQL Server IndexesOther indexes you may want to create / change

Account

Contact

Contract

Opportunity

Seccode

Ticket

User_Activity

User_Notification

SQL Server IndexesUsing SLX Profiler

Launch it!

Start it!

Analyze it!

SQL Server IndexesFix the Top 10 Worst Performing Queries from SLXProfiler.exe

SQL Server IndexesApply recommendations, document in .txt file to apply to Production

SQL Server IndexesAppend DBCC Reindex statement at bottom of your Indexes.txt file

When ready, execute entire .txt file in Query Analyzer and reindex DB

IIS TuningHow 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 OptimizationTop 10 Performance Tweaks (No specific Order)

#1. Turn on Compression

IIS Optimization

# of bytes received by SalesLogix area

#2. Modify Compression Settings (IIS Resource Kit or Script it!)

Full Compression works well in most environments

Top 10 Performance Tweaks (No specific Order)

IIS OptimizationTop 10 Performance Tweaks (No specific Order)

IIS OptimizationTop 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

#3. Add gzip.dll to Web Service Extension

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#3. Add gzip.dll to Web Service Extension

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#3. Add gzip.dll to Web Service Extension

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#3. Add gzip.dll to Web Service Extension

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#4. Turn off Logging

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#5. Avoid Indexing

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#6. Enable Content Expiration

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#7. ISAPI Caching

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#8. ASP Buffering

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#9. Disable Debugging IIS & SLX Deployment

Top 10 Performance Tweaks (No specific Order)

IIS Optimization

#10. Defrag your Web Server.

Top 10 Performance Tweaks (No specific Order)

If WebServer is Virtualized, defragging may cause unwanted .vmx growth exponentially until it has been shrunk

IIS OptimizationYour 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?

De-Chroming FireFox / Adding a Theme

Huh?? Ram Drive??!?

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!

• If you are using Vista, you can use yourRAM Drive if you need more memory via ReadyBoost

• It’s faster than the virtual memory which is accessed through the hard disk drive

• It’s cheaper as compared to the actualPhysical Memory.

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…Server Optimization

Set your servers to Maximize data throughput for network applications. (File Sharing is default)

Defrag your servers!

Use Hardware Raid 0It 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.

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.

DemonstrationOptimized SalesLogix Web Deployment

Demo: FireFox

Demo: IE 7

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.