Download as odp, pdf, or txt
Download as odp, pdf, or txt
You are on page 1of 9

Catalyst

Prasad
What is Catalyst?

Catalyst is an open source web application


framework written in Perl, that closely follows
the model–view–controller (MVC) architecture,
and supports a number of experimental web
patterns.
It is written using Moose, a modern object
system for Perl. Its design is heavily inspired
by such frameworks as Ruby on Rails,
Maypole, and Spring
MVC Architecture

MVC stands for Model, View and Controller.


MVC separates application into three components
- Model, View and Controller.
● Model is a data and business logic.
● View is a User Interface
● Controller is a request handler.
MVC Architecture

Controller handles the user request. Typically,


user interact with View, which in-turn raises
appropriate URL request, this request will be
handled by a controller. The controller renders the
appropriate view with the model data as a
response.
MVC Architecture
MVC Architecture

when the user enters a URL in the browser, it


goes to the server and calls appropriate controller.

Then, the Controller uses the appropriate View


and Model and creates the response and sends it
back to the user
Installing Catalyst

Catalyst::Runtime
Catalyst::Devel
you need to install perl modules Catalyst::Runtime
(sometimes called Catalyst Core) +
Catalyst::Devel (you need this for development of
Catalyst applications) + bunch of its
dependencies (where bunch means another more
than 100 perl modules)
Essential Plugins

● Catalyst::Plugin::ConfigLoader - Load config files of


various types
● Catalyst::Plugin::Session - Session management
Catalyst::Plugin::Session::Store::FastMmap - Store
session with FastMmap - WARNING: can randomly
discard unexpired sessions
● Catalyst::Plugin::Session::Store::File - Store session in
files
Essential Plugins

● Catalyst::Plugin::Session::Store::DBI - Store session


using DBI
● Catalyst::Plugin::Session::State::Cookie - Use cookies
for tracking session state
● Catalyst::Plugin::Static::Simple - Make serving static
pages painless.
● Catalyst::Plugin::AutoRestart - Restart app when
specified memory threshold is reached

You might also like