系统采用C/S结构,客户端用户比较多(几十万),客户端需要向服务器写入数据,以及从服务器得到一部分数据写入本地数据库,而且对速度要求很高,不能超过20秒,请问有什么好的解决方案?
我有以下几种解快方案,请大家评判一下,可不可行:
1.客户端直接访问数据库.
2.在服务器端写一个代理程序,负责处理客户端发过来的请求,客户端采用SOCKET的方式回送数据.(目前采用的方法,太慢,要一分钟)
3.在服务器端发布一个WEB服务,客户端直接请求.(服务器端必须用JAVA,客户端为.NET,会不会存在问题,比如大数据量时)不知那位做过这方面的应用,有没有好的解决方案,谢谢!
我有以下几种解快方案,请大家评判一下,可不可行:
1.客户端直接访问数据库.
2.在服务器端写一个代理程序,负责处理客户端发过来的请求,客户端采用SOCKET的方式回送数据.(目前采用的方法,太慢,要一分钟)
3.在服务器端发布一个WEB服务,客户端直接请求.(服务器端必须用JAVA,客户端为.NET,会不会存在问题,比如大数据量时)不知那位做过这方面的应用,有没有好的解决方案,谢谢!
并发量有十几万吧,业务高峰在休息时间
1.客户端使用WebService,
2.服务器端模拟一个任务队列,起到缓冲的作用,服务器段处理使用Windows服务。
也可以试试.net Remoting,不过条件没有WebServic来的低。
服务器端也使用队列,起到缓冲的作用。
一个服务程序通常在一个众所周知的地址监听对服务的请求。换句话说,服务进程一直处于修满的状态,直到一个客户对这个服务的地址提出了连接请求。在这个时刻,服务进程被“唤醒”并且为客户提供服务-对客户的请求作出适当的响应。
客户机软件由网络借口软件, 支持用户需求的应用程序以及实现网络能力的实用程序(如电子邮件和群件)组成。网络借口软件提供各种数据传输服务。应用程序软件执行具体的任务,如字处理,电子表格和数据库查询生成。实用程序软件通常执行几乎所有网络用户都要求的标准任务。由客户机执行的计算称为前端处理。服务器软件既包括遵循于OSI或其他网络结构的网络软件,又包括由该服务器提供给网络上的应用程序或服务软件。在服务器上执行的计算称为后端处理。
2、“胖客户”与“瘦客户”
胖客户相对于客户机而言。胖即是客户机执行很多功能,分担了服务器的部分计算功能;”瘦“客户则是说客户机只是实现简单的功能。3、中间件(MiddleWaer)
中间件是一个软件层,它保护应用程序开发人员避免受到各种通信协议、操作系统以及数据库管理系统的影响,也用它来完成身份验证,进行一些预处理等。它为建立可与以前沿袭下来的应用程序并存的新应用程序打下基础。中间件有好几种类型,包括应用程序借口(API),远程过程调用(RPC)、网络通信、数据访问以及计算机辅助软件工程(CASE)工具!