CS架构服务器如何整合WEB服务器

目前有个即将完结的项目,采用的是cs架构。我们小组负责的是后台服务器端。后端服务器与前端通信我们采用了netty框架,建立TCP/IP长连接的通信方式。 由于我们后端组相对前端时间上比较充沛。所以公司临时决定添加一个后台管理模块。 但客户要求使用浏览器登录后端使用,即BS架构,而且希望后台管理端做的操作能够实时反馈到后端服务器。 目前我的想法是: 第一种方案,想把WEB服务器整合到我们的后端服务器。但是这样相当于写一个web服务器了,还要解析html协议:(。由于没有写web服务器的经验。这个方案存在时间风险。并且耗费的工作量主要集中在了底层技术上这样就本末倒置了。 第二种方案,客户端浏览器->web服务器(暂时决定用tomcat,利用servlet启一些工具类,然后建立对后端的socket连接)->后端服务器。 不知道各位前辈有没有相关的经验,能提供一些更好的方案么? [该贴被windforce于2011-08-17 09:32修改过] [该贴被windforce于2011-08-17 09:45修改过]

只要你的后端服务器是以服务方式(以Web服务或REST)提供功能,那么C客户端或Web服务器都是客户端。

你以前通信方式太底层,要使用基于TCP/IP的Http,如REST。

首先谢谢banq的回复。貌似REST是个好东西。一直没接触过,等会找一些资料学习学习。 同时我再补充一些情况。我们现在的项目是用于网络游戏的后端服务器。之所以采用netty框架和这么底层的通信方式,很重要的一个原因之一是为了提高性能。比如起初我们也考虑过采用XML的通信方式(当初我在小组中是最提倡这个的),但是当数据包很多的情况下,解析XML的过程也很明显的影响到了服务器的性能。 所以该项目我们对通信效率是比较敏感的。然而这个后端管理程序由于并发量不是很大,实时的要求也不会很高,几分钟内都可以忍受(比如一些系统消息、发放系统邮件、礼包等)。 再者由于是一个即将完结的项目,所以我们不会对原有项目做大的改变。我目前的初步想法是:为该项目和web服务器之间写一个通信适配器层。服务器的模型并不直接和web服务器直接通信。而是通过这个适配器层。 [该贴被windforce于2011-08-18 11:53修改过]

2011年08月18日 11:52 "@windforce"的内容
所以该项目我们对通信效率是比较敏感的。然而这个后端管理程序由于并发量不是很大,实时的要求也不会很高,几分钟内都可以忍受 ...

如果你采取状态共享的模式,可以将实时性和分析挖掘性两个领域分开。所谓状态共享可以两种方式:状态在一个分布式的内存中;最简单是状态在关系数据库中。

实时性 -->状态 <----分析管理挖掘