Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 54cac1c2268db633d66eeff1b4faa585 > files > 58

frepple-doc-0.8.1-3.fc15.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  <title>Frepple / User interface and database layer </title>
  <link rel='stylesheet' href='../styles.css' type='text/css' />
  <!--PageHeaderFmt-->  
</head>
<body>
<div id="container">

<div id="menubar">
  
<div id="logo" align="center">
<br/><img src='../frepple.bmp' alt="frepple" /><br/>
<a href='http://www.frepple.com/'>
<strong>a Free<br/>Production Planning<br/>Library</strong>
</a></div>
<div id="menu">
<br/>
<h3><a href='../Main/HomePage.html'>Main</a></h3>
<h3><a href='../UI/Main.html'>User Manual</a></h3>
<h3><a href='../Tutorial/Main.html'>Tutorial</a></h3>
<h3><a href='Main.html'>Reference Manual</a></h3>
<h3><a href='../Main/FAQ.html'>FAQ</a></h3>
<h3><a href='../reference/index.html'>C++ API</a></h3>
<br/><div>
</div>  
</div>
</div>

<div id="content">
<br/>
<!--PageText-->
<div id='wikitext'>
<p><a class='wikilink' href='../Main/HomePage.html'>Main</a> &gt; <span class='wikitrail'><a class='wikilink' href='Main.html'>Reference Manual</a> > <a class='wikilink' href='Overview.html'>Introduction</a> > <a class='wikilink' href='OverviewArchitecture.html'>Architecture</a> > <a class='selflink' href='OverviewDjango.html'>User interface and database layer</a></span>
</p>
<p class='vspace'>A planning solution consist of much more than the core solver algorithms... <br />It includes data maintenance, reporting, data integration to other systems, workflows, job schedules, etc. <br />A front-end for the core library is required to meet these requirements with a maximum of flexibility.
</p>
<p class='vspace'>FrePPLe includes a user interface based on the Django web application framework. The user interface can be deployed in different architectures, depending on the requirements. With increasing levels of scalability and performance, we can basically distinguish the following three main scenario's.
</p>
<div class='vspace'></div><h2>Standalone/all-in-one application</h2>
<div><span class='rfloat'><img src='../uploads/Frepple/djangostandalone.png' alt='' title='' /></span></div>
<p class='vspace'>The windows installer includes a standalone application.<br />The application is an all-in-one installation containing:
</p><ul><li>Python interpreter and Python libraries.
</li><li>Web server CherryPy, written in python.
</li><li>Django web application.
</li><li>Database SQLite, which is part of the Python standard library.
</li></ul><p class='vspace'>This one-stop installation package (&lt; 10MB download) makes it very easy to get started with frePPLe, as a tutorial or for educational purposes. It is also suitable to deploy frePPLe as an application to a user's PC. 
</p>
<p class='vspace'>This configuration can only be recommended for single-user access to small models.
<br clear='all' />
</p>
<div class='vspace'></div><h2>Python application and a database</h2>
<div><span class='rfloat'><img src='../uploads/Frepple/djangopycherry.png' alt='' title='' /></span></div>
<p class='vspace'>The SQLite database does an excellent job for relatively small datasets. But for the complex reporting queries used by frePPLe it is no match for the "real" database applications.<br />As a first measure for increasing scalability and performance of the application, the database needs to be separated out. FrePPLe supports the Oracle, MySQL and postgreSQL databases.
</p>
<p class='vspace'>With this configuration a few users can simultanenously access frePPle.
<br clear='all' />
</p>
<div class='vspace'></div><h2>Apache web server with mod_wsgi and a database</h2>
<div><span class='rfloat'><img src='../uploads/Frepple/djangomodwsgi.png' alt='' title='' /></span></div>
<p class='vspace'>This is the preferred deployment option for production servers!
</p>
<p class='vspace'>Apache is now used as the web server. Using the mod_wsgi module it executes the Django python code.<br />The Apache server assures excellent scalability, performance and security.
</p>
<p class='vspace'>Medium-volume sites will typically have a single Apache web server and a single database server.<br />High-volume sites with plenty of concurrent users can deploy additional components to guarantee the right scalability and availability of the system: memory caches, separated web servers for static and dynamic content, replicated databases, load balanced web servers, enterprise authentication such as LDAP, ...
<br clear='all' />
</p>
</div>

<!--PageFooterFmt-->
<!--HTMLFooter-->
</div></div>
</body>
</html>