Hi David,

Are you thinking of using Node as the server?  Or?

There is definitely some interesting work to be done here.

Todd


On Mon, Nov 3, 2014 at 7:45 AM, David Bovill <david@viral.academy> wrote:

> That sounds very interesting Todd - I worked on a few LiveCode based
> servers as well, and have a project that I would like to begin exploring
> that would use the approach you are talking about - would love to know
> more? is it an open source project - would you like any help working on it?
> ᐧ
>
> On 3 November 2014 15:37, Todd Geist <t...@geistinteractive.com> wrote:
>
> > Thanks Richard.
> >
> > Yeah I wouldn't use it as public facing web server.  Although as node.js
> > points out you can be a fantastic WebServer and be still be single
> > threaded. But node has the advantage of having a non blocking event loop
> > which turns out to solve the first big performance bottleneck, without
> > having to be multi-threaded.
> >
> > I am interested in two things.  One, a way to make APIs for inter app and
> > inter process communication.  And two, a way to build the UI for desktop
> > LiveCode apps with HTML5, CSS, and JS.
> >
> > In my current project, I have a node.js app running in its own thread as
> a
> > separate process, wrapped in side a LiveCode app. LiveCode provides the
> UI,
> > and it is self updating etc.  Now that we have a nice chrome browser
> > object, I could build the UI or parts of the UI in HTML, but for now the
> > LiveCode UI is fine.
> >
> > What I needed was a way for the Node application to take to my LiveCode
> > wrapper app.  This little mchttp.mc should be perfect for that.
> >
> > Todd
> >
> >
> >
> >
> >
> >
> > On Sun, Nov 2, 2014 at 8:55 AM, Richard Gaskin <
> ambassa...@fourthworld.com
> > >
> > wrote:
> >
> > > Todd Geist wrote:
> > > > I am looking for a copy of the http server written in LiveCode.
> > > > it was called revHTTP, and before that it was mcHTTP
> > > >
> > > > anyone have a copy?
> > >
> > > There have been a few floating around over the years.  The first was
> made
> > > by Dr. Raney himself as a way of demonstrating robust socket
> > > communications, posted at metacard.com as mchttd.mc back before the
> turn
> > > of the century.
> > >
> > > Fun as it was when it first came out, over time browsers have become
> more
> > > strict in what they expect in HTTP headers, so that original stack no
> > > longer works as-is.
> > >
> > > Several years ago Andre Garzia wrote a much-expanded version of that,
> > > which may be the one you're referring to.  If it's still around it may
> be
> > > at his site, but I don't believe it's maintained any longer, and Andre
> > > recommends using Apache and NginX for serious development.
> > >
> > > Given that LiveCode doesn't yet support threading, I generally agree
> with
> > > Andre:  Apache does a good job of juggling multiple simultaneous
> requests
> > > by spawning new instances of itself, and spawning new instances of any
> > CGIs
> > > it may use, like LiveCode Server.  This sort of parallelism through
> > > multi-processing is important in a production environment where
> > > simultaneous requests are inevitable and cannot afford to be queued.
> > >
> > > However, not every useful environment is for production of
> > > publicly-accessible works. :)
> > >
> > > I have a VPS and a local server I use only for distributed processing
> and
> > > exploratory development, and along with other tools (I may be able to
> > share
> > > my LiveHive project within a few weeks; more on that later), while most
> > of
> > > my communications with those machines is through SSH (sharing keys
> opens
> > up
> > > so many interesting LiveCode opportunities with unusually strong
> > security)
> > > I've sometimes found it handy to have an HTTP interface available on
> > those
> > > systems for private purposes where I or one of my automated systems are
> > the
> > > only users.
> > >
> > > In those cases. mchttpd.mc would be useful if only it output proper
> > > headers.  So with Andre's permission I backported his header function
> to
> > > mchttpd.mc, and have posted it to my site under a new name to
> > distinguish
> > > the revision:
> > > <http://www.fourthworld.net/lc/mchttpd-4W.zip>
> > >
> > > You're welcome to use it, modify it, and share it.  I've discussed the
> > > revised version with Dr. Raney and at his request it's available under
> > MIT
> > > license.
> > >
> > > Since LiveCode is single-threaded, the range of applicable use-cases
> as a
> > > socket daemon is limited.  It will never bee Apache, and Apache is so
> > > useful and flexible, and has such a vast supporting ecosystem of
> learning
> > > materials and extensions, it's rare that we truly need anything else.
> > >
> > > Moreover, LiveCode Server as a CGI under Apache is a great way to get
> the
> > > best of what each brings to the table.  Multi-processing may carry a
> bit
> > > more overhead than multi-threading but not as much as one might think,
> > and
> > > is so absolutely discrete that it's much easier to code for, and in
> some
> > > contexts more secure.
> > >
> > > In fact, the overhead with LC is roughly on par in my testing with
> > similar
> > > use of PHP, Python, or other scripting engines.  And given that we can
> so
> > > easily make purpose-built stuff I find many instances where LiveCode
> > > Server-based solutions are more scalable than similar but much more
> > > generalized (hence larger) PHP-based systems like Drupal or Joomla.
> > >
> > > All that said, you have an adventurous mind and there's no telling what
> > > you're up to. :)  The updated mchttpd may be a good fit.  I'd be
> > interested
> > > in hearing what you wind up doing with it.
> > >
> > > --
> > >  Richard Gaskin
> > >  Fourth World Systems
> > >  Software Design and Development for the Desktop, Mobile, and the Web
> > >  ____________________________________________________________________
> > >  ambassa...@fourthworld.com                http://www.FourthWorld.com
> > >
> > > _______________________________________________
> > > use-livecode mailing list
> > > use-livecode@lists.runrev.com
> > > Please visit this url to subscribe, unsubscribe and manage your
> > > subscription preferences:
> > > http://lists.runrev.com/mailman/listinfo/use-livecode
> > >
> >
> >
> >
> > --
> > Todd Geist
> >
> >
> > (800) 935-6068
> > _______________________________________________
> > use-livecode mailing list
> > use-livecode@lists.runrev.com
> > Please visit this url to subscribe, unsubscribe and manage your
> > subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-livecode
> >
> _______________________________________________
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>



-- 
Todd Geist


(800) 935-6068
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to