精华内容
下载资源
问答
  • 目前在做android(ksoap2)+...然后用多个客户端来连webService中间层,不知道怎么做与数据库的长连接,包括这样客户端连webService的方式要做什么改动吗?求教,很急急急。是不是要要用心跳包 积分不多 全给了 ,在线等
  • C#弄了个WebService,测试的时候发现每次他都会执行下conn.open(),也就是每次数据库操作都连接数据库...我想让WS保持一个数据库长连接,有办法做到吗?因为WS每次都创建新实例,好像“全局”变量也无从谈起了 请指教
  • iPhone连接Webservice

    2012-05-24 14:03:37
    iPhone连接Webservice——项目中需要,找了很时间才找到,共享出来。测试中“时区”输入数字就可以【】,例如8。
  • ok,正事,thinkphp连别人写的webservice接口 刚开始他叫什么nc接口,就把我给骗了,这就是人家的名字,和nc半毛钱关系没有,也怪自己太菜,不知道nc接口啥样 ini_set('soap.wsdl_cache_enabled', "0");//注意...

    嗯,我现在真的好像骂人啊,但是我又是个文明的人,所以我就写出来让自己冷静一下

    ok,正事,thinkphp连别人写的webservice接口

    刚开始他叫什么nc接口,就把我给骗了,这就是人家的名字,和nc半毛钱关系没有,也怪自己太菜,不知道nc接口长啥样

    ini_set('soap.wsdl_cache_enabled', "0");//注意该选项 soap有缓存
    libxml_disable_entity_loader(false);//防止出现那个无法加载soap的错误
    $client = new \SoapClient("http://127.0.0.1/test?wsdl", array('encoding' => 'UTF-8'));
    print_r ($client->__getFunctions());//打印服务器的方法
    print_r ($client->__getTypes());//打印类型
    //通过我这次被坑啊,其实这个方法感觉没啥用,主要这个类型啊,我打印出好多来,但是看关键的,
    //打印出来是这样的

    $aryResult = $client->testwes(array('string'=>$str,'string1'=>$str1));
    
    

    注意:

    这个是我打印出来的类型,前面的string是类型,后面的string是要传过去的,

    因为接口给的也不是很明确,我就很纳闷为啥还有两个,然后我就在这里停住了,本来贼简单的,但是弄了好久,哎,防不胜防啊,

    其实还是自己经验不足,不知道这是啥意思,我在这边停了半天,一直在找资料啥的,有啥问题,可以问我啊。哈哈哈哈

     

    转载于:https://www.cnblogs.com/xbxxf/p/10103430.html

    展开全文
  • 在本机上测试通过一时间只处理3个请求,服务器上是9个请求,可能每台电脑配置不一样有点出入没关系这不是重点,然后就上网百度,找了好时间,很多都是在iis里设置 队列长度和最大并发连接数,结果没效果,后来有...

    由用户反应客户端报错,提示the request channel timeout,看意思是超时了,从字面上看在web.config里延长请求时间可以解决,不过我想服务端的方法调用很快的,怎么会出现这个问题,后来想了一下是不是并发数很少,结果测试了一下还真是,在本机上测试通过一时间只处理3个请求,服务器上是9个请求,可能每台电脑配置不一样有点出入没关系这不是重点,然后就上网百度,找了好长时间,很多都是在iis里设置 队列长度和最大并发连接数,结果没效果,后来有文章说还有个重要指标是说最大并发线程数,发现这才是重点,如果说 iis里的队列长度和最大并发连接数是子类,那这个并发线程数就是父类,所以先要设置并发线程数的范围,然后在设置队列长度和并发连接数,队列长度和并发连接数的一个作用是请求数在范围里不会立马返回503错误,而是等待,对用户友好,但是等待的时间长了就会报错提示超时了,原因就出现在这

    那如何设置并发线程数,这里还有个坑,在自己的window家庭版系统里设置是没有用的,没试过专业版不知道效果,在window server服务器上测试有用,提醒一下

    设置方法:在C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config和C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config目录下打开machine.config文件,查找< processModel autoConfig=“true”/> 改为< processModel autoConfig=“false” maxWorkerThreads=“200” minWorkerThreads=“100” /> 设置最大最小线程数即可

    在测试全部立马返回数据,可以可以,分享一下

    展开全文
  • THttprio连接WebService的内存泄漏问题

    千次阅读 2011-09-29 21:09:13
    原来写的一个通过Webservice读取数据的程序,用Delphi7开发的,在服务器上运行一段时间就死掉了,测试后发现是内存泄漏,在任务管理器中平均每次连接大概增长几十K内存,时间运行后CPU占用率很高,程序停
     
    

    THttprio连接WebService的内存泄漏问题。

    原来写的一个通过Webservice读取数据的程序,用Delphi7开发的,在服务器上运行一段时间就死掉了,测试后发现是内存泄漏,在任务管理器中平均每次连接大概增长几十K内存,长时间运行后CPU占用率很高,程序停止响应。在国内网站上搜索,关于Delphi连接Webservice的文章本来就很少,内存泄漏相关的更少。不得已看了几天鸟文,终于找到解决方法。
    先说一下我的webservice吧,连接到.Net2.0的webservice,返回一个Dataset。在网上可以找到很多如何用delphi返回.net Dataset的文章,大概就是xmlprovider读取httprio返回的xml stream,再用clientdataset读取xmlprovider的数据,有两个难点,一个是必须用工具生成数据集格式文件*.xtr,本来xml有schemer描述,估计可能是delphi对xmlprovider还支持的不是很好,或者对中文支持不好,所以要自此生成格式文件.另外的难点是delphi默认的soap格式(忘了是什么版本)是.net1.0,2.0的格式变了,所以直接用网上的帖子教的方式只能获取到schemer,而没有数据,具体方法是webservice的wsdl描述文件中增加:
    initialization
    ...
      InvRegistry.RegisterInvokeOptions(TypeInfo(MonitorServiceSoap),ioDocument);
    这样才能接收到数据,另外httprio需要用UTF-8来传送中文.
    说了这么多,其实当初用了几天时间学习怎么用delphi接收.net dataset,现在觉得是浪费时间,自己编写代码解析xml其实是最快捷的方法,不过为了识别中文,必须把utf-8转成ansistring:
      SetLength(s,SOAPResponse.size);
      SOAPResponse.Read(PChar(s)^,SOAPResponse.Size);
      s:=Utf8ToAnsi(s);
    解析的代码就不写了.
    很多e文帖子说到是InvokeRegistry.pas中TInvokableClass在析构函数中没有释放内存造成,如下:
    destructor TInvokableClass.Destroy;
    begin
      FreeAndNil(FSOAPHeaders);
      inherited Destroy;
    end;
    其实是误导,因为调试的时候发现HttpRio根本没有用到TInvokableClass类.
    还有一个说到是CreateXMLDocument(在XMLDoc.pas),出了问题,Delphi创建XMLDocument按照从高到低的顺序尝试创建,首先创建xml4的版本,如果失败再继续建立低版本的,如果用户机上没有安装msxml4.0,在创建失败后会丢失内存.作者对代码做了一些修改,说实话我也看不清楚为什么会造成泄漏,但是作者也提出只要安装了msxml4.0就没有问题了,实际上我的机器上已经安装了,所以如果你怀疑的话可以追踪进入这个函数看看是不是第一次创建就成功了,来验证自己是否安装了xml4.我不知道应该如何检索自己的xml版本,希望谁知道的话回复一下.
    继续说内存泄漏的问题,问题在于调用webservice方法后返回了某个类型的类,这个类必须手动卸载掉,如下
      mySoap:= GetMonitorServiceSoap(False,httpURL,HTTPRIO1);
      res:=mySoap.webserviceMethord(param);
      FreeAndNil(res);


    附:delphi解析.net Dataset的讲解文章:
    http://community.borland.com/article/0,1410,28631,00.html

    Google的论坛上也有很多直接在Google搜索不到的帖子,在俺差不多绝望的时候终于抓到救命稻草了,^_^
    http://groups.google.com/?hl=zh-CN

     

    展开全文
  • 在使用WebService时,我们通常都会在客户端中设置请求超时的限制,以避免时间的去连接不可用的服务器。在CXF的环境下,客户端可通过两个属性配置超时限制:ConnectionTimeout - WebService以TCP连接为基础,这个...

    在使用WebService时,我们通常都会在客户端中设置请求超时的限制,以避免长时间的去连接不可用的服务器。在CXF的环境下,客户端可通过两个属性配置超时限制:

    • ConnectionTimeout - WebService以TCP连接为基础,这个属性可以理解为TCP握手时的时间设置,超过设置的时间就认为是连接超时.以毫秒为单位,默认是30000毫秒,即30秒。
    • ReceiveTimeout - 这个属性是发送WebService的请求后等待响应的时间,超过设置的时长就认为是响应超时.以毫秒为单位,默认是60000毫秒,即60秒.

       这里可通过两种方式对客户端进行配置:
       一、在spring的配置文件中进行设置。

    1. <? xml   version = "1.0"   encoding = "UTF-8" ?>      
    2.     < beans   xmlns = "http://www.springframework.org/schema/beans"      
    3.          xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"      
    4.          xmlns:jee = "http://www.springframework.org/schema/jee"      
    5.          xmlns:jaxws = "http://cxf.apache.org/jaxws"      
    6.          xmlns:http-conf = "http://cxf.apache.org/transports/http/configuration"       
    7.          xsi:schemaLocation ="http://www.springframework.org/schema/beans    
    8.              http://www.springframework.org/schema/beans/spring-beans-2.0.xsd     
    9.              http://www.springframework.org/schema/jee    
    10.              http://www.springframework.org/schema/jee/spring-jee-2.0.xsd     
    11.              http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd     
    12.              http://cxf.apache.org/transports/http/configuration    
    13.              http://cxf.apache.org/schemas/configuration/http-conf.xsd " >      
    14.         < http-conf:conduit   name = "{WSDL Namespace}portName.http-conduit" >       
    15.            < http-conf:client   ConnectionTimeout = "10000"   ReceiveTimeout = "20000" />     
    16.         </ http-conf:conduit >       
    17.     </ beans >   

       这里需要注意的有几个地方:  
       1、需要指定http-conf名称空间:xmlns:http-conf=http://cxf.apache.org/transports/http/configuration。
       2、指定模式位置: http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd。
       3、http-conf:conduit中的name属性,指定设置生效的服务。name属性由service的namespace、WSDL中的 port name和".http-conduit"组成,如{http://apache.org/hello_world}HelloWorld.http- conduit。如果将name属性设置为“*.http-conduit”,则会对所有服务生效。


       二、通过Java代码进行设置。

    1. Client client = ClientProxy.getClient(port);   
    2. HTTPConduit http = (HTTPConduit) client.getConduit();   
    3. HTTPClientPolicy httpClientPolicy =  new  HTTPClientPolicy();   
    4. httpClientPolicy.setConnectionTimeout( 36000 );   
    5. httpClientPolicy.setAllowChunking( false );   
    6. httpClientPolicy.setReceiveTimeout( 32000 );   
    7. http.setClient(httpClientPolicy);  
    另:也可以对服务器端进行设置spring代码如下:
        <!-- 在服务器端设置响应超时限制,现在使用的是默认值30秒 -->
        <http-conf:destination name="*.http-conduit">
            <http-conf:server ReceiveTimeout="30000" />
        </http-conf:destination>

    ★更详细的配置请参考CXF官方文档:  
      
    http://cwiki.apache.org/CXF20DOC/client-http-transport-including-ssl-support.html  
    展开全文
  • 能年薪50万以上的程序员至少自身有以下特征:工作年限,经验丰富他们的共同特点是:10 年以上的工作经验,在大公司当过螺丝钉,也在创业公司做过技术 leader,有过一两段不算成功的创业经历。这样的程序员无论是去...
  • 连接SAP系统,并获取相关数据使用WinForm很容易就成功了,但是相同的代码移植到WEB中,却总是无法正常连接,时不时的就会有错误出现。解决这个问题花了比较的时间,所以想在这里与大家分享一下我这菜鸟的经验,有...
  • WebService 笔记

    2019-02-11 15:03:42
    webservice笔记详解 1.首先需要提出一个问题:什么是webservice,它具体是做什么的    回答:webservice就是一套服务,主要作用是用来协助不同平台之间的web...开启端口,该通信为长连接通信,很容易被防火墙回收...
  • 背景:  在使用WebService的时候,...那么这里就需要对客服端连接服务器的时间做一个修改.    在Spring+CXF的WebService环境下,客户端有两个时间属性是可配置的,分别是ConnectionTimeout和ReceiveTimeout.
  • 最近面试遇到的问题 1:开闭原则 开放对原来代码的扩展,封闭对...基于TCP的连接方式 B : HTTP请求,http请求分别包括(请求行、消息报头、请求正文) 请求行:Method Request-URI HTTP-Version CRLF Method请
  • 主要在客户端调用时设置 : ...那么这里就需要对客服端连接服务器的时间做一个修改. 在Spring+CXF的WebService环境下,客户端有两个时间属性是可配置的,分别是ConnectionTimeout和ReceiveTimeou...
  • wcf长连接

    2019-10-01 15:13:00
    项目有用到wcf 大体是jquery + webservice + wcf(网页是客户端,wcf是服务端),现在需要服务端往客户端推送信息,本来是用客户端ajax访问 2秒一次访问服务端,后来觉得这办法不是长久之计,所以百度了下,决定使用...
  • 主要在客户端调用时设置 :  ...那么这里就需要对客服端连接服务器的时间做一个修改.   在Spring+CXF的WebService环境下,客户端有两个时间属性是可配置的,分别是ConnectionTimeout和ReceiveTimeout....
  • tomcat长连接、短连接配置及用途

    万次阅读 2015-10-30 15:11:18
     管理页面:多涉及到用户的登录和长时间的频繁操作处理,这些操作都集中在一个session中,建议采用长连接;  接口服务:比如常见的webservice,操作集中在很短时间内完成,不需要对session进行维护,建议采用短...
  • Webservice介绍

    2018-06-30 22:56:00
     1、 Socket协议简单介绍  Socket位于传输层,它是对Tcp/ip协议的实现,包含TCP/UDP,它是所有... A、 Socket通信是长连接的通信,很容易被防火墙拦截  B、 传输的数据一般是字符串 ,可读性不强  C、 soc...
  • 这几天碰到个问题:在weblogic中调用async webservice,如果客户端不等待结果(比如服务器端因为某些原因,web service需要执行很时间),直接退出的话,weblogic server是否保存调用结果,结果保存多时间?...
  • 长连接方案及相关概念、技术1. 概念1.1. socket1.2. websocket1.2.1. websocket 集群方案1.3. webservice1.3.1. 概念1.3.2. 首先,还是看各种文档资料,熟悉一下什么是webservice、为什么、怎么做1.3.3. 然后就是...
  • WebService是用来做什么? WebService是一种跨编程语言和跨操作系统平台的远程调用技术。用于网络通信,多台机器之间的数据交互。 ...2. socket建立是长连接webservice建立的是短连接(调用服

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 180
精华内容 72
关键字:

webservice长连接