单从页面程序上讲,服务器性能,带宽足够。
有经验的兄弟讲讲。分享下你的经验。

解决方案 »

  1.   

    性能提高的技巧
    1.避免不必要的执行操作
      Page_Load 和 IsPostBack
     void Page_Load(Object sender, EventArgs e) {
            // ...set up a connection and command here...
            if (!Page.IsPostBack) {
                String query = "select * from Authors where FirstName like '%JUSTIN%'";
                myCommand.Fill(ds, "Authors");
                myDataGrid.DataBind();
            }
        }    void Button_Click(Object sender, EventArgs e) {
            String query = "select * from Authors where FirstName like '%BRAD%'";
            myCommand.Fill(ds, "Authors");
            myDataGrid.DataBind();
        }关闭不必要的Session状态
    <%@ Page EnableSessionState="false" %>
    注意使用Server Control
    不必要时可以不使用Server Control
    不必要时可以关闭ViewState
    <asp:datagrid EnableViewState="false“ runat="server"/> 
    <%@ Page EnableViewState="false" %>不要用Exception控制程序流程
    try { 
    result = 100 / num;
    }
     catch (Exception e) { 
    result = 0;
     }
     
     if (num != 0) 
    result = 100 / num;
     else
     result = 0; 禁用VB和JScript动态数据类型
    <%@ Page Language="VB" Strict="true" %>
    使用存储过程数据访问
    只读数据访问不要使用DataSet
    使用SqlDataReader代替DataSet
    SqlDataReader是read-only, forward-only
    关闭ASP.NET的Debug模式
    使用ASP.NET Output Cache缓冲数据
    页面缓冲
    <%@OutputCache%>
    Duration
    VaryByParam
    片断缓冲
    VaryByControl数据缓冲
    过期依赖条件Cache.Insert("MyData", Source, new CacheDependency(Server.MapPath("authors.xml")));Cache.Insert("MyData", Source, null,
                 DateTime.Now.AddHours(1), TimeSpan.Zero);Cache.Insert("MyData", Source, null, DateTime.MaxValue,
                 TimeSpan.FromMinutes(20));
    存储过程,那就不用说了
      

  2.   

    页面最好静态的
    全局缓存要做好  
    别太多的包含文件
    能用JS实现的效果都用JS实现
    能在客户端实现的就用分页使用好的存储过程,其他的也尽量使用存储过程
    少用些耗费资源的控件,减少回发
    记得销毁数据库连接不要把所有内容都放在大表格中 而是尽量以横向分段,一段为一个表格其他细节就自己把握了
      

  3.   

    补充两点:少用web控件最小限度的使用datagrid控件
      

  4.   

    能用html的就不要用aspx了
    能用javascript就不要用cs了
    datagrid能不用就不用
    session、viewstate、Server Control能不用就关
    存储过程、缓存会用就用,不会就学
      

  5.   

    只读数据使用datareader,很多的数据库操作使用存储过程,
    使用<%@outputcache Duration=60 VaryByParam="*"%>进行缓存
    关闭debug模式
    正确使用索引
    if (!Page.IsPostBack)进行绑定不需要回传的代码
    图片不要太精确
    主页数据查询比较多但更新不常用的可以使用aspx动态生成html页面 
    控件不需要经常编程的 比如输入控件等都使用HTML控件
    开通镜像服务
      

  6.   

    lulei(特呆)    說得不錯
      

  7.   

    同志们,我再补充两句
    少用dataset,可以改为datareader
    使用cache
    少用session可以考虑cookie代替
      

  8.   

    大型门户网站asp.net实现的注意事项:1. 不要用服务器端控件
    2. 全面禁用asp.net的一些页面级新特性
    3. web.config里的debug要为false,并且dll文件编译是要生成为release版本的
    4. 尽量不要用dataset。除非用到嵌套循环
    5. 运行在win2003企业版上。
    6. 用sqlclient或oracleclient访问数据库
    这些是asp.net开发大型网站必须要重视的几点,其它一些就是静态页面啊和硬件上的一些问题,这些跟其它大型网站诸如此类
      

  9.   

    cache 要慎要,因为巨大的访问量会过多的消耗内量,适得其反!
      

  10.   

    终极解决方案:
    不要APS、ASP.NET、PHP、JSP等技术。
    全部使用HTML,杜绝JavaScript脚本,避免图片、FLASH、音频等。
    回答完毕
      

  11.   

    不错,受益匪浅
    补充几点,
    1、转向用Server.Transfer,不用Response.Direct
    2、ADO对象在一次使用过程中不要重复打开创建,尽量使用一个Connection、一个Command、一个DataReader,并且记得不再调用数据库数据时马上关闭、释放ADO对象
    3、数据集采用要多少给多少,杜绝不分字段不分页
      

  12.   

    程序上的优化上面说了很多了.
    页面上执行顺序问题也很重要.另外html尽量遵守w3c规范.
      

  13.   

    不错,尽量生成shtml等静态页,其它一些提高性能的小技巧,大家都说的差不多了,其实象用as代替is这样语言界别的提高性能的技巧,其实对整体性能影响不会是很大的,用好缓存,经过很久计算的数据一定要缓存起来,还有就是使用一些客户端技术来减轻服务器压力。
      

  14.   

    大型门户网站,除了软件上性能的提升,更重要的还应该使用.net的分布式的部署策略,集群技术等
      

  15.   

    可以参考微软的例子Duwamish和petshop的部署方法
      

  16.   

    1. 不要用服务器端控件
    2. 全面禁用asp.net的一些页面级新特性
    3. web.config里的debug要为false,并且dll文件编译是要生成为release版本的
    4. 尽量不要用dataset。除非用到嵌套循环这么多的东西不用啊,干脆还是用asp。
      

  17.   

    to  gchlihong() : 如果你认为这么多东西不用就还不如asp的话那就大错特错了。
      

  18.   

    &#61557; 尽量用button,少用下拉框
    &#61557; 页面数量尽量少
    &#61557; 尽量考虑逻辑上的当前信息
      

  19.   

    大家的一致意见是:啥都不用!
    那我们还要asp。net干哈?
      

  20.   

    咱也来补充一下吧:
    少用select * form table这样的语句
      

  21.   

    是呀,干脆还是用asp好了
    不要用服务器端控件??太绝对了吧。不用DataGrid倒是应该的,Repeater倒是挺好用的,建议多多使用。DataSet也是很好的东东嘛。比如首页往往要从好多个表里取记录,而每一个表里只取几条记录,那么访问一次数据库,
    把需要的记录都取出来放在DataSet里面不是挺好的吗?节省了访问次数,缩短了open的时间,只是多占用了一点点内存。ViewState一般都是可以禁用的,可以减少网页的体积。分页的时候,第一页直接用 select top 20 ... 的方式。
    因为第一页的访问率绝对是很高的,这样可以节省很多的内存。
      

  22.   

    一个 大的 网站是不可能全部东西都生成是
    静态的 
    但是 能生成静态页面的 就生成 静态页面
    能不用服务器控件的 也不要用
    能用js完成的东西
    不要写后台代码
    还有就是 数据库SQL 的代码优化
    服务器均衡 等等
      

  23.   

    尽量的不要使用try语句
    关闭 调试模式
    数据访问
    不要烂用DataSet 能用DataReader的地方尽量用DataReader
    关闭不必要的ViewState
    能用Cookies的不要用Session
    SQL使用存储过成
      

  24.   

    我自己在补充下:不要将整个页面内容塞到一个Table中
      

  25.   

    说一下为什么不可以用datagrid呢
    如果不用还要自己去写代码一行一行地显示。菜鸟飞过...................嘎嘎