Blogs

Thinking Out Loud

ASP.NET Components can Radically Impact Performance

     

Recently, a prospective customer contacted us regarding some miserable performance in their asp.net application...

The issue was directly attributed to a component being used in their solution. Needless to say, they were not happy and after seeing the application, I don't blame them.

This experience got me to thinking and I thought it might be valuable to explain in a blog post why we re-wrote our ASP.NET grid and ask for your thoughts/feedback on ways in which we can help you transition from other controls to ours.

First - up until late 2006- our focus here at Developer Express was components for Windows Forms. Though we developed ASP.NET controls, Windows Forms was always first in line within the organization. As you can imagine, this meant 2 things. Our Windows Forms products kicked butt (and still do) and our ASP.NET controls did not. Late last year, we decided it was time to change the equation and pay far more attention to ASP.NET and take the steps needed to deliver the very best tools we possibly could for this platform.

Our ASP.NET Grid Problem

In December 2006, we had numerous discussions about our then shipping ASP.NET grid, the ASPxGrid. Though many of us felt the grid compared well with others available in the market, some of us felt it was time to rewrite the product for ASP.NET 2 and deliver features that clearly distinguished it from the competition. Like our competition, the ASPxGrid was a product that had evolved with ASP.NET. As ASP.NET moved forward, our engineers plugged in new features that were not considered when the product was first engineered. This meant that over time, it became a big fat ugly cow. Yes it worked, yes it did what we said it did...but once pushed hard, it began to show its weight. Fact is, many of our competitors face this reality and proof of this lies in the products available in the market and the necessity to rewrite old products to take advantage of new technologies in full - without overloading a product.

Topmost in our minds for our new ASP.NET grid was performance and memory footprint. As we've tried to describe throughout our website, we concluded that its useless to build an advanced grid control with features such as data grouping, sorting, and summary computation if it cannot effectively and accurately display data in a timely manner to end-users.

Ultimately, you are the sole judge as to whether our goal to build the most performant ASP.NET grid control was realized. If you have not yet seen our online demo describing its features, be sure to checkout

http://demos.devexpress.com/ASPxGridViewDemos/DataBinding/XPOLargeDB.aspx?Section=1

...and compare our product to those you are currently using.

As you can imagine, writing a new control is not a trivial undertaking...but what is perhaps much harder is convincing people to take the next step and actually replace existing products.

We know that one of the toughest decisions a developer or company must make when choosing to replace existing controls is the time required to remove poorly performing products and replace them with those that meet the customer's requirements. Part of our responsibility is to help minimize both the cost and risk associated with conversion and I want to make certain that we take the steps necessary to accomplish this.

A few ways in which we can help you with your transition are obvious:

Better Documentation
Real-World Tutorials
Practical Application Samples
Training Screencasts

Other ways might include project converters that convert one control for another. This is not a trivial task, but something we've done in the past.

If you have other suggestions or desires I want to hear from you - feel free to send me an email with any feedback.

 

 

 

Published Nov 13 2007, 11:49 PM by Ray Navasarkian (DevExpress)
Technorati tags: DXperience ASP.NET, ASP.NET
Bookmark and Share

Comments

 

Shankar said:

Decisions are taken on a control due to project schedule and belief in published features. On Most occasions the stress test is done during live usage and then one looks for a Solution. It would be a good idea to publish the Performance counters along with the control as a reflection to know at development time the impact of a logic like web analytics.

November 14, 2007 6:19 AM
 

Ed said:

Any tutorials on how to use the XPO datasource. It's very confusing. I know theres a blog on how to create it using vs2005 but not quite on how to implement it when using an online MSSQL Database. Plus, this test shows the stress load of using a dataset with 300,000+ records. How about a dataset with only 10k. Is the aspxgridview fast enough to handle it or is using an xpo datasource always recommended?

November 14, 2007 10:08 AM
 

Doug said:

I used the asp.net look and feel controller.  Now with skins available, which seem to have better compatibility with firefox, it would be great to have a converter or documentation to go from the lookandfeel controller to skins.

November 14, 2007 11:35 AM
 

Scott Blood said:

I love the new grid, the speed of it is short of amazing especially when you have recordsets of millions, it handles them much much much better than the competitors.

One thing i find absolutely irritating is the lack of the height property, i dont know why it isnt there and if someone could explain it , it would be good because i miss it :)

And my last moan is the lack of a decent help file, a lot of the time the helpfile just describes the class structure and what it inherits from.  An explanation of what the class is for, what it does, how to use it and maybe even a screen shot of what it produces would help no end.

Finally keep up the good work, the new version 7.3.1 kicks ass.

November 14, 2007 12:41 PM
 

Ray Navasarkian (DevExpress) said:

Appreciate the feedback guys - keep them coming.

November 14, 2007 3:46 PM
 

Mehul Harry (DevExpress) said:

Hi Scott,

The fixed height will be in a future release. You can track the suggestion here to get updates of when we'll release it: www.devexpress.com/.../AS17048.aspx

We're always looking to improve the help files and your comments will help us.

And thanks for the support!

November 14, 2007 7:41 PM
More from DevExpress
Live Chat
Have a pre-sales question?
Need assistance with your evaluation?
We are here to help.
Chat is one of the many ways you can contact members of the DevExpress Team. We are available Monday-Friday between 8:30am and 5:00pm Pacific Time.
If you need additional product information, require pre-sales assistance, or want help with your order, write to us at info@devexpress.com or call us at
+1 (818) 844-3383.