Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Administration ...Administration ...A Big Question, How Can I Make Faster DNN?A Big Question, How Can I Make Faster DNN?
Previous
 
Next
New Post
11/9/2014 12:56 PM
 

Please Read this short Story:

1. I had a grate DNN 7.3.3 Online Store by Cross Clasified Store 8.+ and we try to make it faster also with more developing...

2. It had Hosting with 1GB dedicated memory for iis and 10% of CPU usage on Germany Hetzner good Server...

3. We use best skin and maximum optimization as well as we know ... but our Website is too slow if you compare with several other non-DNN website. the different is too much and not 10-50% it is 2-3 time slower.

4. We think about changing hosting in another country to Dedicated Professional Server in Same Country with following details and only This Website be on this server:

CPU: Dual Intel Xeon Processor X5560 (8M Cache, 2.80 GHz, 6.40 GT/s Intel QPI)

RAM: 32GB, DDR3 1333 REG/ECC

Hard 1: Samsung 850 Pro Series MZ-7KE512BW 2.5" 512 GB SATA III 3-D Vertical Internal SSD

Bandwidth: 1TB/Month 100mbps

5. We copy this page on New Server with Different Domain for Compare it.

- www.shaghayegh2.com is on hosting

- www.perfume20.com is on dedicated server

6. I compare speed in same country of dedicated server but the Germany hosting was better than dedicated as you can see on this GTmetrix Report: http://gtmetrix.com/compare/ufEhMffo/fhrc0Zsc/CQ8Ph07X

Please Help me how can I make 2-3 time faster from this speed. I don't want PHP base Stores, I want 2-3 time faster. because I Test it on Very fast and dedicated server only for one website but it could not make changes for Speed and page loading. Client feedback is your Website is Too slow and bye bye....

 

Like this. Need help....

 
New Post
11/9/2014 1:07 PM
 
Look at this compare!!!! the last one is not DNN and with a Click imediatly will open... but this website (dnnsoftware) and 2 other dnn portal take time, too much....
http://gtmetrix.com/compare/ufEhMffo/...
 
New Post
11/9/2014 10:42 PM
 
Please be aware that performance optimization is an overall process, affecting all components involved. This does include
1. the underlying Hardware and OS
2. the webserver (IIS website configuration)
3. the database (MS SQL Server)
4. DNN framework
5. modules being used (object caching)
6. last but not least: content.
Improving just a single part of this chain does help to reach the goal, but cannot not iron out issues of the other components.
Questions regarding the steps:
2. did you configure static and dynamic caching
2. did you configure compression
2. did you turn off frequent recycle
2. do you use application warmup
3. does sql server has enough limited resources (without affecting IIS)
3. did you apply turbo scripts (dnnscript.codeplex.com)
4. did you set cache level to high
4. did you enable module output caching, where appropriate
4. did you configure client resource management to combine CSS and JS files
5. do the modules use caching?
5. do modules use caching properly?
5. do modules properly use Client resource libraries
6. do you use CDN for static images?
6..did you optimize the images being displayed?

Note: each site has its own bottleneck, the most important is analyzing performance, to identify, which aspects need to be dealt with.

Cheers from Germany,
Sebastian Leupold

dnnWerk - The DotNetNuke Experts   German Spoken DotNetNuke User Group

Speed up your DNN Websites with TurboDNN
 
New Post
11/10/2014 3:24 AM
 

I execute this Turbo Query from host/Sql and I got an error:

FOR THIS FILE:  TurboDNN733.sql

System.Data.SqlClient.SqlException (0x80131904): Could not allocate a new page for database 'shaghayegh2_com_' because of insufficient disk space in filegroup 'PRIMARY'. Create the necessary space by dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
The statement has been terminated.
   at System.Data.SqlClient.SqlConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.SqlInternalConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script)
ClientConnectionId:b92d2bfe-bfe6-41e9-94bd-6e0a14e49007

CREATE CLUSTERED INDEX [IX_UserProfile_UserID] ON dbo.[UserProfile]
    ([UserID] ASC, [PropertyDefinitionID] ASC)

System.Data.SqlClient.SqlException (0x80131904): Could not allocate a new page for database 'shaghayegh2_com_' because of insufficient disk space in filegroup 'PRIMARY'. Create the necessary space by dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
The statement has been terminated.
   at System.Data.SqlClient.SqlConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.SqlInternalConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script)
ClientConnectionId:d08c8a26-64e7-41dc-951b-38b42aaa3e2c

CREATE UNIQUE NONCLUSTERED INDEX [IX_UserProfile_PropertyDefinitionID] ON dbo.[UserProfile]
    ([PropertyDefinitionID] ASC, [UserID] ASC)
    INCLUDE ([ProfileId], PropertyValue)

FOR THIS FILE:  TurboDBConfig733.sql

System.Data.SqlClient.SqlException (0x80131904): User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
User does not have permission to alter database 'shaghayegh2_com_', the database does not exist, or the database is not in a state that allows access checks.
ALTER DATABASE statement failed.
   at System.Data.SqlClient.SqlConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.SqlInternalConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script)
ClientConnectionId:8ad89323-7d66-46d9-8400-d90683897844

/* DNN TurboDBConfig Version 0.9.5 (2014-10-08)
   ================================================================================
   (c) Sebastian Leupold, dnnWerk/gamma concept mbH 2014

   Run this Script to configure your database for optimal performance with DNN 7.
     
   == Please make sure to use latest version from http://dnnscript.codeplex.com ===
  
   Instructions:
   =============
   - Install by running as script from SQL item in Host menu inside DNN or run in
     SQL Server Management Studio.

   - Make sure that the currently used account is member of dbOwner database role.
  
   License and Disclaimer:
   =======================
   Published under Microsoft Open Source Reciprocal License (Ms-RL). For details,
   please read http://dnnscript.codeplex.com/license.
   Feel free to use this script as you need, but there is no warranty or liability
   for any damage or effort, eventually been caused.

   Please report issues at https://dnnscript.codeplex.com/WorkItem/Create
   ================================================================================
*/

DECLARE @dbVersion                         Int;
DECLARE @ServerVersion                     Int;
DECLARE @dbName                         nVarChar(100);
DECLARE @is_auto_create_stats_on         Bit;
DECLARE @is_auto_update_stats_on         Bit;
DECLARE @is_auto_update_stats_async_on  Bit;

    SELECT
        @dbName                          = Name,
        @dbVersion                       = compatibility_level,
        @is_auto_update_stats_on         = is_auto_update_stats_on,
        @is_auto_create_stats_on         = is_auto_create_stats_on,
        @is_auto_update_stats_async_on  = is_auto_update_stats_async_on
    FROM sys.databases
    WHERE name = db_name();
   
    SET @ServerVersion = Convert(Int, left(Convert(nVarChar, SERVERPROPERTY('ProductVersion')), 2) * 10);
    DECLARE @VersionStr nVarChar(4)  = CAST(@ServerVersion AS VarChar(4));

    IF @dbVersion < @ServerVersion        Exec ('ALTER DATABASE [' + @dbName + '] SET COMPATIBILITY_LEVEL = ' + @VersionStr);
    IF @is_auto_create_stats_on       = 0 Exec ('ALTER DATABASE [' + @dbName + '] SET AUTO_CREATE_STATISTICS       ON');
    IF @is_auto_update_stats_on       = 0 Exec ('ALTER DATABASE [' + @dbName + '] SET AUTO_UPDATE_STATISTICS       ON');
    IF @is_auto_update_stats_async_on = 0 Exec ('ALTER DATABASE [' + @dbName + '] SET AUTO_UPDATE_STATISTICS_ASYNC ON');
    Exec ('ALTER DATABASE [' + @dbName + '] SET ANSI_Null_DEFAULT       OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET ANSI_NullS              OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET ANSI_PADDING            OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET ANSI_WARNINGS           OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET ARITHABORT              OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET CONCAT_Null_YIELDS_Null OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET QUOTED_IDENTIFIER       OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET NUMERIC_ROUNDABORT      OFF');
    Exec ('ALTER DATABASE [' + @dbName + '] SET RECURSIVE_TRIGGERS      OFF');

FOR THIS FILE:  TurboOptimizeDNNSettings733.sql

 System.Data.SqlClient.SqlException (0x80131904): The transaction log for database 'shaghayegh2_com_' is full due to 'ACTIVE_TRANSACTION'.
   at System.Data.SqlClient.SqlConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.SqlInternalConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script)
ClientConnectionId:1884d52f-682c-4bb8-a22b-76e7fed98e57

-- evaluate Size of EventLog table:
DECLARE @totalCount    Int;
DECLARE @YearCount     Int;
DECLARE @QuarterCount  Int;
DECLARE @MonthCount    Int;
DECLARE @MinID           Int;

SELECT @MonthCount    = Count(1) FROM dbo.[EventLog] WHERE LogCreateDate > DateAdd(Month, -1, GetDate());
SELECT @QuarterCount  = Count(1) FROM dbo.[EventLog] WHERE LogCreateDate > DateAdd(Month, -3, GetDate());
SELECT @YearCount     = Count(1) FROM dbo.[EventLog] WHERE LogCreateDate > DateAdd(Year,  -1, GetDate());

SELECT @TotalCount    = Count(1) FROM dbo.[EventLog];
IF @TotalCount >  1000 AND @TotalCount > @YearCount -- delete items older than a year
    DELETE FROM dbo.[EventLog] WHERE LogCreateDate < DateAdd(Year,  -1, GetDate());

SELECT @TotalCount    = Count(1) FROM dbo.[EventLog];
IF @TotalCount >  3000 AND @TotalCount > @QuarterCount -- delete items older than a quarter
    DELETE FROM dbo.[EventLog] WHERE LogCreateDate < DateAdd(Month,  -3, GetDate());

SELECT @TotalCount    = Count(1) FROM dbo.[EventLog];
IF @TotalCount >  5000 AND @TotalCount > @MonthCount -- delete items older than a month
    DELETE FROM dbo.[EventLog] WHERE LogCreateDate < DateAdd(Month,  -1, GetDate());

-- just keep last 5000 rows
SELECT @TotalCount    = Count(1) FROM dbo.[EventLog];
IF @TotalCount >  5000 BEGIN
    SELECT @MinID = Min(LogEventID) FROM (SELECT Top (5000) LogEventID FROM dbo.[EventLog] ORDER BY LogEventID DESC) S;
    DELETE FROM dbo.[EventLog] WHERE LogEventID < @MinID;
END;

 

I could not execute them and I got these errors.... How can I do?

 
New Post
11/10/2014 3:47 AM
 

This is my Dedicated Server for Only one DNN 7.3.3 Engine Hardware and OS. is it ok for a website? :

For Line #1 of your List:

CPU: Dual Intel Xeon Processor X5560 (8M Cache, 2.80 GHz, 6.40 GT/s Intel QPI)

RAM: 32GB, DDR3 1333 REG/ECC

Hard 1: Samsung 850 Pro Series MZ-7KE512BW 2.5" 512 GB SATA III 3-D Vertical Internal SSD

Bandwidth: 1TB/Month 100mbps

 Windows Server 2012 R2 Standard Build 9600

 For Line #2 of your List:
IIS 8.5 with Gzip Compression and everything of Server technical tested by Professional Employee on data center and tested already. 

For Line #3 of your List:

SQL Server 2012 R2 and tested for delay and there was no delay on request. (0 Sec delay).

For Line #4 of your List:

DNN 7.3.3 with Heavy full caching on host settings

For Store Module:

I contact provider and I ask them your questions and I'm waiting for their answer (www.dnnmodule.com - Ms. Xiao Qi)

About "turn off frequent recycle" and "application warmup":

I don't know where is this settings to check it.

About  CDN and JS/CSS Compression:

It is Active on host settings.

About turbo script:

I execute them but I got several errors as I sent in before in same Post.

 

Would you please help me to make this website faster? www.perfum20.com

and Finlay, the problem is, www.dnnsoftware.com is too slow also. I fill this page load speed have a deep problem on DNN structure design and all of settings are correct and problem is not here. I afraid it....

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Administration ...Administration ...A Big Question, How Can I Make Faster DNN?A Big Question, How Can I Make Faster DNN?


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out