Single PerlResponseHander for Web Application
Single PerlResponseHander for Web Application
am 19.07.2011 00:02:47 von Jerry Pereira
--bcaec52154fdddf1db04a85f28dd
Content-Type: text/plain; charset=ISO-8859-1
Hi,
I am new to mod_perl and would like to get some suggestion on my current
application design.
Following is the design:
Single PerlResponseHandler for my application, all requests will be
submitted to this handler, the handler will then dispatch the request to
appropriate sub-handlers based on the URI path.
Note: My path and handler mapping will be stored in a configuration file.
My configuration will look as follows -
SetHandler modperl
PerlResponseHandler MyPackage::MyHandler
PerlAuthenHandler MyPackage::MyAuthHandler
Psudocode in MyPackage::MyHandler:
------------------------------------
sub handler {
.....
.....
//Get the handler based on path
$sub_handler = getHandler($uripath) //e.g. /app/users
$sub_handler->handle($r, $session);
}
Please let me know of your views. I am not planning to use Catalyst or
existing frameworks as of now. I also thought of using Apache2::Dispatch,
but i believe it requires that each path has its own handler configured in
httpd.conf file (please correct me if I am wrong)
Thanks,
Jerry
--bcaec52154fdddf1db04a85f28dd
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Hi,
I am new to mod_perl and=A0 would like to get some suggestion on=
my current application design.
Following is the design:
Sin=
gle PerlResponseHandler for my application, all requests will be submitted =
to this handler, the handler will then dispatch the request to appropriate =
sub-handlers based on the URI path.
Note: My path and handler mapping will be stored in a configuration file. <=
br>
My configuration will look as follows -
<Location /app>
r> =A0 SetHandler modperl
=A0 PerlResponseHandler MyPackage::=
MyHandler
=A0 PerlAuthenHandler MyPackage::MyAuthHandler
</L=
ocation>
Psudocode in MyPackage::MyHandler:
-------------------------=
-----------
sub handler {
=A0 .....
=A0 .....
<=
br> =A0 //Get the handler based on path
=A0 $sub_handler =3D=
getHandler($uripath) //e.g. /app/users
=A0 $sub_handler->handle($r, $session);
}
Please let me =
know of your views. I am not planning to use Catalyst or existing framework=
s as of now. I also thought of using Apache2::Dispatch, but i believe it re=
quires that each path has its own handler configured in httpd.conf file (pl=
ease correct me if I am wrong)
Thanks,
Jerry
--bcaec52154fdddf1db04a85f28dd--
Re: Single PerlResponseHander for Web Application
am 19.07.2011 00:27:58 von Perrin Harkins
On Mon, Jul 18, 2011 at 6:02 PM, Jerry Pereira wrote:
> Single PerlResponseHandler for my application, all requests will be
> submitted to this handler, the handler will then dispatch the request to
> appropriate sub-handlers based on the URI path.
Sounds like Apache2::Dispatch to me.
> I also thought of using Apache2::Dispatch,
> but i believe it requires that each path has its own handler configured in
> httpd.conf file (please correct me if I am wrong)
You're confused about this one. Eliminating the need to add each
class to httpd.conf is the main reason that Dispatch exists.
- Perrin
Re: Single PerlResponseHander for Web Application
am 19.07.2011 11:55:44 von Dave Hodgkinson
On 18 Jul 2011, at 23:02, Jerry Pereira wrote:
> Please let me know of your views. I am not planning to use Catalyst or =
existing frameworks as of now.=20
Any reason? There are lightweight ones that play well with modern =
approaches
to plugins and multi-server environments.=
Re: Single PerlResponseHander for Web Application
am 19.07.2011 18:55:39 von Jerry Pereira
--bcaec5215ab74c7d2704a86efc2f
Content-Type: text/plain; charset=ISO-8859-1
I agree, but isn't the Handler tightly coupled to the URI? rather if i can
configure the mapping of URI and sub-handlers in a different configuration
file or database, it will be easier to handle URI changes.
On Mon, Jul 18, 2011 at 3:27 PM, Perrin Harkins wrote:
> On Mon, Jul 18, 2011 at 6:02 PM, Jerry Pereira
> wrote:
> > Single PerlResponseHandler for my application, all requests will be
> > submitted to this handler, the handler will then dispatch the request to
> > appropriate sub-handlers based on the URI path.
>
> Sounds like Apache2::Dispatch to me.
>
> > I also thought of using Apache2::Dispatch,
> > but i believe it requires that each path has its own handler configured
> in
> > httpd.conf file (please correct me if I am wrong)
>
> You're confused about this one. Eliminating the need to add each
> class to httpd.conf is the main reason that Dispatch exists.
>
> - Perrin
>
--
Your clothes may be the latest in style but you aint completely dressed
until you wear a smile!
Keep smiling : )
--bcaec5215ab74c7d2704a86efc2f
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
I agree, but isn't the Handler tightly coupled to the URI? rather if i =
can configure the mapping of URI and sub-handlers in a different configurat=
ion file or database, it will be easier to handle URI changes.
On Mon, Jul 18, 2011 at 3:27 PM, Perrin Harkins =
<perrin@elem.com
>> wrote:
0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
On Mon, Jul 18, 2011 at 6:02 PM, Jerry Pereira <
f=3D"mailto:online.jerry@gmail.com">online.jerry@gmail.com> wrote:
r>
> Single PerlResponseHandler for my application, all requests will be
>
> submitted to this handler, the handler will then dispatch the request =
to
> appropriate sub-handlers based on the URI path.
Sounds like Apache2::Dispatch to me.
> I also thought of using Apache2::Dispatch,
> but i believe it requires that each path has its own handler configure=
d in
> httpd.conf file (please correct me if I am wrong)
You're confused about this one. =A0Eliminating the need to add ea=
ch
class to httpd.conf is the main reason that Dispatch exists.
- Perrin
--
Your clothes may=
be the latest in style but you aint completely dressed until you wear a sm=
ile!
Keep smiling : )
--bcaec5215ab74c7d2704a86efc2f--
Re: Single PerlResponseHander for Web Application
am 19.07.2011 19:46:21 von Perrin Harkins
On Tue, Jul 19, 2011 at 12:55 PM, Jerry Pereira wrote:
> I agree, but isn't the Handler tightly coupled to the URI?
Yes.
> rather if i can
> configure the mapping of URI and sub-handlers in a different configuration
> file or database, it will be easier to handle URI changes.
I don't see any advantage to doing it in a different config file or
database over just putting it in httpd.conf. Are you thinking you
would avoid restarts? You'd probably want to restart anyway when you
deploy new code.
- Perrin
Re: Single PerlResponseHander for Web Application
am 19.07.2011 21:21:52 von Perrin Harkins
On Tue, Jul 19, 2011 at 2:02 PM, Jerry Pereira wrote:
> Thats right, i was thinking of avoiding restarts and having single place for
> mapping URIs to classes.
You can get that to some degree if you use Apache2::Reload and avoid
doing anything too strange in your code. The thing is, your best
defense against memory bloat is copy-on-write, and that will get
crushed if you do a lot of reloading code without a restart. Maybe
not an issue for you, depending on how big your site is.
- Perrin