asp.net mvc url date performance
a small benchmark asp.net mvc. viewpage code:
open twine bechmark(func<string> url)
{
var s = new stopwatch();
var n = 1000;
s.reset();
s.start();
(int i = 0; i < n; i++)
{
var u = url();
}
s.stop();
relapse s.elapsedmilliseconds + " ms, " + ((s.elapsedmilliseconds) / (float)n) + " ms per link<br/>";
}
view code:
<%= bechmark(() => url.action("login", "account")) %>
<%= bechmark(() => url.action("login", "account", new {username="bla", password="bla2", returnurl="blabla32", rememberme=false} )) %>
<%= bechmark(() => html.buildurlfromexpression<accountcontroller>(a=>a.changepassword("bla", "bla", "ya")) ) %>
running customary core2 cover default new digest template asp.net mvc beta yields results:
38 ms, 0,038 ms per link
120 ms, 0,12 ms per link
54 ms, 0,054 ms per link
running same benchmark prolongation digest 10 controllers have all around 100 methods 30 routing list entries, opening degrades severely expression-based method:
31 ms, 0,031 ms per link
112 ms, 0,112 ms per link
450 ms, 0,45 ms per link
we slight definitely lot (maintainability) doing opening benchmarking, degrades opening site severely - pages fast enclose around 30 some-more such links, means 10ms additional over unparalleled page. even 0.112ms per an url around 4ms pristine cpu overhead.
it should remarkable opening 3 url date calls between mvc preview 3 beta (released yesterday) got softened means 5.
stack yield presumably powered same framework, have guys tackled scaling problem? magnanimous caching front page (lots links) pre-rendered controls?
any prolongation websites asp.net mvc opening issues good tips?
Comments
Post a Comment