r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!Uniserve] Creating Uniserve processes

Anton
21-Mar-2005
[166]
Sure. :) I am helping Graham to find the bugs - I do not demand any 
level of service. :)
Dockimbel
21-Mar-2005
[167]
The main issue with current RSP is that it includes a session variables 
synchronization system that's not yet finished. So, the freezing 
issues should be related to that. This system queues the RSP jobs 
if it detects that they use the same session variables. (It garanties 
that your session variable values would not be corrupted by the concurrent 
execution of RSP). It needs more testing and tuning to be fully reliable.
Dockimbel
17-May-2005
[168x4]
Just a quick update info about Cheyenne: I'm working on a new version 
of the RSP module that should fix the previously encountered issues. 
It needs a lot of testing so it will take a few days before I'll 
publish anything.
About UniServe, I'd like to include some protocols/services done 
by Graham in UniServe's distribution (if he agrees). If anyone has 
done some protocols or services implementations that would be useful 
to others, please post some info about them here. I'll be also glad 
to have from UniServe's users some feedback about UniServe's API, 
missing features that you would like to be included, etc...
To answer a question of MikeL, UniServe is not tied in any way to 
LNS.
In fact, from what I know about LNS, they could be implemented above 
UniServe using UniServe's service API.
Graham
17-May-2005
[172]
Sure, include away ... :)
Pekr
17-May-2005
[173]
what are those services, protocols?
Graham
17-May-2005
[174x3]
ummm... thinking hard ...
popd .. which is a pop server
and smtpd which is a smtp server ( receives mail only so far )
Pekr
17-May-2005
[177]
what about your sync protocol? Is that separate one, or part of Uniserve 
architecture?
Graham
17-May-2005
[178x3]
That's separate ...
It was a contracted job that is still not finished ...
Anyway, the smtp service is currently being used to process my mail, 
and it is being picked up by mail clients using the pop service
Pekr
17-May-2005
[181]
hmm, and how is your sync stuff going? Is it reliable already? :-)
Graham
17-May-2005
[182x3]
Well, it works for me .. but that is not adequate amount of testing!
What I want to see with Uniserve is to be able to encrypt binary 
data as it is sent
Your welcome to test the sync service ... if it works, you won't 
need to use IOS :)
Pekr
17-May-2005
[185]
you can encrypt streams yourself, no?
Graham
17-May-2005
[186]
yes .. and no
Pekr
17-May-2005
[187]
OK, I can test .... I will write also some proposal for new kind 
of app, I think some money can be earned that way :-)
Graham
17-May-2005
[188x7]
the uniserve client detects that a "packet" is sent by knowing how 
many bytes are coming ( as in http ), or in knowing at unique end 
sequence
as in "." + crlf
but when you stream a file that is encrypted, the file length is 
now changed
if you encrypt the whole file at the start, it defeats the point 
of streaming which is to save cpu
the replication server and client are at http://www.compkarori.com/coyote/
I have also a smtp protocol that I will use to send mail.  Why not 
use the existing smtp that comes with Rebol?  My one uses Vincent's 
dig to find the email's mail server, and sends it directly.
This bypasses all those problems that some people have with authenticated 
smtp servers.
MikeL
17-May-2005
[195]
From the documentation, "Uniserve's purpose is to offer a simple 
but powerful solution for programming client and servers applications 
that can be combined with View interfaces easily."


The uses for the Asynch that I can come up with are: 1. Backup after 
transactions. 2. Journalizing / reporting after a committed transaction 
update 3. Database access 4. Queuing of side-effect events that are 
not needed for the response in the user interface. 


Aside from that, my understanding is that an synch event could be 
made asynch to allow a lower end server to process the workload.

Does anyone have any other uses from the 4 noted?


Does anyone have a simple sample of tying Uniserve into the View 
interfaces?


Are there any results of driving some load using uniserve versus 
synchronous or other solutions like threaded models?




I am trying to get my head around this a bit more and want to rely 
less on the Doc-likes-it-some-it-must-be-the-right-thing-to-do approach 
that I have used before.


I read the Medusa documentation that Doc refers to but it did not 
lead me to any good application examples.
Graham
17-May-2005
[196]
My replication server/client is using View and Uniserve
MikeL
17-May-2005
[197]
Thanks Graham.  Your response came in while I was composing this.... 
OK I have a simple View interface displaying a uniserve response 
so I follow that.  With a view user interface I can see you could 
get the data needed for multiple tab pages asynchronously and have 
some saving there.   For a script serving out html pages, it could 
be broken up so that asynch go after independent parts but they would 
have to be all emitted to the browser at once.   Is anyone doing 
that with Uniserv or other?
Graham
17-May-2005
[198]
don't understand the scenario .. are u talking about writing a server 
or client application?
MikeL
17-May-2005
[199]
In that ramble, I had both - I have a View client app that I want 
to know how to access Uniservices to make the programming easy and 
I also want to know how to Uniserve if I want to run  a CGI that 
connects to a database, does some credit application calculations, 
and emits html to the client.   For this CGI script, I would get 
both performance improvements and an easier programming model ... 
if I am reading the doc correctly.
Graham
17-May-2005
[200x3]
Didier is using Uniserve on client side for his forum program - enables 
async downloading of new messages.  Look for ( I think ) lecture-forum.r
My webmail using Uniserve's http server (Cheyenne) does database 
connections to retrieve mail http://www.compkarori.co.nz:8001
I have a single odbc connection that is re-used by all the clients 
so that I do not have the overhead of opening/closing a database 
connection  for each transaction.
MikeL
18-May-2005
[203]
Thanks Graham. One like a background refresh of more recently posted 
messages would be a great example.   I looked at Didier's code for 
lecture-forum.   If it uses Uniserve in the version that I located, 
it is very subtle.  I'll ask him if he can illuminate it for me.
Graham
31-Aug-2005
[204]
Open/skip will be very helpful to allow file resume in Cheyenne.
Pekr
1-Sep-2005
[205]
you mean open/seek, no? :-)
Graham
1-Sep-2005
[206]
yeah ...
Terry
6-Oct-2005
[207x3]
Any simple examples on using "stop-at" with uniserve to pick up posted 
data??? Can only dig up "GET" ??
stop-at binary seems to work, but not stop-at string!
Ok, I got it.. seems you need to have the "stop-at" in both the on-new-client, 
AND on-received
Terry
7-Oct-2005
[210]
I have another question though.. with the httpd service, where is 
the actual data?  I get the headers, and i get the length of the 
data, but not the actual binary.. im submitting a form using POST... 
GET is fine.
Graham
7-Oct-2005
[211]
Does lfred know ?
Terry
7-Oct-2005
[212x2]
Not unless you taught him.
when i submit a basic form.. the only binary i receive is "POST / 
HTTP/1.1".. none of the other values?
Graham
7-Oct-2005
[214x2]
[thru "Content-length: " copy post-bytes to crlf | none]
so, it must be post-bytes :)