lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lilypond Server


From: Joshua KooOOoOOo
Subject: Re: Lilypond Server
Date: Sun, 13 Mar 2005 11:40:45 +0800

>Árpád
Hi,

>and handled at server-side. Most browsers support this, so all
>you need on client side is a webbrowser (even without java).

I have thought about using HTTP upload method too. I see two reasons, 1. it is 
compatible with web browsers, and 2. As a webservice, it should penentrate most 
firewalls.

My motivations for the Lilypond Server is not only for public access but also 
for an easy bridge for LilypondTool to a coLinux machine.

Possibles of disadvantages of HTTP upload method I think of is 1) Slower 2) 
File Size Limit 3) More java coding on the client side.

However, it doesnt mean I against the web-based LilyPond. For now I think that 
lets say you are on windows, you only need a LilyTool for jEdit, (with has all 
the wizards and synatax colouring), it will be simple for you to use Lilypond. 
Lets say on a Linux machine which have problems installing Lilypond, perphaps a 
small python client script could be ran like "python LilyPondClient.py foo.ly". 

Of course, if you can come up with php for Lilypond, I would like to change 
like LilyTool to implement the HTTP upload method. But I wonder how you will 
implement the php? Will you call the Lilypond process stright from php 
[proc_open()]? or would you open a socket to connect to a Lilypond Server 
[fopen() or socket_create()]

For a ASCII representation
Key: L=Lilypond, S=Lilypond Server, M= Lilypond Server & Manager, P=PHP Webby, 
W=Webpage User, T=LilyTool user

# Scenario 1

L <-- S -->  M <-- P <-- W
L <-- S -/          \-- T

Here, the Manager itself could be a Lilypond Server, but also could delicate 
jobs to other Lilypond Servers and acting like a relay or proxy. Clients could 
connect to this manager and webbase users use the webpage which uses the 
manager.

# Scenario 2

L <--------\
L <-- S <-- P <-- W
L <-- S <-/      \-- T

This case, the php webbie acts as a lilypond server (and manager for 
clustering).

Anyway, these are what I have in mind, I not a good programmer or designer, so 
this mostly have flaws.

>This way or the other, the main question is: Who is willing to provide
>bandwith for (at least) a proof-of-concept site? I consider this a superb
>way to demonstrate for many people what can be done with LilyPond.
Or, do you mean a test machine as well? My school gave me a P2 300mhz pc, 64Mb, 
but its harddisk is not working and cd-rom does not boot up. I might try to 
fixing it and setting it up as a POC, and also if my upload speed of 10KBytes/s 
at home wont be too much of a disappointment.

>On the security: the server could be on a unix system, where php/lilypond
>user doesn't have read access to the whole directory tree, but it is kept
>restricted in a dedicated place. Doesn't it eliminates the security danger
>Berti mentioned? Could somebody explain me please, where I am missing the
>obvious?

I think its mentioned before there's the danger of having scheme code, like "rm 
-rf /". Of course, i think it wouldnt be a problem if a Server is used just to 
bridge from the coLinux guest to host machine, but it would be a trouble on the 
public access server. 

If the server is not run as root, will the scheme run codes as sudo or root? If 
there's really a need, then lilypond might have to be jailed and put in a 
straight-jacket (meaning the shell and safe mode ;p)

>Ps. Joshua, all those ideas about putting computing power behind the service
>are fantastic. Let's make it let's make it ;-)

Thanks for your comments, but I think I not capable in lots of stuff like 
programming or using linux so I think I would have much to learn :)

Joshua



reply via email to

[Prev in Thread] Current Thread [Next in Thread]