From ron at flownet.com Sun Sep 1 23:04:59 2013 From: ron at flownet.com (Ron Garret) Date: Sun, 1 Sep 2013 16:04:59 -0700 Subject: Using screen to put CCL/HT in production as a web server Message-ID: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> I'm about to put a CCL web app (using Hunchentoot) into production. Up to now I've been taking advantage of all the interactive goodness that the IDE offers, but of course that will mostly go away once the app is deployed. But it occurred to me that I could use the "screen" program to keep a REPL around for debugging the live app. My question is: is this a wise thing to do? Are there potential unexpected negative consequences of deploying an application this way? Security holes? Possible crashes? Has anyone tried this? This is one set of lessons I'd rather not learn the hard way. Thanks, rg From swmckay at gmail.com Mon Sep 2 02:17:28 2013 From: swmckay at gmail.com (Scott McKay) Date: Mon, 2 Sep 2013 07:47:28 +0530 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: <5223F0B1.6030602@jkcunningham.com> References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> <5223D322.9060907@jkcunningham.com> <5223F0B1.6030602@jkcunningham.com> Message-ID: On Sep 2, 2013, at 7:28 AM, Jeffrey Cunningham wrote: > > On 09/01/2013 05:00 PM, Lu?s Oliveira wrote: >> On Mon, Sep 2, 2013 at 12:52 AM, Jeffrey Cunningham >> wrote: >>> Why not just connect to it through swank? I do that all the time with my >>> remote webserver. SSH into the server, bring up emacs and slime-connect and >>> you're running under the live instance. >> Or even better, open an ssh tunnel into the server and slime-connect >> from the comfort of your local Emacs. >> > I was going to say that, but I've only done it a few times. While I much prefer using my local emacs I have to be careful modifying and compiling on my local source getting out of sync with the remote source. > So I've been working as the CTO of a company called Cleartrip for about a year. I've been trying to make "continuous deploys" work. One thing about this in the Java+Ruby environment we're using (not my call, pre-existing stack) is that packaging up these constant little incremental changes that have to be rolled put to 10s or 100s of servers is not trivial. It seems to me that it should be possible to build a secure Slime solution that "fans out" incremental changes to a whole (sub-)farms of servers. A CL library build on top of Slime that manages continuous deployment would be pretty awesome. Does it already exist? -------------- next part -------------- An HTML attachment was scrubbed... URL: From fahree at gmail.com Mon Sep 2 10:52:07 2013 From: fahree at gmail.com (=?ISO-8859-1?Q?Far=E9?=) Date: Mon, 2 Sep 2013 12:52:07 +0200 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> Message-ID: On Mon, Sep 2, 2013 at 11:29 AM, Arthur Lemmens wrote: > Ron Garret wrote: > >> I'm about to put a CCL web app (using Hunchentoot) into production. Up to >> now I've been taking advantage of all the interactive goodness that the IDE >> offers, but of course that will mostly go away once the app is deployed. >> But it occurred to me that I could use the "screen" program to keep a REPL >> around for debugging the live app. My question is: is this a wise thing to >> do? Are there potential unexpected negative consequences of deploying an >> application this way? Security holes? Possible crashes? Has anyone tried >> this? > > > I've been using "screen" wrapped around Lispworks REPLs for many years > without any problems. I mostly use the REPL for loading patches while > the server is running. I do most of my debugging in a separate test > version that doesn't interact with the production database and is not > visible to the outside world. > Back in the bad old days, araneida+cliki was typically deployed using detachtty, which can be thought of as a very reduced variant of screen specialized for demonificaion. These days, I use screen for a variety of daemons. ??? ? Fran?ois-Ren? ?VB Rideau ?Reflection&Cybernethics? http://fare.tunes.org It?s amazing that the amount of news that happens in the world everyday always just exactly fits the newspaper. From css at uxul.de Sun Sep 1 23:17:41 2013 From: css at uxul.de (Christoph-Simon Senjak) Date: Mon, 02 Sep 2013 01:17:41 +0200 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> Message-ID: <5223CB15.2010701@uxul.de> Am 02.09.2013 01:04, schrieb Ron Garret: > I'm about to put a CCL web app (using Hunchentoot) into production. Up to now I've been taking advantage of all the interactive goodness that the IDE offers, but of course that will mostly go away once the app is deployed. But it occurred to me that I could use the "screen" program to keep a REPL around for debugging the live app. My question is: is this a wise thing to do? Are there potential unexpected negative consequences of deploying an application this way? Security holes? Possible crashes? Has anyone tried this? This is one set of lessons I'd rather not learn the hard way. > > Thanks, > rg > > On my blog (uxul.de) I did exactly this, with SBCL. However, I ran into the problem that if something elementary that Hunchentoot does not catch goes wrong (OOM, etc.), the REPL of SBCL will drop me into ldb, instead of just stopping (so I can restart it externally). As I do not know how to prevent this, I do not use the REPL anymore. (As a side note, I prefer using tmux instead of screen. It comes from the OpenBSD world and is _really_ stable.) MfG CSS From jeffrey at jkcunningham.com Sun Sep 1 23:52:02 2013 From: jeffrey at jkcunningham.com (Jeffrey Cunningham) Date: Sun, 01 Sep 2013 16:52:02 -0700 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> Message-ID: <5223D322.9060907@jkcunningham.com> On 09/01/2013 04:04 PM, Ron Garret wrote: > I'm about to put a CCL web app (using Hunchentoot) into production. Up to now I've been taking advantage of all the interactive goodness that the IDE offers, but of course that will mostly go away once the app is deployed. But it occurred to me that I could use the "screen" program to keep a REPL around for debugging the live app. My question is: is this a wise thing to do? Are there potential unexpected negative consequences of deploying an application this way? Security holes? Possible crashes? Has anyone tried this? This is one set of lessons I'd rather not learn the hard way. > > Thanks, > rg > > Why not just connect to it through swank? I do that all the time with my remote webserver. SSH into the server, bring up emacs and slime-connect and you're running under the live instance. --Jeff -------------- next part -------------- An HTML attachment was scrubbed... URL: From ron at flownet.com Sun Sep 1 23:56:48 2013 From: ron at flownet.com (Ron Garret) Date: Sun, 1 Sep 2013 16:56:48 -0700 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: <5223D322.9060907@jkcunningham.com> References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> <5223D322.9060907@jkcunningham.com> Message-ID: <9539DF6D-41B4-40B1-AC0C-44CD16A585AC@flownet.com> On Sep 1, 2013, at 4:52 PM, Jeffrey Cunningham wrote: > Why not just connect to it through swank? Because I don't use Swank (I prefer the CCL IDE) so I'd have to climb a learning curve. That's an unacceptable risk this close to launch. rg From xach at xach.com Sun Sep 1 23:25:07 2013 From: xach at xach.com (Zach Beane) Date: Sun, 01 Sep 2013 19:25:07 -0400 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: <5223CB15.2010701@uxul.de> (Christoph-Simon Senjak's message of "Mon, 02 Sep 2013 01:17:41 +0200") References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> <5223CB15.2010701@uxul.de> Message-ID: <87a9jw3z1o.fsf@zpobx.site.sys> Christoph-Simon Senjak writes: > Am 02.09.2013 01:04, schrieb Ron Garret: >> I'm about to put a CCL web app (using Hunchentoot) into production. >> Up to now I've been taking advantage of all the interactive goodness >> that the IDE offers, but of course that will mostly go away once the >> app is deployed. But it occurred to me that I could use the "screen" >> program to keep a REPL around for debugging the live app. My >> question is: is this a wise thing to do? Are there potential >> unexpected negative consequences of deploying an application this >> way? Security holes? Possible crashes? Has anyone tried this? >> This is one set of lessons I'd rather not learn the hard way. >> >> Thanks, >> rg >> >> > > On my blog (uxul.de) I did exactly this, with SBCL. However, I ran > into the problem that if something elementary that Hunchentoot does > not catch goes wrong (OOM, etc.), the REPL of SBCL will drop me into > ldb, instead of just stopping (so I can restart it externally). As I > do not know how to prevent this, I do not use the REPL anymore. For what it's worth, you can disable it with this: (sb-alien:alien-funcall (sb-alien:extern-alien "disable_lossage_handler" (function sb-alien:void))) You can also build a version of SBCL with ldb omitted with some build-time configuration. Zach From jeffrey at jkcunningham.com Mon Sep 2 01:58:09 2013 From: jeffrey at jkcunningham.com (Jeffrey Cunningham) Date: Sun, 01 Sep 2013 18:58:09 -0700 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> <5223D322.9060907@jkcunningham.com> Message-ID: <5223F0B1.6030602@jkcunningham.com> On 09/01/2013 05:00 PM, Lu?s Oliveira wrote: > On Mon, Sep 2, 2013 at 12:52 AM, Jeffrey Cunningham > wrote: >> Why not just connect to it through swank? I do that all the time with my >> remote webserver. SSH into the server, bring up emacs and slime-connect and >> you're running under the live instance. > Or even better, open an ssh tunnel into the server and slime-connect > from the comfort of your local Emacs. > I was going to say that, but I've only done it a few times. While I much prefer using my local emacs I have to be careful modifying and compiling on my local source getting out of sync with the remote source. -------------- next part -------------- An HTML attachment was scrubbed... URL: From alemmens at xs4all.nl Mon Sep 2 09:29:31 2013 From: alemmens at xs4all.nl (Arthur Lemmens) Date: Mon, 02 Sep 2013 11:29:31 +0200 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> Message-ID: Ron Garret wrote: > I'm about to put a CCL web app (using Hunchentoot) into production. Up > to now I've been taking advantage of all the interactive goodness that > the IDE offers, but of course that will mostly go away once the app is > deployed. But it occurred to me that I could use the "screen" program > to keep a REPL around for debugging the live app. My question is: is > this a wise thing to do? Are there potential unexpected negative > consequences of deploying an application this way? Security holes? > Possible crashes? Has anyone tried this? I've been using "screen" wrapped around Lispworks REPLs for many years without any problems. I mostly use the REPL for loading patches while the server is running. I do most of my debugging in a separate test version that doesn't interact with the production database and is not visible to the outside world. Arthur From bhyde at pobox.com Wed Sep 4 18:25:37 2013 From: bhyde at pobox.com (Ben Hyde) Date: Wed, 4 Sep 2013 14:25:37 -0400 Subject: [Openmcl-devel] Using screen to put CCL/HT in production as a web server In-Reply-To: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> Message-ID: <7A25C7A2-E4D7-4FE3-8A9D-557ED43536F7@pobox.com> On Sep 1, 2013, at 7:04 PM, Ron Garret wrote: > I'm about to put a CCL web app (using Hunchentoot) into production. Up to now I've been taking advantage of all the interactive goodness that the IDE offers, but of course that will mostly go away once the app is deployed. But it occurred to me that I could use the "screen" program to keep a REPL around for debugging the live app. My question is: is this a wise thing to do? Are there potential unexpected negative consequences of deploying an application this way? Security holes? Possible crashes? Has anyone tried this? This is one set of lessons I'd rather not learn the hard way. I'm currently using "emacs --daemon" s a wrapper for this kind of thing. Crazy eh? From luismbo at gmail.com Mon Sep 2 00:00:41 2013 From: luismbo at gmail.com (=?ISO-8859-1?Q?Lu=EDs_Oliveira?=) Date: Mon, 2 Sep 2013 01:00:41 +0100 Subject: Using screen to put CCL/HT in production as a web server In-Reply-To: <5223D322.9060907@jkcunningham.com> References: <6D58F605-1134-459A-96C0-0A5821595F65@flownet.com> <5223D322.9060907@jkcunningham.com> Message-ID: On Mon, Sep 2, 2013 at 12:52 AM, Jeffrey Cunningham wrote: > Why not just connect to it through swank? I do that all the time with my > remote webserver. SSH into the server, bring up emacs and slime-connect and > you're running under the live instance. Or even better, open an ssh tunnel into the server and slime-connect from the comfort of your local Emacs. -- Lu?s Oliveira http://kerno.org/~luis/