2015-03-24 1 views
0

Я создал веб-службы RESTful с использованием Jersy на сервере котом приложения v 8.0 и я вызов веб-службы после того, как раз в 1 секПочему время выполнения спокойной веб-службы при вызове последовательно через 1 секунду уменьшается с тем же запросом URL-адреса?

Вот мой веб-службы RESTful: - временной лаг

@Path("/db") 
public class UserLoginDBRst2 
{ 
DBConnection2 dbCoN; 
Connection conn; 
ResultSet rslt; 
String Iuser="Invalid User"; 
public static double visitplace2; 
@Path("/{latitude}/{longitude}") 
@GET 
@Produces(MediaType.TEXT_PLAIN) 
public String LogicUserValidation(@PathParam ("latitude")String lat,@PathParam ("longitude")String longt) throws SQLException 
{ 
    long startTime = System.nanoTime(); 
    visitplace2=visitplace2+1; 
    String lLoginQuery="Select * from place_giver_table where latitude="+ lat + " and longitude="+longt; 

    dbCoN=new DBConnection2(); 

    try{ 
     conn=DBConnection2.setDBConnection(); 
     rslt=dbCoN.getResultSet(lLoginQuery,conn); 

     if(rslt.next()) 
     { 
      String name=rslt.getString(4); 

      long stopTime = System.nanoTime(); 
      System.out.println(stopTime - startTime); 
      return name + visitplace2; 
     } 
     else 
     { 

      long stopTime = System.nanoTime(); 
      System.out.println(stopTime - startTime); 
      return Iuser + visitplace2; 
     } 
    } 
    catch(Exception e) 
    { 
     System.out.println(e); 
    } 
    finally 
    { 
     if(conn!=null) 
     { 

      conn.close(); 
     } 

    } 

    long stopTime = System.nanoTime(); 
    System.out.println(stopTime - startTime); 
    return Iuser + visitplace2; 
    } 
} 

Ответ: -

0.221560417 
0.017982066 
0.017500935 
0.024799183 
0.016682356 
0.020753906 
. 
. 
. 
. 
0.005201366 
0.005475563 
0.005381554 
0.005084748 
0.005325283 
0.005599511 

Я предполагаю, что есть какая-то проблема с кэш-памятью, которая хранит несколько значений после вызова с таким же URL снова и снова в этом случае я прилагаю мой context.xml а

здесь META-INF \ context.xml: -

<Context antiResourceLocking="false" privileged="true" > 
</Context> 

Надежда, чтобы получить помощь в этом

Заранее спасибо!

+0

По крайней мере, первое падение времени отклика должно происходить из разогрева тайника вашего db. Это не то, что связано с tomcat и webservice. –

+0

Итак, как удалить кеш db, в целом мне не нужно кэшировать, что я делаю, это тестирование веб-службы на сервере приложений? –

+0

Это зависит от вашего db, и я сомневаюсь, что это вообще возможно. Но если вы тестируете свое обслуживание: почему бы просто не издеваться над db? –

ответ

0

Извините за беспокойство, я согласен с Дирком Лачковски, что время уменьшается из-за кеширования, поскольку веб-службы разогреваются, тогда только желательно принимать показания.