事情是这样的:几年前公司用了别人写的一个C/S的应用软件,他这个软件只有一个C客户端,客户端的增删改查很频繁,数据库操作是直接通过客户机ADO上数据库服务器的,现在客户端已经到60个左右,系统显得就特别的慢,打开SQL服务器会看到近百个进程和几十个锁,于是我在想就是这种直接访问方式造成了数据库反映慢,就想改写成像B/S结构的,但是B/S下的客户端功能不强大,很多特殊操作实现不了,我的想法是还用C/S来做,不过客户端与数据库服务器要通过一个Server端来操作,由于对这方面不是太熟悉,问题就来了:
1.如果这么多客户端同时访问Server,S为每一个客户端创建一个进程并发实现还是S端只用一个进程来异步实现?
2.这样子做的话,S端会不会因为程序架构的不严谨会崩溃掉,还有这个S能用大内存吗?
3.有没有类似的框架,就像B/S下的IIS和Tomcat那样,拿来直接能用?
4.如果可以,考虑到软件的安全性,如不能被反编译,C#和C++哪个实现起来更好点?
5.如果用上边语言实现,那么C和S端用那种协议或技术来实现通讯简单又安全?
暂时只想到了这么多,还望前辈大大们指点一二...

解决方案 »

  1.   

    一个Server不行,多个Server就可以解决问题了啊
      

  2.   


    什么意思?服务器集群?多个data server? 第一价格高第二对技术提升也没帮助
      

  3.   

    应该是那个C/S的应用软件数据访问层有问题.Server倒不是不可以,不过 开发Server 还是要修改目前的应用软件,而开发Server的目的是要消除性能瓶颈 ,那直接修改目前的应用就可以了.
      

  4.   

    为什么价格高呢,又不是要你买多台服务器,一台服务器上有多个Server很正常的啊
      

  5.   

    WCF 是适合用来开发服务端应用,分布式应用的框架,推荐使用。
      

  6.   

    就是因为目前的应用有很多BUG,代码混乱,所有操作都是通过在程序里动态拼接SQL实现的,而且一半的SQL处理都是超过千行的,所以改动量不亚于重写个,既然都要花费等量的时间,为什么不重新架构个新的呢?呵呵
      

  7.   

    你研究下WCF吧,那个可以解决你的问题,将数据访问层交给WCF的Service端,你现有的代码改动很小即可实现。
      

  8.   


    兄弟没认真看我的描述,现在已经是服务器将要崩溃了 还开多个服务? 还有C/S的DB怎么多开服务?
      

  9.   

    恩 都说WCF  好,你还是看看!
      

  10.   

    有没有WCF方面的专家,给兄弟个具体建议,嘿嘿...
      

  11.   

    DB Server与Server端分开,不要都放在DB Server上,楼上也说了,就用WCF。用Remoting有点过时了。
      

  12.   

    网上教材很多,你Google搜索下能找到很多例子,入门级的比起问别人,自己看技术文章更好,有条理。至于12楼说的Remoting,不是过时而不用,是用起来麻烦,一来限制了只能在.NET程序中进行Remoting通信,二来代码写起来也繁琐。不过有人喜欢这类过时技术,认为效率高,其实WCF一样可以高效,关键是你得会优化底层各个参数。
      

  13.   

    tcp,ip,udp,http,remoting...........
    随便整了能整出来就OK了。
      

  14.   

    根本不是C/S与B/S的问题,B/S比C/S更消耗服务器资源
      

  15.   

    楼上已经有人提到WCF了,就是这个
      

  16.   

    整一台服务器,上面部署webservice进行数据库操作,客户端调用webservice的接口
      

  17.   

    webservice 有 wcf 操作灵活吗?
      

  18.   

    你是C/S架构的,就不需要把B/S架构混进来了,webservice是走的HTTP协议传输xml文本,速度上没有Remoting快。而WCF可以理解为将WebService和Remoting两者整合到一起去了。