当前在线人数6927
首页 - 分类讨论区 - 电脑网络 - 窗口里的风景版 - 同主题阅读文章

此篇文章共收到打赏
0

  • 10
  • 20
  • 50
  • 100
您目前伪币余额:0
未名交友
[更多]
[更多]
架构问题,我们这样的系统用什么好?
[版面:窗口里的风景][首篇作者:dufeng] , 2014年05月13日16:17:00 ,1005次阅读,17次回复
来APP回复,赚取更多伪币 关注本站公众号:
[分页:1 ]
dufeng
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 1 ]

发信人: dufeng (dufeng), 信区: DotNet
标  题: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Tue May 13 16:17:00 2014, 美东)

我们现用系统是.net web_form架构,数据端是oracle,我们的business逻辑基本上都
是写在数据库层,很长很长的stored procedure的数据层,ASP网页基本上就只是处理
UI和一种数据的validate,VB Class都是call写好的stored procedure。
当前用户有60万,潜在用户会上100万,每天用户的访问量倒不大,大概几万人。系统
从ASP到ASP.net已有上十年了。
我们想改系统,请问用什么架构比较合适?看大家都用MVC,是不是这是当前最好的,以
我介绍的情况,在架构与设计上大家有什么好的建议?
总觉得MS的东西一堆堆的,抱怨不好用的人也很多。如果想增加这方面的知识,有什么
书可推荐吗?
多谢了!
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 204.]

 
NeverLearn
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 2 ]

发信人: NeverLearn (24K golden bear), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Tue May 13 16:47:30 2014, 美东)

如果LOGIC主要在SP里面那就没什么好变化的。MVC是给那些LOGIC放在中间层的
程序用的。过去WEBFORM不强制分层,很多糙快猛的做法就是UI和BUSINESS逻辑
都放在一起,既不清晰又难测试,再加上一堆SESSION STATE难以SCALE所以才
重拾DESKTOP上面的MVC结构。
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 198.]

 
stdio
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 3 ]

发信人: stdio (stdio), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Tue May 13 16:54:52 2014, 美东)

这个系统的焦点是business logic embedded in SP。出了问题不但极难debug,也很容
易造成performance bottleneck,还有scalability的问题,等等。表现层用Web Forms
还是MVC,我觉得倒不是什么大问题,够用就行了。如果是新项目,上MVC则是顺理成章
的事。

另外M$的东西可抱怨的地方有很多很多,但不好用肯定不是其中之一
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 71.]

 
dufeng
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 4 ]

发信人: dufeng (dufeng), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Tue May 13 17:48:33 2014, 美东)

多谢两位。
其实我就不喜欢business logic embedded in SP,可是看样子他们还是要坚持,主要
是不好debug和test,performance bottleneck,还有scalability的问题我倒没有深刻
体会到。
保留的原因无外忽他们认为速度快一些,再有大量的东西不用重写。
这里的人倒都不错,可是接触新技术的机会很少,时常工作多,系统服务时间已经这么
久了,不敢大改。
现在有机会重写了,没有有经验的架构师,实在是没有头续。

为什么说如果是新项目,上MVC则是顺理成章的事。我们这算是新项目吧,只是还是要
用oracle,以用很有可能保留大量已有的stored procedure.

请再给点建议吧。多谢。

另外,觉得MS的sharepoint挺不好用的,一堆功能,想要的却很难实现,不喜欢。

--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 204.]

 
stdio
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 5 ]

发信人: stdio (stdio), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Tue May 13 18:23:30 2014, 美东)

SP速度快只是就单独运行那段script而言。这点好处抵消不了带来的种种弊端。不过要
把business logic分离出来,你们的DBA大概会很生气。大量东西不用重写这条理由倒
是很solid。

Web Forms已经完成它的历史使命了,不用MVC也没啥别的好选。或者你们可以更激进一
点上Web API + Client-side JS。如果不是必须用微软技术,那选项就多了。

【 在 dufeng (dufeng) 的大作中提到: 】
: 多谢两位。
: 其实我就不喜欢business logic embedded in SP,可是看样子他们还是要坚持,主要
: 是不好debug和test,performance bottleneck,还有scalability的问题我倒没有深刻
: 体会到。
: 保留的原因无外忽他们认为速度快一些,再有大量的东西不用重写。
: 这里的人倒都不错,可是接触新技术的机会很少,时常工作多,系统服务时间已经这么
: 久了,不敢大改。
: 现在有机会重写了,没有有经验的架构师,实在是没有头续。
: 为什么说如果是新项目,上MVC则是顺理成章的事。我们这算是新项目吧,只是还是要
: 用oracle,以用很有可能保留大量已有的stored procedure.
: ...................



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 71.]

 
wagner167
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 6 ]

发信人: wagner167 (wagner167), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Tue May 13 21:23:08 2014, 美东)

如果公司想upgrade系统,扩展功能,把逻辑层和数据层分离是必须的。而mid-tier是
EF,SOAP 还是Restful,现在的趋势是越来越趋向于Restful API了。

前端如果是mobile的话用MVC+jQuery Mobile还是很不错的。
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 24.]

 
HorseKing
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 7 ]

发信人: HorseKing (For the Horde!), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Wed May 14 14:25:09 2014, 美东)

nothing about MVC.

MVC is just for the presentation layer.

Looks like you need a Data Layer and a Business Layer.

For the data layer, try nHibernate, since you are using Oracle. Map all the
tables from the database into classes.

SoA is my recommendation for the business layer. The Request-Response
pattern is very nice to have.

People are lazy, therefore, if it is a solid working product, it is not
necessary to make any change. :P

【 在 dufeng (dufeng) 的大作中提到: 】
: 我们现用系统是.net web_form架构,数据端是oracle,我们的business逻辑基本上都
: 是写在数据库层,很长很长的stored procedure的数据层,ASP网页基本上就只是处理
: UI和一种数据的validate,VB Class都是call写好的stored procedure。
: 当前用户有60万,潜在用户会上100万,每天用户的访问量倒不大,大概几万人。系统
: 从ASP到ASP.net已有上十年了。
: 我们想改系统,请问用什么架构比较合适?看大家都用MVC,是不是这是当前最好的,以
: 我介绍的情况,在架构与设计上大家有什么好的建议?
: 总觉得MS的东西一堆堆的,抱怨不好用的人也很多。如果想增加这方面的知识,有什么
: 书可推荐吗?
: 多谢了!




--
※ 修改:·HorseKing 於 May 14 14:30:47 2014 修改本文·[FROM: 140.]
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 140.]

 
HorseKing
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 8 ]

发信人: HorseKing (For the Horde!), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Wed May 14 14:26:00 2014, 美东)

抱怨不好用的人也很多, means those people basically knows nothing but
complaining. They could use WordPress, brainless product. :)

【 在 dufeng (dufeng) 的大作中提到: 】
: 我们现用系统是.net web_form架构,数据端是oracle,我们的business逻辑基本上都
: 是写在数据库层,很长很长的stored procedure的数据层,ASP网页基本上就只是处理
: UI和一种数据的validate,VB Class都是call写好的stored procedure。
: 当前用户有60万,潜在用户会上100万,每天用户的访问量倒不大,大概几万人。系统
: 从ASP到ASP.net已有上十年了。
: 我们想改系统,请问用什么架构比较合适?看大家都用MVC,是不是这是当前最好的,以
: 我介绍的情况,在架构与设计上大家有什么好的建议?
: 总觉得MS的东西一堆堆的,抱怨不好用的人也很多。如果想增加这方面的知识,有什么
: 书可推荐吗?
: 多谢了!



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 140.]

 
xuansu
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 9 ]

发信人: xuansu (xsu), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Wed May 14 14:28:52 2014, 美东)


【 在 dufeng (dufeng) 的大作中提到: 】
: 多谢两位。
: 其实我就不喜欢business logic embedded in SP,可是看样子他们还是要坚持,主要
: 是不好debug和test,performance bottleneck,还有scalability的问题我倒没有深刻
: 体会到。
: 保留的原因无外忽他们认为速度快一些,再有大量的东西不用重写。
: 这里的人倒都不错,可是接触新技术的机会很少,时常工作多,系统服务时间已经这么
: 久了,不敢大改。
: 现在有机会重写了,没有有经验的架构师,实在是没有头续。
: 为什么说如果是新项目,上MVC则是顺理成章的事。我们这算是新项目吧,只是还是要
: 用oracle,以用很有可能保留大量已有的stored procedure.
: ...................


"再有大量的东西不用重写。这里的人倒都不错,可是接触新技术的机会很少,时常工
作多,系统服务时间已经这么久了,不敢大改。

That's one of the most important consideration in this kind of project.  You
don't want to break the existing system just so you can use a new
architecture that's better in theory. 

The only reason to switch architecture is if there are business needs that
requires a switch, such as a predicted increase in users that would
overwhelm the current system.

Otherwise, the project, company and the project team would all be better
served by staying in the current environment.
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 172.]

 
NeverLearn
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 10 ]

发信人: NeverLearn (24K golden bear), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Wed May 14 20:12:48 2014, 美东)

对AZURE WEBSITE架构感兴趣的可以看看下面这个链接,作为入门视频足够了。
http://channel9.msdn.com/Events/Build/2014/3-626
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 198.]

 
HorseKing
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 11 ]

发信人: HorseKing (For the Horde!), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Wed May 14 22:41:04 2014, 美东)

你太可怜了,整天被GOODBUG那个二货喷,哈哈。

【 在 NeverLearn (24K golden bear) 的大作中提到: 】
: 对AZURE WEBSITE架构感兴趣的可以看看下面这个链接,作为入门视频足够了。
: http://channel9.msdn.com/Events/Build/2014/3-626



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 74.]

 
dufeng
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 12 ]

发信人: dufeng (dufeng), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Thu May 15 13:40:07 2014, 美东)

thanks, i dont realy understand how this mapping is good. if i need to query
on different tables, many where conditions, how are the classes going to
support?


【 在 HorseKing (For the Horde!) 的大作中提到: 】
: nothing about MVC.
: MVC is just for the presentation layer.
: Looks like you need a Data Layer and a Business Layer.
: For the data layer, try nHibernate, since you are using Oracle. Map all
the
: tables from the database into classes.
: SoA is my recommendation for the business layer. The Request-Response
: pattern is very nice to have.
: People are lazy, therefore, if it is a solid working product, it is not
: necessary to make any change. :P

--
Posted from MITBBS Reader for WP8 - 免费无广告
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 70.]

 
dufeng
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 13 ]

发信人: dufeng (dufeng), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Thu May 15 13:59:20 2014, 美东)

我没有具体测试过,不过我的理解是速度影响会很大的,比方说如果你的逻辑在应用层
,那么你得多次访问数据库,更多的数据在两层之间传递,在应用层还得用无数的变量
存储数据,这样的话不是不如什么东西在数据库层就解决了好吗?

【 在 stdio (stdio) 的大作中提到: 】
: SP速度快只是就单独运行那段script而言。这点好处抵消不了带来的种种弊端。不过要
: 把business logic分离出来,你们的DBA大概会很生气。大量东西不用重写这条理由倒
: 是很solid。
: Web Forms已经完成它的历史使命了,不用MVC也没啥别的好选。或者你们可以更激进一
: 点上Web API + Client-side JS。如果不是必须用微软技术,那选项就多了。



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 70.]

 
NeverLearn
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 14 ]

发信人: NeverLearn (24K golden bear), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Thu May 15 14:45:59 2014, 美东)

【 在 HorseKing (For the Horde!) 的大作中提到: 】
: 你太可怜了,整天被GOODBUG那个二货喷,哈哈。

HOHO, IT以前被我打脸心里恨得要死,到处追着我要把面子找回来。

--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 198.]

 
dufeng
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 15 ]

发信人: dufeng (dufeng), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Thu May 15 15:02:02 2014, 美东)

呵呵,你们俩都太有个性了点,低一次头又不会死。

【 在 NeverLearn (24K golden bear) 的大作中提到: 】
: HOHO, IT以前被我打脸心里恨得要死,到处追着我要把面子找回来。



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 70.]

 
stdio
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 16 ]

发信人: stdio (stdio), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Thu May 15 15:16:42 2014, 美东)

数据库虽然是专门用来处理数据的,但SQL不是用来写business logic的,如果有一堆
join,subquery在那,很难想象效率能高到哪里去。多次访问数据库除非搞出N+1这类
bug没有你想象的那么严重,况且不用SP并不意味这一定要多次访问数据库。你们真想
改这块的话应该先跑几个prototype测试一下实际情况。不过如好几位指出的那样,系
统还很健壮的时候不改的理由更充分,省点时间玩玩游戏或者上mit看goodbug-
neverlearn打架更有意义


【 在 dufeng (dufeng) 的大作中提到: 】
: 我没有具体测试过,不过我的理解是速度影响会很大的,比方说如果你的逻辑在应用层
: ,那么你得多次访问数据库,更多的数据在两层之间传递,在应用层还得用无数的变量
: 存储数据,这样的话不是不如什么东西在数据库层就解决了好吗?



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 71.]

 
dufeng
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 17 ]

发信人: dufeng (dufeng), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Tue May 20 10:59:47 2014, 美东)

多谢,再多问一个问题。

请问大家都用什么testing environment?MS team foundation可以做automatic
testing,如果是.net前台,oracle后台,用什么测试系统合适?
我们准备重写系统,他们目前准备用HP’s Unified Functional Testing,所说可以用
在不同的开发环境里,还有我们目前最大的系统是用power builder与oracle开发的,
因为这个原因他们想用这个HP UFT,可以我们将来是要全问用.net,请问各位有什么建
议吗?
多谢了。
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 204.]

 
pvg95129
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 18 ]

发信人: pvg95129 (哈哈), 信区: DotNet
标  题: Re: 架构问题,我们这样的系统用什么好?
发信站: BBS 未名空间站 (Mon Aug  4 18:18:35 2014, 美东)


MVC 使用 EF (Entity Framework). SQL statement 理论上应该完全由 MVC 生成。 但
实际上根本不可能,仍需相当多手写的SQL statements. 结果整个business layer变成
了一个 SQL + C# 的混合体。还不如干脆直接用SP来的清楚。

参见下列讨论:
http://forums.asp.net/t/1882605.aspx?Under+what+circumstances+should+business+logic+be+put+into+stored+procedures+

http://programmers.stackexchange.com/questions/158534/pros-and-cons-of-holding-all-the-business-logic-in-stored-procedures-in-web-appl

另外, Facebook 的新实验架构:
http://www.infoq.com/news/2014/05/facebook-mvc-flux.


--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 158.]

[分页:1 ]
[快速返回] [ 进入窗口里的风景讨论区] [返回顶部]
回复文章
标题:
内 容:

未名交友
将您的链接放在这儿

友情链接


 

Site Map - Contact Us - Terms and Conditions - Privacy Policy

版权所有,未名空间(mitbbs.com),since 1996