性能优化总结(一):前言

本文分享了在GIX4项目中进行性能优化的经验,重点介绍了两种优化方法:SQL加载聚合对象和数据预加载。这两种方法适用于面向领域模型编程的应用程序,并详细探讨了其在系统中的具体应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    最近一直忙着学2010、WPF、看架构师教程、学英语,搞得都没时间写博客了。

    最近在GIX4项目上做了一些性能方面的优化,为了方便和同事们分享经验,今天准备把一些相关的小技巧都写一下。这几个技巧并不难,也不是说设计得多好,而是我觉得它们很重要。记得我在做上一个Web系统时,也支持OO的业务富模型,其中大部分不太要求性能的场景中,我使用了LINQTOSQL来实现数据访问。而性能要求比较高的场景中,又使用了人工SQL来进行数据访问。但是在两种方式中,在对数据访问进行优化时,都使用了同样的方法。今天,在GIX4中又再次使用同样的方法。

    可见,在面向领域模型进行编程的应用程序中,这样的优化方案可能会被经常使用到。今天要写的是以下两个主要的方案:

    1. SQL加载聚合对象。

    2. 数据预加载。

    随手在记事本中写了下提纲,大概分两次写完,如下:

 

Outline:
Preview

Aggregate Model SQL
 Why? Senarios.
  Shortcoming of lazy load
 SQL Design
 How to integrate it into our system.
  SQL Columns Generate
   Load TableInfo
   Static SQL format definition
  Data Read Design
   Algorithm
   IGTable
  Factory Method
    naming convention
    How to write codes in these methods
  Develop progress
   This design is used to refactor.
 
ForeAsyncLoader
 Why?
 Requirements
 Corresponding APIs
 Class design
 Two ways for creating loading delegate for loader.(Data Load Region)
 Parallel Server for CSLA
  ThreadSafe field
  ThreadHelper.AsyncPrincipalWrapper()

Summary
 Questions remain
  Paging?
 Refactoring...

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值