2014-06-18 41 views
0

我遇到了非常bizzare性能差異。 我在本地機器上運行負載測試。 2不同的Web應用程序通過彈簧的restTemplate通信(單Tomcat服務器同時運行的網絡應用程序)Spring MVC與RestTemplate - 不明原因的延遲後(負載測試)

以下是在僅100個併發玩家「負載測試」所述的bizzare流速:

A) web應用程序#1使用下列調用:

GameResponseDTO result = template.postForObject(
       URLS.GAME_SERVER_URL + "/GameServer/game/play/", 
       gameRequestDTO, 
       GameResponseDTO.class); 

B)web應用#2控制器臨危該靜止呼叫並返回小於100ms後一個結果對象! C)在9000ms後結果返回到webapp#1,儘管webapp#2的句柄花了不到100ms!

  • 問題:

1)任何想法是什麼原因?記住這兩個應用程序在同一臺機器上(沒有真正的聯網時間)

2)關於我還應該檢查什麼的任何想法?

3)是否有可能這個問題是由@Transactional \編組json響應引起的?如果是的話,我該如何測試它? 謝謝!

+0

有一個類似的問題(不重複)的堆棧溢出:http://stackoverflow.com/questions/17277138/spring-resttemplate-slow-response-time – Ralph

+0

你如何計算webapp2中的100ms(測量的起點和終點是什麼)? –

+0

一旦呼叫到達控制器,我就開始測量,一旦控制器收到來自服務的結果對象,我就立刻結束時間測量。 (控制器 - >服務 - >控制器) – Urbanleg

回答

0

請檢查您的結果對象的大小和是否含有比Java p元其他任何複雜的成員變量

+0

我要發送的對象有2個字段(整數) – Urbanleg