Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   HTTP-Web Service, was macht bloß mein Service??? HTTP sniffer tool?? (https://www.delphipraxis.net/190353-http-web-service-macht-bloss-mein-service-http-sniffer-tool.html)

Byteteufel 27. Sep 2016 07:11

HTTP-Web Service, was macht bloß mein Service??? HTTP sniffer tool??
 
Hallo zusammen,

ich habe ein Service geschrieben der die RemObjekts Komponenten benutzt. Es funktioniert auch alles. Alles bis auf:

- Der Speicher müllt sich auf der Windows Server 2012 Maschine voll.
- Aller paar Sekunden ruft "jemand" den Service auf, zumindest springt in der Taskleiste die CPU Zeit hoch und der Speicher wächst weiter
- Auf meiner Windows 10 Entwicklungsmaschine verhält sich der Service anders, da gibt es keine CPU Ausschläge, auch der Speicher bleibt konstant bis ich den WEB-Service selber aufrufe.

Nun suche ich eine Tool, welches mir ermöglicht zu sehen, wer meinen Service aufruft. Ich hatte schon mit "Fiddler" experimentiert, jedoch sehe ich nur die lokalen Aufrufe aus meinem Testtool, nicht die, die von extern kommen.

Auch muss es ein Probleme mit dem Speicher geben, es ist ja nicht normal, dass sich dieser voll müllt. Irgendwo muss da ein "Leck" sein. Allerdings finde ich es seltsam, dass sich dieses auf einem Windwos 2012R2 Server anders darstellt, wie auf meiner lokalen Maschine. ich habe auch die Komponente EurekaLog gekauft und eingesetzt. Die zeigt mir beim Speicherleck aber ganz oft Delphi-Interne Routinen an.

Danke für jeden Hinweis, der mich weiter bringt.

Viele Grüße

Axel

DeddyH 27. Sep 2016 07:14

AW: HTTP-Web Service, was macht bloß mein Service??? HTTP sniffer tool??
 
Hast Du es mal mit Wireshark versucht?

himitsu 27. Sep 2016 09:05

AW: HTTP-Web Service, was macht bloß mein Service??? HTTP sniffer tool??
 
Den Service abschalten, einen TIdHTTPServer nehmen und auf den selben Port (80) legen,
dann noch 'ne Dummy-Seite ausliefen und bei den Events bekommst du genau mit, wer sich verbindet.

mjustin 27. Sep 2016 09:45

AW: HTTP-Web Service, was macht bloß mein Service??? HTTP sniffer tool??
 
Zitat:

Zitat von himitsu (Beitrag 1348898)
Den Service abschalten, einen TIdHTTPServer nehmen und auf den selben Port (80) legen,
dann noch 'ne Dummy-Seite ausliefen und bei den Events bekommst du genau mit, wer sich verbindet.

Der TIdHTTPServer kann einen Intercept erhalten der dann in eine Log-Datei schreibt:
Delphi-Quellcode:
aIntercept:TIdServerInterceptLogFile;
...
aIntercept := TIdServerInterceptLogFile.Create;
HttpSrv.Intercept := aIntercept;
aIntercept.FileName := '\indytest_httpserver.log';
Die Intercept Klasse ist in Unit IdServerInterceptLogFile.

(von https://github.com/skelter/Indy/blob...HttpServer.pas)

taveuni 28. Sep 2016 16:18

AW: HTTP-Web Service, was macht bloß mein Service??? HTTP sniffer tool??
 
Zitat:

Zitat von Byteteufel (Beitrag 1348889)
- Aller paar Sekunden ruft "jemand" den Service auf, zumindest springt in der Taskleiste die CPU Zeit hoch und der Speicher wächst weiter

Ein Aufruf alle paar Sekunden ist bei einem Webservice nichts ungewöhnliches. Für den CPU Anstieg bist dann Du verantwortlich. In den RemObjects Servern kannst Du alles nachvollziehen. Verbindungen, Sessions usw. Wie wärs mal mit loggen falls Du nicht debuggen kannst?

Zitat:

Zitat von Byteteufel (Beitrag 1348889)
- Auf meiner Windows 10 Entwicklungsmaschine verhält sich der Service anders, da gibt es keine CPU Ausschläge, auch der Speicher bleibt konstant bis ich den WEB-Service selber aufrufe.

:) Ist irgendwie logisch dass nichts passiert solange der Webservice nicht benutzt wird? Wenn Du diesen dann aufrufst kannst Du demzufolge das Verhalten nachvollziehen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz