当前位置:编程学习 > C#/ASP.NET >>

这样的应用如何进行架构?

 这样的应用如何进行架构?

前言:
   由于初次涉及到软件架构,对于架构的知识和经验的十分缺乏,不知道如何做好架构,希望有这方面经验的朋友来谈谈您的看法

,多多指教一下,多给点建议,小弟不胜感激.

背景:
   产品是一个网络安全设备管理软件,可以对多台硬件防火墙,路由器等进行管理,监控,日志收集,及报表生成。

   由于要对多台设备同时进行实时监控,日志收集有时会达到20000条/秒,甚至更多。报表生成更需要处理海量数据,所以性能及

其重要。

   已经有CS版,用C++写的。应用户需求现在想推出BS版。

需求:
(1)实现B/S版,用户可以在浏览器端管理安全设备。 
(2)性能:至少保持现有性能。
(3)稳定性:至少保持现有稳定性。 
(4)易用性(安装,使用,升级)。 
(5)培训成本:跟原来版本差异不大。 
(6)调试:调试方便。 
(7)测试:测试方便。
(8)架构:符合需要,并有一定的前瞻性。 
(9)扩展性:适应一倍以上的需要膨胀。
(10)安全性:高
(11)工作量:尽量减少 
(12)开发:可以快速开发,尽可能的复用以前的代码,
(13)  新增的Web代码需要易容开发和维护,把主要的精力专注到核心业务处理上(如性能的提高,软件的稳定等)。

 
软件结构:
1.原软件结构:管理器,服务器,单纯的VC++编写,使用原始的套接字通讯


2.设想软件结构:

a.平台选择.net:

原因:满足(4),(6)VC++ ,C#,Silverlight都可在VS下开发,微软的现成的诸多类库和框架。减

少了大量的工作量,使有更多的精力专注到核心业务处理,而用少量的精力就可以处理界面展示问题

 
b.服务器实现方式:将老服务器封装成Dll,使用WCF技术通过.net平台调用调c++Dll,并封成Wcf服务。

原因:满足(12),(13),(10)WCF提供了很多提高安全的方法。

 
c.管理器:使用Silverlight,使用MVVM架构

原因:满足(4),(6)Silverlight良好的支持WCF,支持双向通讯。在VS平吧下易容开发。并能得到良

好的用户体验。

问题:
    以上列出软件结构只是我的一种简单设想。我只是简单的根据需求本能列出想法,并没有对它进行深入的调研。

如:富应用程序应选择那种技术(ajax+asp.net、silverlight、flux、还是ajax+php);.net平台调用性能损耗情况如果;WCF的并发处

理支持情况.等等。希望有经验的朋友能给点建议.

1.一般类似的软件升级到Web版是如果架构的。采用些什么技术?

2.Web版开发中需要注意那些。瓶颈在那?

3.Web版性能的处里通常用那些方法?

4.Web版安全性一般是怎么考虑的?

 
我列出的问题只是抛了块砖,肯定还有很多需要考虑,希望欢迎大家来讨论,帮一下我,谢谢。
补充:.NET技术 ,  .NET技术前瞻
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,