[Dancer-users] perl dance multiple hosting @dotgeek

sawyer x xsawyerx at gmail.com
Thu Aug 16 10:11:13 CEST 2012


An important question would be restarts, IMHO.
Since you're doing this properly (PSGI, FastCGI, Starman, etc.), you'll
have a service (fcgid, Starman, whatever) running all the time, you'll need
to make it possible for the users to restart it.

Also, what about allowing them different web server backends? If you let
them run Twiggy, for example, they could write asynchronous Dancer code
with AnyEvent (which is an asynchronous framework), or using
POEx::Role::PSGIServer they could write asynchronous code with Dancer and
POE or Reflex (other asynchronous frameworks).

On Thu, Aug 16, 2012 at 12:46 AM, gurugeek <gurugeekphp at gmail.com> wrote:

>
> On Wed, Aug 15, 2012 at 11:20 PM, David Precious <davidp at preshweb.co.uk>wrote:
>
>>
>> I generally expect SSH, but that's probably from years of using my
>> own servers; if I was a new developer, I might not need/expect that -
>> especially from a free service :)
>>
>> Obviously professional developers will mostly have their own server/EC2
> instance so they would not be so attracted by this but perhaps to many
> people starting it is a simple way to share your local dancer application
> by simply dropping all the files via SFTP. chrooting ssh is possible but I
> wouldn't want to go that route for now  (but very willing to give SSH
> access to trustable people :) )
>
>>
>>
>> What about database control?  Do users get to connect to MySQL from
>> outside the service to e.g. set up their schema?
>>
>> each user has one MySQL database. We have implemented a quota for the DB
> size just in case.  Within their database they can do what they want.
>
>
>> What about dependencies?  If a user wanted to use a CPAN module which
>> isn't installed, is there any process to install it locally (or request
>> that it be installed) or is it a case of "tough"?  (That would be fair
>> enough for free hosting :) )
>>
>> I think the request to be installed would be the best way for now but I
> did install many modules and will be happy to add more that are commonly
> used so let me know if you see something important missing :)
>
>
> gurugeek at i-781936be:/home/testme/www/public$ cpanlist
> $VAR1 = 'AppConfig';
> $VAR2 = 'Authen::SASL';
> $VAR3 = 'CGI::FormBuilder';
> $VAR4 = 'Class::Inspector';
> $VAR5 = 'Class::Load';
> $VAR6 = 'Class::Singleton';
> $VAR7 = 'Clone';
> $VAR8 = 'DBD::SQLite';
> $VAR9 = 'Dancer';
> $VAR10 = 'Dancer::Plugin::Database';
> $VAR11 = 'Dancer::Plugin::DebugDump';
> $VAR12 = 'Dancer::Plugin::Email';
> $VAR13 = 'Dancer::Plugin::SimpleCRUD';
>  $VAR14 = 'Data::Dump';
> $VAR15 = 'Data::OptList';
> $VAR16 = 'Date::Time';
> $VAR17 = 'DateTime';
> $VAR18 = 'DateTime::Locale';
> $VAR19 = 'DateTime::TimeZone';
> $VAR20 = 'Devel::StackTrace';
> $VAR21 = 'Devel::StackTrace::AsHTML';
> $VAR22 = 'Digest::HMAC';
> $VAR23 = 'Dist::CheckConflicts';
> $VAR24 = 'Email::Address';
> $VAR25 = 'Email::Date::Format';
> $VAR26 = 'Email::MIME';
> $VAR27 = 'Email::MIME::ContentType';
> $VAR28 = 'Email::MIME::Encodings';
> $VAR29 = 'Email::MessageID';
> $VAR30 = 'Email::Send';
> $VAR31 = 'Email::Simple';
> $VAR32 = 'Email::Stuff';
> $VAR33 = 'File::ShareDir';
> $VAR34 = 'File::Slurp';
> $VAR35 = 'File::Type';
> $VAR36 = 'Filesys::Notify::Simple';
> $VAR37 = 'HTML::Table';
> $VAR38 = 'HTML::Table::FromDatabase';
> $VAR39 = 'HTTP::Body';
> $VAR40 = 'HTTP::Server::Simple';
> $VAR41 = 'HTTP::Server::Simple::PSGI';
> $VAR42 = 'Hash::Merge';
> $VAR43 = 'Hash::MultiValue';
> $VAR44 = 'IO::Socket::SSL';
> $VAR45 = 'List::MoreUtils';
> $VAR46 = 'MIME::Types';
> $VAR47 = 'Math::Round';
> $VAR48 = 'Module::Implementation';
> $VAR49 = 'Module::Metadata';
> $VAR50 = 'Module::Runtime';
> $VAR51 = 'Net::SMTP::SSL';
> $VAR52 = 'Net::SMTP::TLS';
> $VAR53 = 'Net::SSLeay';
> $VAR54 = 'Package::DeprecationManager';
> $VAR55 = 'Package::Stash';
> $VAR56 = 'Package::Stash::XS';
> $VAR57 = 'Params::Util';
> $VAR58 = 'Params::Validate';
> $VAR59 = 'Perl';
> $VAR60 = 'Perl::OSType';
> $VAR61 = 'Plack';
> $VAR62 = 'Return::Value';
> $VAR63 = 'Sub::Exporter';
> $VAR64 = 'Sub::Install';
> $VAR65 = 'Sub::Uplevel';
> $VAR66 = 'Template';
> $VAR67 = 'Template::Plugin::Markdown';
> $VAR68 = 'Test::Deep';
> $VAR69 = 'Test::Differences';
> $VAR70 = 'Test::Exception';
> $VAR71 = 'Test::Fatal';
> $VAR72 = 'Test::NoWarnings';
> $VAR73 = 'Test::Output';
> $VAR74 = 'Test::Requires';
> $VAR75 = 'Test::SharedFork';
> $VAR76 = 'Test::TCP';
> $VAR77 = 'Text::Diff';
> $VAR78 = 'Text::Markdown';
> $VAR79 = 'Try::Tiny';
> $VAR80 = 'URI';
> $VAR81 = 'YAML';
> $VAR82 = 'prefork';
>
>
>
> _______________________________________________
> Dancer-users mailing list
> Dancer-users at perldancer.org
> http://www.backup-manager.org/cgi-bin/listinfo/dancer-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.backup-manager.org/pipermail/dancer-users/attachments/20120816/f9049923/attachment.htm>


More information about the Dancer-users mailing list