"don’t use exceptions as flow control in your application" ,不要通过exception进行流程控制,很多时候我们简单的通过try cach 来处理潜在的异常问题而不是分析指出为何会抛出exception,这是很不好的做法,理由之一是异常处理是个很耗费cpu资源的操作。
 a 非必要情况下不要为controller使用handleerror熟悉;尽量使用return View("~/Views/MyView.cshtml"),就是尽可能传入路径,而不是默认的return View()
b HttpWebRequest throws a WebException for 404s, 401s, and other non-200 responses
3Response.Redirect(newUrl, FALSE)替代HttpResponse.Redirect().因为后者总是会抛出ThreadAbortException,会导致CLR threadpool处理的工作,增加cpu负担。mvc中的return Redirect(newUrl)已经处理了这个问题
2.LINQ to SQL & non-compiled queries
  每个linq查询执行前,会由linqtosql provider编译为sql查询,这个动作比较消耗cpu,可以编译,后面的请求可以使用编译过的sql查询,避免每次都编译
// create compiled querypublic static Func<northwnd, string,="" iqueryable> CustomersByCity =    CompiledQuery.Compile(    (Northwnd db, string city) =>         from c in db.Customers where c.City == city select c );// invoke compiled queryvar myDb = GetNorthwind();return Queries.CustomersByCity(myDb, city);
也可以预编译处理entity framework query, Entity Framework 4.5版本可以自动编译了

3. Memory allocation & "% Time In GC"