By: malcontent ( Malcontent )
Some Feature requests.
2001-01-21 19:10
Hello.
I am the guy who wrote the phpbuilder article about the
socket server. I have been using in production for a
while now and it's been pretty solid. I would love to
see the following enhancements.
1) I looked at the source and it seems to be using the
older .save method to extract the XML. With MDAC 2.6
you can now use streams rather then files. This would
speed things up quite a bit as you would not need to
create a file, save the file and then read the file.
2) Maybe some sort of a compression of the XML. Often I
have to redo my app so that it does not pull in so much
data. It seems to take for ever. I am not sure if this
is due the volume of data that needs to be serialized
or transmitted. If it's the latter then a zlib type
compression might speed things up. I am not sure if the
compression would help that much but it might.
3) I have settled on using the MS XML format but for
other people it might be nice to be able to specify the
XML type on request.
4) It seems dangerous to send the datqabase user name
and the password in plaintext over the wire. I now use
it exclusively behind the firewall but still.
Thanks.
By: malcontent ( Malcontent )
One more.
2001-01-22 17:58
How hard would it be to be able to send multiple
requests on the same socket. Right now each query
requires opening of a new socket.
By: teamfxml ( Team FXML )
RE: Some Feature requests.
2001-01-27 07:38
Hi, and thanks for the great article on PHP Builder. As
for your requests:
1) ODBC Socket Server does need to take advantage of
the stream functionality provided in MDAC 2.5. When
ODBC SS was first written MDAC 2.5 was not yet
released. This change alone should provide a big speed
increase.
2) I hope an upgrade of the Socket Server to MDAC 2.5
should address this problem. I don't think the problem
is the AMOUNT of data transmitted; really most small
GIFs are bigger than what you will ever transfer in an
ODBC Socket Server session; it's the serializing of
this data that takes so long, and this issue is what
MDAC 2.5 will hopefully address.
3) This feature is already in my Server source code for
0.93; it was an oversight on my part to begin with.
4) ODBC Socket Server should always be used behind a
firewall :) In instances where that is impossible,
please use a VPN. If the data is compressed as you
suggest, then encryption will surely be a part of that
solution. However this feature will be the most
time-consuming to implement, so I cannot promise its
inclusion in the next release.
5) Multiple requests over the same socket should be
easy to support; in order to take advantage of this
functionality though, the clients will have to be updated.
Thanks for the feedback. I am still in the process of
moving my site to Source Forge but I am glad you found
me here!
Tyler
By: malcontent ( Malcontent )
RE: Some Feature requests.
2001-01-31 07:52
Since I use this on a production server I would be more
then happy to test it for you. I am not a C programmer
but I was able to follow your code (kudos! that means
something trust me). If you need any help or research
I'd be willing to dig through the mdac site or deja to
collect code for you. I think just using streams ought
to improve scalibility a lot.
As for multiple requests my client is php so it would
be trivial to rewrite it. Right now I have several web
pages that may insert up to a hundred records using
INSERT statements. Unfortunately I have to make a new
socket connection for each insert and I am sure this is
a performance hit. PHP even allows for persitent socket
operations so implementing something like this would be
like database pooling of sorts.
All and all I am very pleased by the stability and
reliability of this software. Keep up the good work.
By: anrapas ( Toni Ramiro )
RE: Some Feature requests.
2001-02-23 12:14
I've downloaded the program and find it very usefull,
but I need to access to several recordsets at a time to
improve speed.
How about opening then using stored procedures (like in
MS-SQL Server) or just joining several queries with ';'
and then using the method .NextRecordset from
recordset's ADO class. To transfer to client program
add a new tag in the XML result that enclose every
recordset (even identifying it with the order of that
recordset in the query).
I'm trying to do it by my self, but I'm newbew at C++
programing and I'm spending so much time that I dont
have right now.
Sorry if my english is not good enought, but I'm
spanish and I'm not used to write in english.