Some thoughts:

 

-        The real processing of the data be that in C# or Delphi (encoding to 
json/xml, etc) will probably be in <1ms range. The slight speed advantage of 
native compiled Delphi code over C# is irrelevant compared to the overhead of 
database, network and webserver request handling.



-        The latest versions of IIS (anything version 8+) are quite speedy in 
request processing (catching up a bit with NGINX, etc). My webserver runs on an 
Xeon E3-1240 - which isn’t exactly very powerful hardware. last time I made 
some benchmarks I got 39k req/s for static content (small 174bytes file) and 
9.3k req/s for a simple JSON Rest service (a simple service that returned some 
cities/states for a given country from cached data, 817bytes). That’s on 
default settings before performance tuning anything (which wasn’t necessary in 
my case). I’ve seen benchmarks running a simple service in WCF on a core i5 
processor handling 50k+ req/s … I am sure if you get some proper hardware (xeon 
e7 ?) you can easily get into to 100k+ region.



-        Delphi support for XML (through OmniXML, don’t use the native Delphi 
MSXML) is ok … but still haven’t really found a good JSON library for Delphi. 
The built in functions are a pain to work with (especially if you need to read 
JSON). I wish there is something like FastJSON (a C# library) in Delphi for 
serializing/deserializing. 



-        In my experience, anything web-related is just so much easier to do in 
DotNet. Delphi is great for desktop applications … and DotNet is fantastic for 
web stuff (great platform tied in with IIS, ASP.Net MVC, WCF, etc and heaps of 
awesome third party libraries).  



-        Benchmark your own service, it probably takes you less time to write a 
simple testcase in C# and benchmark it than it took me to respond to this email 
;-/ … 



 

 

Kind regards,



Stefan Müller,
R&D Manager

ORCL Toolbox Ltd. 
Auckland, New Zealand 


P Please consider the environment before printing this email

This message is intended for the adresse named above and may contain privileged 
or confidential information.
If you are not the intended recipient of this message you must not use, copy, 
distribute or disclose it to anyone.

 

From: [email protected] 
[mailto:[email protected]] On Behalf Of John Bird
Sent: Monday, 23 March 2015 2:33 p.m.
To: NZ Borland Developers Group - Delphi List
Subject: Re: [DUG] Delphi vs C# for web services performance

 

Current version (Hospital Java app)  used to have a requirement that the DB 
returns each result within 200ms (fires about 15 simultaneous queries to 
various systems including 2 or 3 to ours).

 

Currently the calls are to stored procedures on a SQL Server cluster to get the 
data.   The web service (Delphi or C#) would put a layer between the 
application and the DB, packaging the query results into XML or JSON and its 
pretty critical to get as close to the direct DB access speed as possible.   At 
times being a hospital system the load is high and the response times are 
crucial.

 

 

 

From: Leigh Wanstead <mailto:[email protected]>  

Sent: Monday, March 23, 2015 11:44 AM

To: NZ Borland Developers Group - Delphi List 
<mailto:[email protected]>  

Subject: Re: [DUG] Delphi vs C# for web services performance

 

Hi John, 

 

What is your requirement for performance?

 

i.e. One million user to get median value 100ms response time?

 

Regards

Leigh

 

On 23 March 2015 at 10:27, John Bird <[email protected]> wrote:

There is a web service we might are looking at implementing.   We could use
either Delphi or C#.  Performance is highly critical.   Will be getting
getting REST request, getting data from a DB. and packaging it into XML or
JSON according to the request.

We have noticed that some C# web services have some latency but  this might
be due to how they are setup on IIS rather than an inherent language issue.

We are wondering if there is any clear reason to do it in Delphi - anyone
have metrics or references etc on performance?

_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: [email protected]
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to [email protected] with 
Subject: unsubscribe

 

  _____  

_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: [email protected]
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to [email protected] with 
Subject: unsubscribe

_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: [email protected]
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to [email protected] with 
Subject: unsubscribe

Reply via email to