于吉吉的技術博客

          建造高性能門戶網

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            65 隨筆 :: 6 文章 :: 149 評論 :: 0 Trackbacks

          web service

               摘要: 由于歷史原因,幾個項目都選用hessian作為web service的實現方式,hessian的確是非常輕量級,基于http協議進行傳輸,通過自定義的串行化機制將請求信息進行序列化,以二進制傳輸節省了不少的開銷,速度跟socket差不多.客戶端和服務器發起和接收請求都是通過spring提供的hessian api進行請求和接收,但是在服務端中并沒有記錄和控制遠端ip地址和主機的信息,所以需要對源碼進行一些重寫

          對org.springframework.remoting.caucho.HessianServiceExporter進行重寫

          /**
          * 重寫HessianServiceExporter.handleRequest(),攔截獲取遠端調用信息
          * @author chenyz
          *
          */
          public class HouseHessianServiceExporter extends HessianServiceExporter {

          private static S  閱讀全文
          posted @ 2010-12-21 16:05 陳于喆 閱讀(3030) | 評論 (0)  編輯

               摘要: 目前幾套系統中主要使用的hessian進行遠程調用webservice服務的有hessian的 HessianProxyFactory(com.caucho.hessian.client.HessianProxyFactory)和 spring的 HessianProxyFactoryBean(org.springframework.remoting.caucho.HessianProxyFactoryBean).

          1.HessianProxyFactory
          查看HessianProxyFactory源碼后發現,hessian在創建http請求連接webservice服務并沒有對連接超時進行相關的參數設置,所以當網絡出現問題就會造成整個hessian處理的阻塞,進而阻塞整個線程后續的處理
          以下是HessianProxyFactory對連接處理的源碼

          protected URLConnection openConnection(URL url)
          throws IOException
          {
          URL  閱讀全文
          posted @ 2010-12-16 14:46 陳于喆 閱讀(12040) | 評論 (11)  編輯

          主站蜘蛛池模板: 化德县| 淅川县| 油尖旺区| 和龙市| 视频| 南乐县| 察哈| 阿勒泰市| 阜平县| 镇安县| 宕昌县| 梅州市| 株洲市| 陆丰市| 林口县| 金昌市| 原平市| 舞阳县| 张家川| 广饶县| 体育| 晋江市| 江安县| 怀柔区| 常熟市| 桃江县| 大新县| 广平县| 池州市| 广丰县| 洛川县| 剑川县| 盐边县| 德保县| 四会市| 昆山市| 肇源县| 焉耆| 调兵山市| 贵溪市| 大石桥市|