惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hacker News: Ask HN
Hacker News: Ask HN
H
Help Net Security
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog RSS Feed
Jina AI
Jina AI
Stack Overflow Blog
Stack Overflow Blog
量子位
博客园_首页
Vercel News
Vercel News
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Forbes - Security
Forbes - Security
IT之家
IT之家
N
News and Events Feed by Topic
S
Security Affairs
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Webroot Blog
Webroot Blog
Recorded Future
Recorded Future
L
LangChain Blog
Y
Y Combinator Blog
AI
AI
MyScale Blog
MyScale Blog
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
Know Your Adversary
Know Your Adversary
AWS News Blog
AWS News Blog
Help Net Security
Help Net Security
Cyberwarzone
Cyberwarzone
L
Lohrmann on Cybersecurity
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google Online Security Blog
Google Online Security Blog
V2EX - 技术
V2EX - 技术
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
PCI Perspectives
PCI Perspectives
I
Intezer
T
Tenable Blog
G
Google Developers Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
T
Troy Hunt's Blog
L
LINUX DO - 最新话题
云风的 BLOG
云风的 BLOG
C
CXSECURITY Database RSS Feed - CXSecurity.com
有赞技术团队
有赞技术团队
O
OpenAI News
P
Proofpoint News Feed
TaoSecurity Blog
TaoSecurity Blog
C
Check Point Blog
Last Week in AI
Last Week in AI
S
Schneier on Security
Simon Willison's Weblog
Simon Willison's Weblog
Blog — PlanetScale
Blog — PlanetScale

博客园 - 七思软件

基于.Net的架构设计之七 基于.Net架构设计之六 基于.Net架构设计之四 基于.Net架构设计之三 基于.Net架构设计之二 基于.Net的架构设计之一 Microsoft.Visual.Studio.2005.Team.System 面象asp.net2.0的MasterControls控件 aspx页面中标题单点解决方案 求助,web应用程序中的进程线程控制 (The 'url' property had a malformed URL)求助 - 七思软件 Asp.net 2.0功能体验,细节之Web控件(一) 隐藏控件 Asp.net 2.0功能体验,总体设计思想 Asp.net 2.0功能体验,欢迎光临指导 C#中泛型求助 C#2.0中可空类型 迎接.Net2.0 我只是一只碌碌无为的工蚁 : ( 论Web控件开发 - 完美上传下载控件“新”(五)
基于.Net的架构设计之五
七思软件 · 2009-11-29 · via 博客园 - 七思软件

从前面的初步分析来看,构建一个企业级应用系统是复杂而烦琐的,甚至让普通的程序员望而却步,但作为系统架构师却不得不考虑系统的方方面面,并且通过系统架构来控制风险,降低他们的编程门槛,以下是我作为系统架构师对各个开发层次中一些思考,希望大家补充指正:

一、数据持久层

 我一直认为数据持久层的规划是企业级应用是否成功的关键点之一,在ERP实施上,有人说三分程序七分数据,我觉得这对于大型的企业级应用来说也是成立的。数据库中表、聚集索引、索引、事务和锁的设计和控制,都是影响应用高可用性的关键,但是对于普通程序员来说他们可能更熟悉的只是数据的简单的增、删、改、查。在这一个层次,我们除了依赖专业的DBA之外,作为系统架构师可以从以下几点帮助我们的程序员:

1.对于一般的场景我们可以通过编写生成模板来生成满足最佳实践的存贮过程,如对于简单表的增、删、改、查,对于常用的表的外键查询、分页查询、树状数据的维护和检索等等,都可以通过生成模板来生成,这样一般的应用需求我们的程序员甚至可以作到不用和SQL语句打交道,就可以完成开发。

2.对于手工编程的场景我们还可以提供一些标准的代码模板来规范开发。

如可以通过以下的标准存贮过程模板,来展示在创建存贮过程时该怎样控制开启事务,怎么样抛出异常等等。

代码

3.而对于那些复杂的场景,我们可以专注的培养一些程序员,并通过培训或提供指导型文档来帮助他们提高他们对底层数据的理解。比如提供下面的简单的流水号生成示例来提升对锁、事务及并发的理解等等。 

代码