2.0 speed/performance concerns

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
12 years ago
dswatik wrote:
Hi Guys

I've checking out 2.0 and whilst there's a HUGE amount to love, I noticed that it seemed to be somewhat slower than 1.9



Make sure you web.config debug settings isn't set to true. This causes MVC to run slower as it doesn't do a lot of the route caching when in debug mode...


My installation is not in debug mode.

I'm not sure how the CLR in works, if you look at the View pages, it is still in a source format, you still see the pages written in Razor format. So the run time interpreter must translate this into HTML and then cache it.

I am still getting a hesitation when I click on a new page.
12 years ago
For what it's worth, I do notice this...

Many (many!) calls to LoadAllTaxProviders

It gets called twice (oldPriceBase, finalPriceBase) for each item on home page

>  Nop.Services.DLL!Nop.Services.Tax.TaxService.LoadAllTaxProviders(
  Nop.Services.DLL!Nop.Services.Tax.TaxService.LoadTaxProviderBySystemName(
  Nop.Services.DLL!Nop.Services.Tax.TaxService.LoadActiveTaxProvider(
  Nop.Services.DLL!Nop.Services.Tax.TaxService.GetTaxRate(
  Nop.Services.DLL!Nop.Services.Tax.TaxService.GetProductPrice(
  Nop.Services.DLL!Nop.Services.Tax.TaxService.GetProductPrice(
  Nop.Services.DLL!Nop.Services.Tax.TaxService.GetProductPrice(
  Nop.Services.DLL!Nop.Services.Tax.TaxService.GetProductPrice(
  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.PrepareProductPriceModel(
  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.PrepareProductOverviewModel(
  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.HomepageProducts.AnonymousMethod__2e(
  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.HomepageProducts(
  App_Web_cs33rwtr.dll!ASP._Page_Views_Home_Index_cshtml.Execute(



Also for each recently viewed item on home page
  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.RecentlyViewedProductsBlock(


Also after selecting a product, it gets called many times

  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.PrepareProductVariantModel(
  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.PrepareProductDetailsPageModel(
  Nop.Web.DLL!Nop.Web.Controllers.CatalogController.Product(


because 3 separate price calculations (_taxService.GetProductPrice) - each is doing tax lookup

                        decimal oldPriceBase = _taxService.GetProductPrice(productVariant, productVariant.OldPrice, out taxRate);
                        decimal finalPriceWithoutDiscountBase = _taxService.GetProductPrice(productVariant, _priceCalculationService.GetFinalPrice(productVariant, false), out taxRate);
                        decimal finalPriceWithDiscountBase = _taxService.GetProductPrice(productVariant, _priceCalculationService.GetFinalPrice(productVariant, true), out taxRate);


and in loops - for each variant attribute X value


           foreach (var attribute in productVariantAttributes)
    ...
                    foreach (var pvaValue in pvaValues)
                      ...
                        decimal priceAdjustmentBase = _taxService.GetProductPrice(productVariant, pvaValue.PriceAdjustment, out taxRate);


Maybe there is opportunity to "cache" the ActiveTaxProvider in the TaxService instance.
12 years ago
Hi. I am Derek Yost, [url]mailto:[email protected][/url], http://www.codesmartinc.com

It obviously depends on where you are running the NopCommerce application from. Make sure that when in development of the application that you are running the database, database server, IIS, and the application from your local machine. Try to configure you development environment to handle only the SQL Server instance that deals with the NopCommerce database and to run the NopCommerce application.

I work for an Information Technology company in Olympia, Washington. We work extensively with .NET technologies and SQL Server 2008. The company I work for buys all their employees top-of-the-line laptops to develop software with. The laptop I develop my projects with is an:

1.  Manufacture: Hewlett-Packard
2.  Model: HP Pavilion dv7 Notebook PC
3.  Processor: Intel(R) Core(TM) i7 CPU Q 720 @1.60 GHz with Hyper Threading
4.  Installed memory (RAM): 8.00 GB
5.  System Type: 64-bit Operating System
6.  Operating System: Windows 7 Home Premium
7.  Hard Drive Space: Two 500 GB Hard Drives

Also, the company I work for has an MSDN (Microsoft Developer Network) subscription where I can download any Microsoft product or tool that I want or need. I also using VM Workstation to develop all of my projects with and Source Gear Vault Client to facility working on projects with a team.

My point is, in order to run NopCommerce, or any application that has some size to it, needs to have the proper hard ware and software for development. I do not expect someone who is not a developer or who does not work for a software development company to have to the tools that are necessary to troubleshoot, customize, enhance or develop general projects for NopCommerce.

Keep this in mind when looking at NopCommerce. Remember that NopCommerce is an awesome E-Commerce application but if you want serious customizations to it, you will need a professional developer to help you. A professional developer will have all of the right tools to get the job done is the quickest and most efficient way possible.

If you are looking for a developer to do custom work to NopCommerce, you can hire my company directly by contacting us directly through http://www.codesmartinc.com or you can hire me independently as a software consultant.

I will mention right now that hiring the company I work for will be much more expensive in comparison to hiring me independently.

Hiring the company I work for will however ensure that your project is done with the highest quality of service and in the least amount of time. Also, any work that CodeSmart Inc. does for you will be back by a Warranty. That means that if you find any bugs in the system after CodeSmart Inc. has officially handed off the deliverable to you, CodeSmart Inc. will fix the bugs free of charge.

I too will fix any bugs free of charge that are present in your application because of any work I have done.

Again, to hire a professional IT company that will take your project from beginning to complete success, go to http://www.codesmartinc.com.

If you would like to hire me independently to do small customizations to NopCommerce and would like to pay for my services on an hourly rate, contact me by emailing me at [url][email protected][/url].  Thank you for your time when reading this post. I hope it was helpful and led you in the right direction to solving your problems.

eggheadtony wrote:
Hi Guys

I've checking out 2.0 and whilst there's a HUGE amount to love, I noticed that it seemed to be somewhat slower than 1.9

I carried out a number of tests to try and quantify this, and here's what I found.

I'm running XP on a dual 2.13 GHz/2GB PC - VS2010 and both 1.9 and 2.0 sites running with VS2010 development web server.

On the 2.0 site, each time a page is requested, even if its a page visited many times before in the session (i.e. should be fully cached), there is a few seconds of CPU activity - its not SQL server that's been thrashed, it's VS2010 and the web server.

I ran both 1.9 and 2.0 sites up in firefox with firebug and timed repeated refreshes of the computers category page.

The 1.9 site averaged a response time for GET 30-computers.aspx of 400mS

The 2.0 site averaged a response time for GET computers of 3 seconds

I'm hoping there's a simple explanation.......

Many thanks
Tony
12 years ago
Hello All,

Here is the solution to the speed problem under Visual Studio 2010:

Run NOP 2 with:  Ctrl + F5

or / and
set in the Web.config file:
...
        </customErrors>
        <trace enabled="false" pageOutput="true" />
        <compilation debug="false" targetFramework="4.0">
            <assemblies>
...

Now, each page <1 sec loaded.

Regards
Dirk
12 years ago
I think EF codefirst is the issue.
12 years ago
@deccs

Is this forum a really good place for a shameless plug? I personally think not.

As you seem to be suggesting that I might like to hire you - well, I think not. I have twenty years of development experience and run a 15 strong development team with decades of experience.
12 years ago
And the whole "I am a cool guy cause I have a cool laptop" thing just make me laugh. I am modifying NopCommere on a laptop with 1/2 of that the horsepower without any problems.  All right - fun's over. Back to business.

One of the biggest problems I've had with previous NopCommerce installations was performance when lots o products are loaded. The bottleneck seemed to be EF itself, as I had optimised SQL extensively. A reasonable way to speed things up for me was to cut on numer of items shown on page down to about 10. Pretty much catalog page load time was linearly proportional to numer of items shown. I would be interested to hear if someone noticed that to be the case with Nop 2.0.
12 years ago
eggheadtony wrote:
@deccs

Is this forum a really good place for a shameless plug? I personally think not.

As you seem to be suggesting that I might like to hire you - well, I think not. I have twenty years of development experience and run a 15 strong development team with decades of experience.


I am sorry if I came across to you like that. It is not my intention to be some sort of cheesy salesman here in these forums. All I was trying to do was establish myself as someone who could be contacted for development services. That is all I was trying to do. I have been involved with the NopCommerce community for at least 3 years now and I do have a lot of experience with the architecture used by NopCommerce. In addition, I am very familiar with NopCommerce's data model.

Given my familiarity with NopCommerce and my senior-level .NET skills, I am a definitely someone to consider as a candidate for a development service contract. My rates are low and my work is delivered quickly and professionally built.

Again, I appreciate your opinion and would also really appreciate it if you shared my contact information with a friend.

Have a good day.

-DECCKS IT Consulting
12 years ago
deccks wrote:

I am sorry if I came across to you like that. It is not my intention to be some sort of cheesy salesman here in these forums.


Well, you did and again in your last post
12 years ago
@deccs,
I am also a developer and joined this forum since 2008.
Downloaded, used all nopcom versions from 1.1 to 2.0 beta.
There will be a market place for developers soon, no worries, you may get lots of projects there :)
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.