PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → [WD20] Whats the fastest way to transmit data with httprequest
[WD20] Whats the fastest way to transmit data with httprequest
Iniciado por guest, 11,ene. 2016 16:59 - 8 respuestas
Publicado el 11,enero 2016 - 16:59
Hi,
I have to rewrite my old WD14 program.
Now all data are transferred via httprequest to the client.

Today I have make some speed tests:

With WD14 (native HFSQL - 20.000 records need 17 seconds)
With WD20 (HTTPrequest - the same 20.000 records need 30 seconds)

I use deserialize /serialize with the "psdBinary" option.

I know thats a lot of overhead because of the http-server in the middle but I am wondering if ther is a smarter (and faster) possibility to trransfer the data ?
Publicado el 13,enero 2016 - 07:37
Hi,

Perhaps you can tell us more about the server
1. type of webservice (soap / rest ) , (apache /IIS) , (.net/java/nodejs)
2. server os/ spec ( cpu / ram). is this dedicate server just to host webservice
3. the server database type
4. size of data per send . (number of records cannot tell)
Publicado el 13,enero 2016 - 07:58
the faster to transfer large data is write to raw file in fixed length (don't use xml) , this way no need deserialize /serialize when read/write . then compress the file before send.
Publicado el 13,enero 2016 - 08:57
Hi CCC,

its completly WX technologoy:

at the client WD20 with structures and httprequest and at the serverside WB20 with AWP websites which receives the request and make somthing with the data like:

hexecutequery(myquery)
fiteoarray(myquery,myarray_of_structures)
serialize(mybuffer,myarray_of_structures)
result mybuffer

How could this done with raw files ? How can I write a array in a file and it is really smaller ?
Publicado el 15,enero 2016 - 20:10
Hi Michael,
I think that 17sec v 30sec is actually VERY GOOD !!!!!
I don't think you will get anything better with httprequest.

I am using WEB Services (developed with WD) for this kind of things and I am not getting better results.

Steven Sitas
Publicado el 15,enero 2016 - 21:59
Hi Steven
unfortunately you're right.

I try to use paralletask how much as I can to keep the good user
experience from my old wd14 program.
Publicado el 16,enero 2016 - 05:26
Hi Michael,

you need to let us know the size per record / per batch (20.000 records) .

if the size per batch is 1K and took 17 seconds , that is not very good
Publicado el 16,enero 2016 - 09:12
Hi CCC,

my example should show the ratio between the nativ access and the access over httprequest.
The absolut size is not so relevant.
If there is no fundamental other method to transfer a query result over html then I must live with that.
My application has go through all firewalls without openening any specific port, thats my dilemma.

If webdev has all the controls and possibilities of windev I would use that ...
Publicado el 16,enero 2016 - 09:30
Hi,

I Would check out ZEROMQ.

Somebody has already take the trouble to get it to work with WinDev WebDev .


Cheers
Tor-Bjarne