我现在写了一个利用WebService的C/S结构的程序,现在需要另外一个程序来监控客户端对服务端的调用。比如在客户端运行至结束期间,共多少次调用WebService,每次调用有多少数据量传送等。可是我现在不知道从何下手,对这方面一点都不熟悉。请问有谁能点拔一下吗?
谢谢了!!

解决方案 »

  1.   

    增加一个包装webService的wrapper,通过它访问webService,然后它实现对调用的webService进行监控的目的
      

  2.   

    先谢谢了!
    但我忘说了一点,Web Services的客户端与服务端都是别人写的,我只能另外写个程序来进行监测,而不能改变他们的代码。所以我现在不知道怎么做。
      

  3.   

    这个基本上很难。
    你的WebServices需要调用其他的方法吗?既然Web Services不能动,只能在他调用上想办法。
      

  4.   

    如果按照 txwd33 所说的,在Web Services和客户端中间放一个中间层,客户端先调用这个中间层,然后中间层再把请求转发到服务端,这样是允许的。不算是对Web Servicesr 代码的改动。可具体该怎么做呢?
      

  5.   

    如果你不能更改客户端代码,你就没办法让客户端调用你的wrapper,应该另外想其他办法,如果能够指向你的wrapper的话,你可以将监控放到你的wrapper中去,例如监控一下调用多少次的话,在wrapper中定义一个变量,每调用一次,进行加一。,也可以在wrapper里控制权限吧
      

  6.   

    我现在可以要求客户端必须首先经过我的这个中间层,然后由中间层来转发请求。关键是这个中间层应该以什么样的数据结构来接受客户端的请求,又该怎么把请求转发给服务端?我是个新手,对WebServices有很多不懂的地方。还望 txwd0033多多指教。
      

  7.   

    客户端实现思路:监听客户端端口通信,假如有固定端口的话。另外,可以在服务端加载自定义HTTP(.NET平台)或Handler(java平台)来实现。
    这种方法可以不修改服务端代码,只需要修改配置文件即可。