<div dir="ltr">What are you using to create the XML.. <br><br>I use a library called NativeXML which is quick as XML goes (after optimising their code a bit )<br><br>XML is sluggish to create... <br><br>The secret to best performance is to hand write your XML creator with a TSTringlist because XML is dead simple to create, and then use a proper XML parser to process it..<br>
<br>Things that take 1 second using the proper XML object to read and write, can take about 20ms to generate with a stringlist and basic XML code generator.<br><br><div class="gmail_quote">On Fri, Jul 18, 2008 at 12:27 PM, Robert martin <<a href="mailto:rob@chreos.co.nz">rob@chreos.co.nz</a>> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi Guys<br>
<br>
Just to let you know that I have this working GREAT now. I have<br>
surfaced an 'OnBeforeExecuteStream' event in a customised THTTPRIO. In<br>
this I take the output stream (The 1mb XML file) and zip it as<br>
suggested. On the SOAP server I unzip it on the OnbeforeDispatch.<br>
<br>
This compresses files down to about 40kb. It is wonderful ! although<br>
the slowest part of the process seems to be creating the 1mb XML file.<br>
<br>
Thanks everyone for your help.<br>
<br>
Rob<br>
<div class="Ih2E3d"><br>
<br>
Kyley Harris wrote:<br>
> well to give you an example..<br>
><br>
> I have an object that represents a customer with about 20 fields of<br>
> information... names addresses etc.. I can convert about 5000 to an<br>
> xml structure that compressed to a size that takes a couple of seconds<br>
> on dial up... I get roughly each 1mb of XML transfers using my<br>
> protocol at around 40-60k of actual transferred size using a zip<br>
> compression... for you, using a webservice, you would need to add an<br>
> IIS or APache compression layer into the server, which only works if<br>
> client and server both have it...<br>
><br>
> if you don't need to send 300 at a time.. (i wonder is each sales<br>
> lines items less than 10 etc) if you might be better to break the job<br>
> down into a series of sends, and a batch completion...<br>
><br>
> How I would do it is to send a SOAP packet which then has one field<br>
> inside called DATA.. and data is the compressed zipped transaction<br>
> data.. your webservice can open the soap packet and unzip the DATA<br>
> field with zlib. you will find that your 5mb XML transactions are<br>
> probably only about 100-200k of filesize zipped.<br>
><br>
> On Thu, Jul 17, 2008 at 2:30 PM, Robert martin <<a href="mailto:rob@chreos.co.nz">rob@chreos.co.nz</a><br>
</div><div class="Ih2E3d">> <mailto:<a href="mailto:rob@chreos.co.nz">rob@chreos.co.nz</a>>> wrote:<br>
><br>
> Hi<br>
><br>
> I may be doing this completely wrong but I am sending a set of<br>
> transaction objects, each represents one transaction in a system. It<br>
> has a set of sale lines and a set of payment lines. I am sending<br>
> about<br>
> 300 at a time. I used the word packet meaning 300 as opposed to a<br>
> TCP/IP packet. Sorry about the confusion.<br>
><br>
> Re compression, how would I go about compressing data in this format?<br>
><br>
> Thanks<br>
> Rob<br>
><br>
><br>
><br>
> Kyley Harris wrote:<br>
> > what kind of data are you sending that ends up being 1MB in<br>
> size? How<br>
> > often are the packets being sent.. Thats a huge amount of traffic if<br>
> > its continuous usage..<br>
> > could you indicate what the size of your packet is compressed?<br>
> > compression might not even help...<br>
> ><br>
> ><br>
> ><br>
> ><br>
> ><br>
> > On Thu, Jul 17, 2008 at 1:39 PM, Robert martin <<a href="mailto:rob@chreos.co.nz">rob@chreos.co.nz</a><br>
> <mailto:<a href="mailto:rob@chreos.co.nz">rob@chreos.co.nz</a>><br>
</div><div><div></div><div class="Wj3C7c">> > <mailto:<a href="mailto:rob@chreos.co.nz">rob@chreos.co.nz</a> <mailto:<a href="mailto:rob@chreos.co.nz">rob@chreos.co.nz</a>>>> wrote:<br>
> ><br>
> > Hi<br>
> ><br>
> > We are using Apache. Will look into it. I think for the time<br>
> > being the<br>
> > data size is not too big an issue.<br>
> ><br>
> ><br>
> ><br>
> > Alister Christie wrote:<br>
> > > I don't know if this helps much but some web servers<br>
> (probably just<br>
> > > Apache) support zip compression downloads - they might<br>
> support it<br>
> > > uploads as well - although I have no idea how.<br>
> > ><br>
> > > Alister Christie<br>
> > > Computers for People<br>
> > > Ph: 04 471 1849 Fax: 04 471 1266<br>
> > > <a href="http://www.salespartner.co.nz" target="_blank">http://www.salespartner.co.nz</a><br>
> > > PO Box 13085<br>
> > > Johnsonville<br>
> > > Wellington<br>
> > ><br>
> > ><br>
> > ><br>
> > > Robert martin wrote:<br>
> > ><br>
> > >> Hi<br>
> > >><br>
> > >> We have got the basis of a SOAP application up and<br>
> running. It is<br>
> > >> transferring some data from one machine to a web server<br>
> perfectly.<br>
> > >><br>
> > >> However after sniffing the transaction it seems that each<br>
> > 'packet' of<br>
> > >> data we send is about 1MB. This is only about 1/3 of the<br>
> data<br>
> > we plan<br>
> > >> to send and we anticipate receiving some data also. A small<br>
> > number of<br>
> > >> users will be on dial up. 1Mb would be ok but it seems<br>
> like we<br>
> > might<br>
> > >> end up around 5Mb. This is too much.<br>
> > >><br>
> > >> I know SOAP is a bulky XML protocol but does anyone know<br>
> of ways to<br>
> > >> reduce the XML size (appart from encoding the data as a<br>
> binary<br>
> > file,<br>
> > >> compressing it and sending).<br>
> > >><br>
> > >> We might have to scrap what we have done so far. But asside<br>
> > from the<br>
> > >> file size, the system works great. It would be a shame :-(<br>
> > >><br>
> > >> Thanks<br>
> > >> Rob<br>
> > >> _______________________________________________<br>
> > >> NZ Borland Developers Group - Delphi mailing list<br>
> > >> Post: <a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>><br>
</div></div>> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>>><br>
<div class="Ih2E3d">> > >> Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
> > >> Unsubscribe: send an email to<br>
> <a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>><br>
> > <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a><br>
> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>>> with Subject: unsubscribe<br>
> > >><br>
> > >><br>
> > >><br>
> > ><br>
> > > _______________________________________________<br>
> > > NZ Borland Developers Group - Delphi mailing list<br>
> > > Post: <a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>><br>
</div>> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>>><br>
<div class="Ih2E3d">> > > Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
> > > Unsubscribe: send an email to <a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a><br>
> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>><br>
> > <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a><br>
> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>>> with Subject: unsubscribe<br>
> > ><br>
> > ><br>
> > _______________________________________________<br>
> > NZ Borland Developers Group - Delphi mailing list<br>
> > Post: <a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>><br>
</div>> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>>><br>
<div class="Ih2E3d">> > Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
> > Unsubscribe: send an email to <a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a><br>
> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>><br>
> > <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a><br>
</div><div><div></div><div class="Wj3C7c">> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>>> with Subject: unsubscribe<br>
> ><br>
> ><br>
> ><br>
> ><br>
> > --<br>
> > Kyley Harris<br>
> > Harris Software<br>
> > +64-21-671-821<br>
> ><br>
> ------------------------------------------------------------------------<br>
> ><br>
> > _______________________________________________<br>
> > NZ Borland Developers Group - Delphi mailing list<br>
> > Post: <a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>><br>
> > Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
> > Unsubscribe: send an email to <a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a><br>
> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>> with Subject: unsubscribe<br>
> _______________________________________________<br>
> NZ Borland Developers Group - Delphi mailing list<br>
> Post: <a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a> <mailto:<a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a>><br>
> Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
> Unsubscribe: send an email to <a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a><br>
> <mailto:<a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a>> with Subject: unsubscribe<br>
><br>
><br>
><br>
><br>
> --<br>
> Kyley Harris<br>
> Harris Software<br>
> +64-21-671-821<br>
> ------------------------------------------------------------------------<br>
><br>
> _______________________________________________<br>
> NZ Borland Developers Group - Delphi mailing list<br>
> Post: <a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a><br>
> Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
> Unsubscribe: send an email to <a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a> with Subject: unsubscribe<br>
_______________________________________________<br>
NZ Borland Developers Group - Delphi mailing list<br>
Post: <a href="mailto:delphi@delphi.org.nz">delphi@delphi.org.nz</a><br>
Admin: <a href="http://delphi.org.nz/mailman/listinfo/delphi" target="_blank">http://delphi.org.nz/mailman/listinfo/delphi</a><br>
Unsubscribe: send an email to <a href="mailto:delphi-request@delphi.org.nz">delphi-request@delphi.org.nz</a> with Subject: unsubscribe<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Kyley Harris<br>Harris Software<br>+64-21-671-821
</div>