DotNetNuke Best Practices for Creating and Hosting DNN Websites

14

description

This is presentation given by Tony Valenti--CEO of PowerDNN and one of the world's leading experts on DotNetNuke website hosting--at the Daoy of DotNetNuke event in Charlotte called "Southern Fried DNN" 2012.

Transcript of DotNetNuke Best Practices for Creating and Hosting DNN Websites

Page 1: DotNetNuke Best Practices for Creating and Hosting DNN Websites
Page 2: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Database Settings

• Use FULL recovery model

• Set Auto_Close to false

• Set Auto_Shrink to false

• Set AutoGrowth to a percentage

• Shrink your DB on a fixed schedule

• Don’t use attachdbfilename databases

• Don’t use Named Instances such as (local)/SQLExpress

Page 3: DotNetNuke Best Practices for Creating and Hosting DNN Websites

IIS Settings

• Use .NET 4.5 (Faster startup times)

• Set App pools to never timeout

• Run each app pool under a different identity

• Put each site in its own app pool

• Plan for 300-500MB of RAM per site (maybe more).

• Disable Memory Limitations

• Put web and SQL on the same server (unless you’re a giant site)

Page 4: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Turn Off Stuff You’re Not Using

• Disable Users Online

• Turn off the SiteLog (use Google Analytics instead)

• Turn off the scheduler.

• If you must use it, set it to Timer mode and turn off the scheduled tasks

you don’t need.

• Search Engine Indexer is garbage. Turn it off.

• Auto-Sync File System – Turn it off!

Page 5: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Clean up what you don’t need…

• Site Log (Should be off anyways!)

• Event Log

• Schedule History

• Text/HTML Module Version History

• Clean out your DNN Recycle Bin

• Uninstall skins and modules you don’t use (check your bin folder too!)

• Uninstall providers you don’t use

• Old core providers & unused authentication providers

Page 6: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Optimize what you are using…

• Enable Event Log Buffering

• Enable Heavy Caching

• Always cache to Memory

• Event Log

• Only log the events you care about.

• NEVER Use Memory Page State Persistence

Page 7: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Choose your modules wisely…

• Stick with modules from well known vendors.

• Watch out for modules that…

• Call web services or RSS feeds

• Use regular expressions

• Both are great but can slow you down (A LOT!) if not used properly.

• Good modules cache and won’t need to talk to the database on every

page load.

Page 8: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Help people use your site…

• MegaMenus look cool but aren’t good for sales

• Unless you’re a freaking huge conglomerate like IBM

• Usually a cop-out for good information architecture

• Remember: Each page on your site needs a “Call To Action”

• Focus on what you want the visitor to do next

• Don’t use rotators, scrollers, accordions, popins, etc.

• Inconsistent experience that isn’t measurable or trackable.

• Do you really need a mobile site?

Page 9: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Get Found on Google…

• Don’t use human friendly urls (leave the TabID in).

• Human friendly urls generally decrease SEO because of broken links.

• Don’t use AJAX unless you have to – it hurts SEO

• The core FAQs module can use AJAX. Turn it off!

• Make sure you have Google Analytics installed!

Page 10: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Beware the CDN…

• Don’t use the CDN for jquery

• You don’t have control of updates and it can break your site.

Page 11: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Communicate Effectively…

• Use a valid email account and settings for Host > Host Settings

• Don’t use the “Newsletters” module in DNN for newsletters.

• Use something like Constant Contact or you may get yourself blacklisted.

Page 12: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Don’t Over Optimize

• Don’t use compression.

• Networks are so fast you’ll spend more time compressing than sending

the bigger data.

• Don’t use CSS/JS minifiers/combiners.

• They don’t always work right and the problems they cause are hard to

diagnose. The performance gain is negligible.

• If it feels like a glorious hack… don’t do it.

Page 13: DotNetNuke Best Practices for Creating and Hosting DNN Websites

Other Things that are important…

• If you’re a business, have a dev site

• Don’t make changes to the live site

• Make changes to the dev site and push to production

• Archive your live site every time you do a deploy

• Don’t use portals

• They cause performance problems

Page 14: DotNetNuke Best Practices for Creating and Hosting DNN Websites

THANK YOU!

TONY VALENTI

• HTTP://WWW.POWERDNN.COM/

[email protected]

• @POWERDNN

POWERDNN IS DOTNETNUKE DONE RIGHT!