2016-03-31 6 views
1

Ich war mit einem sehr seltsamen Verhalten von Data Service Server konfrontiert (v. 3.5.0).WSO2 DSS und MS SQL Server. Service funktioniert extrem langsam

Ich bereitete ziemlich einfachen Service mit einigen Ressourcen für MS SQL Server RDBMS Datenquelle. Wenn ich eine der Ressourcen mit einfachen Select-Abfrage aufrufen, bekomme ich Antwort nach 6 Sekunden (sechs Sekunden).

Die gleiche Auswahl in MS SQL Server Management Studio gibt Daten nach 15-100 ms zurück.

Dieselbe Auswahl im WSO2 DSS Database Explorer gibt Daten nach max 15 ms zurück.

Die gleiche Auswahl in Netbeans gibt Daten nach maximal 100 ms zurück.

Ich habe versucht, JSTL und Microsoft-Treiber. Das Ergebnis ist das gleiche.

Überall außer DSS-Dienst bekomme ich Antwort in max. 100 Millisekunden. Ergebnis dieser Abfragen ist sehr klein - 6-8 Zeilen mit etwa 10 Spalten.

Was ist der Grund für ein solches Verhalten? Könnte mir jemand helfen?

Antwort

0

Der Grund ist sehr, sehr seltsam. habe ich versucht, eine einfache Abfrage wie:

SELECT a1,a2 .... FROM someView WHERE a1=:parameter 

Wenn Parameter vom Typ STRING ist (ich glaube, wie Parameter für PreparedStatement) Abfrage gibt die Ergebnisse in etwa 4000 Millisekunden (???). Wenn der Parameter vom Typ QUERY_STRING ist, liefert die Abfrage Ergebnisse in 10 Millisekunden (!!!!). Ergebnis ist sehr klein - etwa 10 Zeilen mit 5 Spalten. Die Zeit wurde von net.sf.log4jdbc.DriverSpy gemessen, aber den gleichen Unterschied bekomme ich mit reinen Microsoft Jdbc und Jtds Treibern.

Warum so ein großer Unterschied? 400 mal schneller? Eine Frage blieb:

  • WSO2 DSS Software: Was ist Schuld?
  • JDBC-Treiber?
  • SQL Server?
Verwandte Themen