DotNetNuke Hosting with ASPHostPortal.com

BLOG about DotNetNuke CMS, latest technology and Special DotNetNuke Hosting Package with ASPHostPortal.com

DotNetNuke 7 Hosting - Why Choosing DotNetNuke 7

clock Februarie 27, 2013 06:23 by author andy_yo

There are many changes with DNN 7 that are aimed at making content and site maintenance easier.  Here are our top 4 reasons why an upgrade to DNN 7 is going to save you time and generally make your life easier.

 

About ASPHostPortal.com
ASPHostPortal.com is Microsoft No #1 Recommended Windows and ASP.NET Spotlight Hosting Partner in United States. Microsoft presents this award to ASPHostPortal.com for ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2012, ASP.NET 4.5, ASP.NET MVC 4.0, Silverlight 5 and Visual Studio Lightswitch. Click here for more information

1. Auto-save

We’ve all been there, you work hard at something, get it just how you want it then you hit the wrong key (or the browser crashes) and there goes all your work down the drain. Not anymore, with DNN 7 auto-save ensures your work is saved as you go, avoiding any mishaps and lost work. Sure to be the saviour of web content editors across the globe.

2. Bookmarked settings

DNN 7 has a completely different control panel from previous editions with a very visually appealing tab interface for both admin and hosts.  The new interface completely changes the way we use DotNetNuke and one of the best new additions is the ability to bookmark favourite settings. Keeping all your favourite settings in one easy to reach spot and at the click of a button is a massive time saver.

3. Drag and drop

Gone are the days of trying to format your pages behind the scenes. You want to add new modules, move an image or move a text box; you pick it up and put it where you want. The ease and simplicity of the new DNN 7 drag and drop feature gives you a whole lot of flexibility and control over your website, without pulling your hair out. 

4. Version Comparison

Ever edited something then thought hang on, I’m not sure that’s better, what did it look like before? With DNN 7 you can easily compare versions in either the rich text or html editors. Just tick the compare box and the text or code differences are highlighted for you. You can then choose which option you want to go with from the version history and save second guessing yourself.

In short, DNN 7 is an intuitive user friendly CMS that makes editing and maintaining your website content quicker and easier than ever before. These new improvements are sure to increase your productivity in 2013.



DotNetNuke 7 Hosting - Optimize Your DotNetNuke Sites

clock Februarie 8, 2013 08:02 by author andy_yo

A typical DNN install requires considerable server resources, and creates significant traffic between the database & web server. These techniques aim to reduce both of these where-ever possible, along with some other optimizations. Some of these may not apply to you, and We advise you to exert discretion in deciding which of these work best for you.

About ASPHostPortal.com
ASPHostPortal.com is Microsoft No #1 Recommended Windows and ASP.NET Spotlight Hosting Partner in United States. Microsoft presents this award to ASPHostPortal.com for ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2012, ASP.NET 4.5, ASP.NET MVC 4.0, Silverlight 5 and Visual Studio Lightswitch. Click here for more information

DNN Optimization:

  1. Host Settings
    1. Set the "Performance Setting" to "Heavy Caching".
    2. Depending upon Hosting resources, set the "Compression Setting" to "Deflate Compression" or "GZip Compression".
    3. Depending upon Hosting resources, enable "Whitespace filter" (not of much use, if you have also enabled compression).
    4. Disable "Users Online" for Installations on which "Users Online" module is NOT used.
    5. Set the "Scheduler Mode" to "Timer Method". "Request Mode" causes the Scheduler to be invoked on every request to a page of your installation.
    6. On sites where Logging is NOT mission critical, enable "Event Log Buffer", so that log entries are buffered before being flushed.
    7. On sites where the Site files do NOT update frequently, disable "Auto-sync filesystem".
    8. Uncheck "Enable Ajax" on portals that are just informative, and do NOT involve management tasks.
  2. Admin Settings
    1. On DNN 5 portals, unselect "Enable Skin Widgets" if they are not being used to prevent redundant skin file downloads.
  3. Log Settings
    Disable all Logs NOT required on an installation. In particular,
    1. Disable "Application Start".
    2. Disable "Application End".
    3. You might also want to disable others like "Scheduler Started", "Scheduler Event Started" etc. depending upon if they are not much useful to you. However, "Sceduler event Failure" should not be disabled to enable debugging of any scheduler issues.
  4. Schedule Settings
    Disable or customize all Schdules NOT required on an installation. In particular,
    1. Configure "DotNetNuke.Services.Scheduling.PurgeScheduleHistory, DOTNETNUKE" to run every 5 days (or whatever fits best to your portal depending upon how much Schedule Log your portal generates).
    2. Configure "DotNetNuke.Services.Search.SearchEngineScheduler, DOTNETNUKE" to run every 5 days and retry after 1 day (again depending upon what fits best to your portal. There is no one size fits all approach here).
  5. Javascript & CSS Optimization
    1. Manually optimize all css & js files to remove redundant white-space (or use a free or paid DNN module e.g. Page Blaster to manage this task for you).
    2. Zero out portal.css (if you dont use it, or better still, delete it).
    3. Check ~/portals/_default/default.css for any styles not being used on your portal.
    4. Try to use any other menu except SolPart Menu.
    5. Try NOT to use table based skins (improves the perceived rendering of your page).

  6. Cookies: Set the appropriate value for Persistent & Session cookies in web.config.

  7. Compilation: If you are compiling DotNetNuke or any Extension from source, make sure that you compile the project in Release mode. Moreover, make sure you have debug="false" in web.config for your production sites.


DNN 7 Hosting - ASPHostPortal :: Using DNN Data Caching In Custom Modules

clock Desember 18, 2012 06:25 by author Jervis

One of the biggest concerns for developers these days is how to increase the performance of delivered applications. User expectations have changed over the past few years and the expectations are very, very high in regards to page load times and how quickly information should be returned to the users. Thankfully, as part of DotNetNuke there are a number of different features that can help applications work quickly. Some of these features are known by everyone, things such as the DotNetNuke performance settings under "Host Settings", Cache Time settings on a module by module basis, and if on Professional Edition the built in page Output Cache Provider. However, one often overlooked API that is helpful for developers is the DataCache API. In this post I'll do a deep dive into why this API is so helpful and some scenarios where leveraging this API it can reduce page load times and system resources needed for each page request.

What is the DataCache

Before I get into the specifics of how to use the DataCache API I want to give a bit of detail on what exactly DataCache is. If you are an experienced ASP.NET developer you should be familiar with the ASP.NET Application object, a cache repository for storing information at the application level. Items stored in application are stored using code like the following. Application["MyKey"] = MyObject; This shouldn't be anything new to you, but within DotNetNuke, just like "SessionState" it is a recommended practice to not utilize this object due to the fact that Application is not aware of the DotNetNuke caching API's or Web Farm configurations. Enter the DataCache API.

DotNetNuke's DataCache object comes in to fill the gap, used at the base level in a very similar fasion it allows you to store any object that you desire using the DotNetNuke cache provider. If the site is configured to use File caching your content is stored in a file, if Memory it wil be stored in memory. With this you can rest assured that your cached objects will work just like the rest of the DotNetNuke infrastructure.

What do I Cache?

So great, we know we can cache objects, but what do we cache? This is the age old question and something that I cannot give a 100% answer here that will be a solution for everyone reading this. The key here is that we can store ANY objects necessary. A few examples of diffent cache strategies can be illustrated by discussing what I do with two of our most popular open source modules. You can cache individual objects, and implement this caching seamlessly in your controller class. We are doing this for the our custom settings for the "Expandable Text/HTML" module. The advantage here is that if you are calling ExpandableTextController.GetSettings(12) with cache checking code inside the "GetSettings" method we can be sure that we only hit the database if the object isn't in cache already. This helps reduce database hits for commonly used objects.

In addition to doing this you can also cache generated content. Lets assume that we have a module that grabs a number of objects from the database and then does a bunch of processing and eventually loads the content to an ASP.NET Literal control on the UI. Sure, we could cache the database objects to prevent the database call, but we could also think about storing the fully generated content. Doing this, even with a 15 minute cache time can reduce CPU usage, Memory usage, and page load times for your custom modules.

Using the DataCache Object

When it comes to using the data cache object there are a number of situations where a similar pattern can be used to help gain access to the Cache and store items. To help take away some of the duplicate code that can occur I often include a "CacheHelper" object that helps greatly. Looking at the code snippet below you can see what we use on all projects.


1: public static bool CacheExists(string key)
2: {
3: return DataCache.GetCache(key) != null;
4: }
5: 
6: public static void SetCache<T>(T toSet, string key)
7: {
8: DataCache.SetCache(key, toSet);
9: }
10: 
11: public static T GetItemFromCache<T>(string key
12: {
13: return (T) DataCache.GetCache(key);
14: }

This makes the process this much easier for you as a developer you don't need to perform casting along the way and you can use very simple patterns to get objects from cache. For example I can do something like this: var myObject = CacheHelper.CacheExists("MyItem") ? CacheHelper.GetCache("MyItem") : new MyType();. As you can see one line process to get my object, or a new object if the item isn't contained within the cache. You can easily expand on this to help with your specific application.

Conclusion

Application performance is something that as web developers we need to be working on every day. Using DotNetNuke's built in cache system gives us a helpful tool to improve performance, and also ensures that applications we develop can easily scale to Web Farm environments. Please feel free to share comments/questions below.



About ASPHostPortal.com

We’re a company that works differently to most. Value is what we output and help our customers achieve, not how much money we put in the bank. It’s not because we are altruistic. It’s based on an even simpler principle. "Do good things, and good things will come to you".

Success for us is something that is continually experienced, not something that is reached. For us it is all about the experience – more than the journey. Life is a continual experience. We see the Internet as being an incredible amplifier to the experience of life for all of us. It can help humanity come together to explode in knowledge exploration and discussion. It is continual enlightenment of new ideas, experiences, and passions

Author Link


 photo ahp banner aspnet-01_zps87l92lcl.png

Corporate Address (Location)

ASPHostPortal
170 W 56th Street, Suite 121
New York, NY 10019
United States

Tag cloud

Sign in