Académique Documents
Professionnel Documents
Culture Documents
Compiler
Cloud
Group Members:
JASWANT KUMAR
01220703111
KRISHNA NAND MISHRA
CONTENT
OBJECTIVE
INTRODUCTION
PLATFORM USED
SERVER USED
FUNCTIONALITY
CHARECTERISTICS
FUTURE SCOPE AND LIMITATIONS
2
OBJECTIVE
The project aim is to describe a centralized
compiler which avoid the installation of the
compiler on each computer to compile, run,
test and debug the code.
INTRODUCTION
What is CLOUD
COMPILER??
WHY CLOUD
COMPILER??
ARCHITECTURE Cloud
Compiler
CLOUD Architecture
Platform as a
Service (PaaS)
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim
Grance
Infrastructure as a
Service (IaaS)
Software as a Service
(SaaS)
SaaS is a model of software deployment
where an application is hosted as a service
provided to customers across the Internet.
SaaS alleviates the burden of software
maintenance/support
but users relinquish control over software
versions and requirements.
Level 3: configurable
& Multi-Tenant-Efficient
Level 4: Scalable,
Configurable & MultiTenant-Efficient
Source: Frederick Chong and Gianpaolo Carraro, Architectures Strategies for Catching the Long Tail
10
Virtualization
Virtual workspaces:
Implement on Virtual Machines (VMs):
Provide infrastructure API:
App
App
App
App
App
Guest OS
(Linux)
Guest OS
(NetBSD)
Guest OS
(Windows)
VM
VM
VM
Xen
VMWare
UML
Denali
etc.
11
TOMCAT : SERVER
A container for Servlets and JSP
Architecture OF TOMCAT
Tomcat features
LANGUAGE 1:
JAVA
LANGUAGE 2: SQL
LANGUAGE 3: HTML
LANGUAGE 4: C#
PLATFORM1:
Java ServerPages (JSP)
Java Server Pages allow special tags and Java code to be
embedded in HTML files.
(business logic)
servlet
Container
response
Helper
Objects
JSP
Business Tier
request
(presentation logic)
19
Architecture OF JSP
URL
JSP page
request
HTTP request
JSP container properties,JavaBean
compiles to call methodsLibrary
a servlet
HTTP response
response
HTTP page
Browser
DB
Web server
dbc@csit.fsu.edu
20
JSPs implementation
request
*.jsp
jsp parser
JDK
*.java
*.class
implementation
response
PLATFORM2:
STRUTS
WHAT IS STRUTS?
Why struts? Whats wrong with jsp/servlet coding?
Model 2 architecture
Servlet
JSP File
Java function
MVC Architecture
View
Controller
Model
Presentation
Layer
Control
Layer
Application
Logic
Data
Sources
Cloud Compiler
Characteristics
Common Characteristics:
Massive Scale
Resilient Computing
Homogeneity
Geographic Distribution
Virtualization
Service Orientation
Advanced Security
Essential Characteristics:
On Demand Self-Service
Broad Network Access
Rapid Elasticity
Resource Pooling
Measured Service
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim
Grance
28
Opportunities and
Challenges
The use of the cloud provides a number of
opportunities:
It enables services to be used without any
understanding of their infrastructure.
Cloud compiler works using economies of scale:
Data and services are stored remotely but
accessible from anywhere.
Use of cloud compiler means dependence on
others and that could possibly limit flexibility and
innovation:
Security could prove to be a big issue:
There are also issues relating to policy and access:
29
References
MVC
Keep Presentation Layer Separate
from Data Layer
Model-View-Controller Architecture
Model (Struts 2: action)
Represents the Data Objects
Controller:
Java servlet; session Bean
Model:
Entity Bean or other business logic object
JSP
Java Server Pages
What is JSP?
Java Server Pages allow special tags and Java
code to be embedded in HTML files.
INTRODUCTION
The system mainly deals with the creation of
environment for the java , html, sql and other
language to code compile, run, test and debug the
code in the browser using Web-based interfacing of
various compilers.
Virtualization
Virtual workspaces:
An abstraction of an execution environment that can be
made dynamically available to authorized clients by
using well-defined protocols,
Resource quota (e.g. CPU, memory share),
Software configuration (e.g. O/S, provided services).
The proposed system is user friendly, understandable and easy to use and
learn.
It supports many languages like HTML, CSS, JAVASCRIPT, SQL, C#,
JAVA etc and many other languages.
Users need not to download compilers in their desktop.
Allow users to access any program in any language easily.
Allows any number of logged-in users to have a typed, real-time, on-line
compilation more commonly via a network.
It provides on line help and error messages for user ease.
It must be portable.
java
According to Sun, the developer of JAVA, Java Platform,
Enterprise Edition or Java EE is a widely used platform for
server programming in the Java programming language. The
Java platform (Enterprise Edition) differs from the Java
Standard Edition Platform (JavaSE) in that it adds libraries
which provide functionality to deploy fault-tolerant,
distributed, multi-tier Java software, based largely on
modular components running on an application server.
Architecture
JSP
Java Server Pages allow special tags and
Java code to be embedded in HTML files.
JavaServer Pages (JSP) technology
provides a simplified, fast way to create
web pages that display dynamicallygenerated content.
JSP pages share the "Write Once, Run
Anywhere" characteristics of Java
technology.
Using only Servlets difficult to output a html and needs lot of out.printlns
hard to read and clumsy
Using only JSP added scriptlets and implicit objects into jsp - awkward to
see java inside html hard to read and maintain useful if very small
application
Using JSP+ Java beans Code inside bean and jsp to display . Good choice
for small applications. But what if there is need of multiple type of views? Eg:
if there is need of different language display depending on client location? making request to a general servlet, which outputs data according to the
client locale, for same url request, will be good choice Model 2 architecture
evolved.
Using JSP+Servlets+JavaBeans Model 2 architecture
Request made to servlet, servlet does business calculation using simple java
POJO gets the result. Also decides the view and give back the response using
the view to the client.
Here servlet called Controller, Business calculation POJO called Model and
JSP called - View
Uses : the business logic is separated from JSPs and JSP gets displayed
depending upon the result of model (the business function). similar
behavior like all applications above, but the code is more structured now.
Changing business logic will not affect view and vice versa.
getId();
setId(..)
getName()
setName()
How can I
use that
bean?
bean
Servlet
request.setAttribute(userBean, userBean)
JSP
<jsp:useBean ./>
44
ARCHITECTURE Cloud
Compiler
What is Cloud
Computing
46
Install JDK1.5
Download the Jakarta Tomcat
software
Set the JAVA_HOME variable
Change port from 8080 to 80
(optional)
Set the CATALINA_HOME variable
49