当前位置: 首页 > news >正文

.Net 代码性能 - (1)

提前准备测试环境。


确保所有的bottleneck处理妥当。
a)使用多线程来处理CPU bound问题
b)使用异步解决I/O bound问题


如果不确定,使用stopwatch测试代码段的运行时间。


使用ants performance profiler工具对整体性能进行评价。
http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/


使用as替代is。


使用ajax和提前拉取数据提高用户体验。


web服务返回文件时记得flush。


对前端文件进行合并减少HTTP连接数。


使用LINQ时确保知道生成的SQL是什么。


并发简单的处理方式:异步,请求队列,无锁缓存。


使用using及时释放资源。


确保理解传递引用和传递值的区别,尤其对JIT动态编译时的执行过程的影响。


单例与静态的合理使用。全局唯一VS线程无关。


确保理解多线程环境下的锁,volatile的使用。


最小化WEB请求,最小化数据库连接。


IQuerable Vs IEnumerable的合理使用。继续build query vs 立刻拉数据到内存。


EF查询时使用AsNoTracking提高性能。
context.Entites.Where(x=>x.Name = "xxx").AsNoTracking().ToList();


LINQ(SQL查询)时只查询关心的列,避免用*

相关文章:

  • Linux 内核软中断(softirq)执行分析
  • 导入EXCEL到sql server
  • 从Oracle到DB2(三)
  • Android 动态支持多语言
  • cognos8配置NTLM认证
  • Android实现google消息通知
  • 贺计算机成“就业最困难专业”
  • SQL SERVER - 使用MERGE语句完成单向表同步
  • 我们和“”不在一个圈子里
  • Android - 点击EdieText之外的控件隐藏软键盘
  • ASP.Net MVC + Data Table 实现分页+排序
  • SSL 链接安全协议的enum
  • C# https客户端获取证书的工具方法
  • [重构心得] 接一个烂Project怎么办
  • CentOS 5.1 做NAT代理,实现封迅雷,BT,pplive.
  • 分享一款快速APP功能测试工具
  • 《剑指offer》分解让复杂问题更简单
  • JAVA并发编程--1.基础概念
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • PHP面试之三:MySQL数据库
  • swift基础之_对象 实例方法 对象方法。
  • windows下如何用phpstorm同步测试服务器
  • 阿里云Kubernetes容器服务上体验Knative
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 理清楚Vue的结构
  • 力扣(LeetCode)56
  • 利用jquery编写加法运算验证码
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 使用API自动生成工具优化前端工作流
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 阿里云ACE认证学习知识点梳理
  • # Panda3d 碰撞检测系统介绍
  • #162 (Div. 2)
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (C语言)fread与fwrite详解
  • (C语言)二分查找 超详细
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (算法设计与分析)第一章算法概述-习题
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (轉貼) 寄發紅帖基本原則(教育部禮儀司頒布) (雜項)
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • . Flume面试题
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • [ 蓝桥杯Web真题 ]-布局切换
  • []我的函数库
  • [【JSON2WEB】 13 基于REST2SQL 和 Amis 的 SQL 查询分析器