SlideShare a Scribd company logo
Cloud Compiler 
Cloud Compiler 
Group Members: 
JASWANT KUMAR 01220703111 
KRISHNA NAND MISHRA 03020703111 
VIPIN KUMAR 04020703111 
RAHUL VASHISTH 05520703111 
Mentor Name and Designation 
Mr. Aditya Tandon (asst. Prof)
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 
7
Cloud Service Models 
8 
Software as a 
Service (SaaS) 
Platform as a 
Service (PaaS) 
Infrastructure as a 
Service (IaaS) 
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance
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. 
9
SaaS Maturity Model 
Level 1: Ad-Hoc/Custom – 
One Instance per customer 
Level 2: Configurable per 
customer 
Level 3: configurable & 
Multi-Tenant-Efficient 
Level 4: Scalable, Configurable 
& Multi-Tenant-Efficient 
10 Source: Frederick Chong and Gianpaolo Carraro, “Architectures Strategies for Catching the Long Tail”
Virtualization 
• Virtual workspaces: 
• Implement on Virtual Machines (VMs): 
• Provide infrastructure API: 
• . 
11 
App App App App App 
Virtual Machine Monitor (VMM) / Hypervisor 
Hardware 
Guest OS 
(Linux) 
Guest OS 
(NetBSD) 
Guest OS 
(Windows) 
VM VM VM 
Xen 
VMWare 
UML 
Denali 
etc.
TOMCAT : SERVER 
A container for Servlets and JSP 
• Tomcat is a Servlet container (Web server that 
interacts with Servlets) developed under the Jakarta 
Project of Apache Software Foundation 
• Tomcat implements the Servlet and the Java Server 
Pages (JSP) specifications of Sun Microsystems 
• Tomcat is an open-source, non commercial project 
– Licensed under the Apache Software License 
• Tomcat is written in Java (OS independent) 
12
Architecture OF TOMCAT
Tomcat features 
• Tomcat Installation and Configuration 
• Tomcat 5.5 Manager 
• Tomcat and Eclipse
LANGUAGE 1: 
JAVA
LANGUAGE 2: SQL
LANGUAGE 3: HTML
LANGUAGE 4: C#
• Java Server Pages allow special tags and Java code to be embedded in HTML 
files. 
• Presents dynamic content to users 
• Handles the presentation logic in an MVC architecture 
19 
Container 
(business logic) 
servlet 
JSP 
request 
response 
Helper 
Objects 
(presentation logic) 
Business Tier 
PLATFORM1: 
Java ServerPages (JSP)
Architecture OF JSP 
JSP page 
request 
JSP container 
compiles to 
a servlet 
URL 
response 
dbc@csit.fsu.edu 20 
HTTP request 
HTTP response 
Web server 
JavaBean 
Library 
DB 
properties, 
call methods 
HTTP page 
Browser
JSP’s implementation 
*.class 
request 
response 
jsp parser 
JDK 
*.jsp *.java 
implementation
PLATFORM2: 
STRUTS 
WHAT IS STRUTS? 
Why struts? What’s wrong with jsp/servlet coding?
why is Struts so useful? 
Structural separation of data presentation and business logic 
• Struts provides a Controller that manages the control flow 
• easy localization (internationalization is more important than ever) 
• based on standard Java technologies (JSP, Servlets, JavaBeans) 
• open-source 
•every vivid open-source project with growing developer community
Struts Framework Features 
• Model 2 -MVC Implementation 
• Internationalization(I18N) Support 
• Rich JSP Tag Libraries 
• Annotation and XML configuration options 
• POJO-based actions that are easy to test 
• Based on JSP, Servlet, XML, and Java 
• Less xml configuration 
• Easy to test and debug with new features 
• Supports Java’s Write Once, Run Anywhere Philosophy 
• Supports different model implementations (JavaBeans, EJB, etc.) 
• Supports different presentation implementations( JSP, XML/XSLT, etc)
Struts 2.0 uses Model 2 MVC pattern 
Model 2 architecture 
Servlet 
Java function 
JSP File
MVC Architecture 
View 
Controller 
Model
Designing Web Applications 
• High Level Architecture 
Presentation 
Layer 
Control 
Layer 
Application 
Logic 
Data 
Sources
Cloud Compiler Characteristics 
28 
Common Characteristics: 
MMaassssivivee S Sccaalele RReessiliileienntt C Coommppuuttiningg 
VVirirttuuaalilzizaattioionn SSeerrvvicicee O Orrieiennttaattioionn 
LLooww C Coosstt S Sooffttwwaarree 
AAddvvaanncceedd S Seeccuurritityy 
HHoommooggeenneeitityy 
GGeeooggrraapphhicic D Disisttrribibuuttioionn 
Essential Characteristics: 
OOnn D Deemmaanndd S Seelflf--SSeerrvvicicee 
BBrrooaadd N Neettwwoorrkk A Acccceessss RRaappidid E Elalasstticicitityy 
RReessoouurrccee P Poooolilningg 
MMeeaassuurreedd S Seerrvvicicee 
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance
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
FUTURE SCOPE and LIMITATIONS
References 
• Cloud Documentation and Centralized Compiler for Java & Php 
• Online Java Compiler Using Cloud Computing .[Mayank Patel] 
• Grobauer, B. Walloschek, T. Stocker, E., “Understanding Cloud Computing 
Vulnerabilities”, Security & Privacy,IEEE March-April 2011 
• Cloud Computing Bible, Barrie Sosinsky wiley publishing.
MVC 
• Keep Presentation Layer Separate from Data 
Layer 
• Model-View-Controller Architecture 
– Model (Struts 2: action) 
• Represents the Data Objects 
– View (Struts 2: result) 
• Screen representation of the Model 
– Controller (Struts 2: FilterDispatcher) 
• How the user interface reacts to the user’s input
Applying MVC to Web 
Applications 
• View: 
– HTML form; native Java interface; client-side script; 
applet 
• 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. 
• Presents dynamic content to users 
• Handles the presentation logic in an MVC architecture
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). 
• Implement on Virtual Machines (VMs): 
– Abstraction of a physical host machine, 
– Hypervisor intercepts and emulates instructions from VMs, and allows 
management of VMs, 
– VMWare, Xen, etc. 
• Provide infrastructure API: 
– Plug-ins to hardware/support structures
Why Cloud Compiler? 
• 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 
• Server: Server represents the entire Tomcat server. One server per JVM. 
• Service: Service component creates the connectors and associates the 
engine with this group of connectors. 
• Connector: Connectors are components that implement the socket 
listeners. They connect web applications to clients. This component 
provides flexibility to the Tomcat architecture. It allows the Tomcat servlet 
engine to integrate with many different types of web servers such as 
Apache, IIS etc. 
• Engine: Engine is the top level container. It examines the request and 
routes the request to the appropriate virtual host. 
• Host: This allows multiple servers to be configured on the same physical 
machine and be identified by separate IP addresses. 
• Context: This represents a single web application
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 dynamically-generated content. 
• JSP pages share the "Write Once, Run 
Anywhere" characteristics of Java technology.
Why struts? What’s wrong with jsp/servlet coding? 
• 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. 
Struts 2.0 also uses Model 2 MVC pattern 
Still the question remains: Why struts?
Struts Framework Features 
• Model 2 -MVC Implementation 
• Internationalization(I18N) Support 
• Rich JSP Tag Libraries 
• Annotation and XML configuration options 
• POJO-based actions that are easy to test 
• Based on JSP, Servlet, XML, and Java 
• Less xml configuration 
• Easy to test and debug with new features 
• Supports Java’s Write Once, Run Anywhere Philosophy 
• Supports different model implementations (JavaBeans, EJB, etc.) 
• Supports different presentation implementations( JSP, XML/XSLT, etc)
44 
JSP Actions - <jsp:useBean> 
bean 
Servlet JSP 
How can I use 
that bean? 
getId(); 
setId(..) 
getName() 
setName(…) 
request.setAttribute(“userBean”, userBean”) <jsp:useBean …./>
ARCHITECTURE Cloud Compiler
What is Cloud Computing 
• Shared pool of configurable computing resources 
• On-demand network access 
• Provisioned by the Service Provider 
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance 46
• Struts is a framework to develop web 
application easily. Using Struts, makes easier 
to develop web application and maintain 
them. 
• Struts is an open source framework which 
makes building web applications easier, based 
on Java Servlets and JSP technologies. 
• The Struts framework was created by Craig R. 
McClanahan and was donated to the Apache 
software foundation in 2000. Since then it is a 
open source software.
Tomcat Installation and Configuration 
• 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
Tomcat 5.5 Manager 
• Tomcat 5.5 comes with a Web application 
called “manager”, which supports functions 
for managing Web applications 
• You can either use the HTML interface at 
http://<machine>:<port>/manager/html/ or 
send direct HTTP requests to it 
• You will need to authenticate as a privileged 
user 
– Use the username “admin” with no password 
49
Tomcat 5.5 Manager 
• Using the manager, you can 
– Deploy a Web application by posting a WAR file 
– Undeploy a deployed Web application 
– Start/stop a Web application (make it 
available/unavailable) 
– Reload an existing Web application (unpack new WARs) 
• Warning: while “stop” makes an application unavailable, 
“undeploy” deletes the application directory and WAR file 
from webapps/ 
50 
Find these options in the tomcat manager GUI
Tomcat and Eclipse 
• You can use an Eclipse plugin for Tomcat Web-application 
development 
• The “Sysdeo Eclipse Tomcat Launcher” plugin 
is installed in CS 
• Using this plugin, you can start/stop the 
server, reload an application, etc. 
• Detailed explanations in the course technical-help 
section 
51
why is Struts so useful? 
•structural separation of data presentation and business logic 
• easy separation of development tasks (web design, database, …) 
• increases maintainability and extendibility (new views!) 
• increases reusability of code 
– Struts provides a Controller that manages the control flow 
• changes in the flow can all be done in struts-config.xml 
• abstraction from (hard coded) filenames (forwards) 
– easy localization (internationalization is more important than ever) 
– based on standard Java technologies (JSP, Servlets, JavaBeans) 
• thus running on all kinds of JSP/Servlet containers 
– open-source 
• affordable 
• no dependence on external companies 
• robustness (due to freely accessible source code) 
– very vivid open-source project with growing developer community

More Related Content

What's hot

Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
Rajkumarsoy
 
Node and Micro-Services at IBM
Node and Micro-Services at IBMNode and Micro-Services at IBM
Node and Micro-Services at IBM
Dejan Glozic
 
Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?
Pixel Crayons
 
Java in Mule
Java in MuleJava in Mule
Java in Mule
Anand kalla
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.net
shan km
 
Introduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeopleIntroduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeople
SpringPeople
 
Developing an aspnet web application
Developing an aspnet web applicationDeveloping an aspnet web application
Developing an aspnet web applicationRahul Bansal
 
ASP.NET 5: What's the Big Deal
ASP.NET 5: What's the Big DealASP.NET 5: What's the Big Deal
ASP.NET 5: What's the Big Deal
Jim Duffy
 
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip KovačekJavantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
Programming and the web for beginners
Programming and the web for beginnersProgramming and the web for beginners
Programming and the web for beginners
Son Nguyen
 
Asp.net basic
Asp.net basicAsp.net basic
Asp.net basic
Neelesh Shukla
 
Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)
Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)
Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)
Binary Studio
 
Oracle fusion middleware 11g - iBANK
Oracle fusion middleware 11g - iBANKOracle fusion middleware 11g - iBANK
Oracle fusion middleware 11g - iBANK
ibankuk
 
Automate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron SwerleinAutomate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron Swerlein
QA or the Highway
 
Visual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, ReadifyVisual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, ReadifyREADIFY
 
Oracle fusion middleware 11g - IBANK
Oracle fusion middleware 11g - IBANKOracle fusion middleware 11g - IBANK
Oracle fusion middleware 11g - IBANK
ibankuk
 
La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!
Ulrich Krause
 
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORKSpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople
 
Dot net syllabus book
Dot net syllabus bookDot net syllabus book
Dot net syllabus book
Papitha Velumani
 
Ruby on Rails industry trends
Ruby on Rails industry trendsRuby on Rails industry trends
Ruby on Rails industry trends
Sumanth krishna
 

What's hot (20)

Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
Node and Micro-Services at IBM
Node and Micro-Services at IBMNode and Micro-Services at IBM
Node and Micro-Services at IBM
 
Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?
 
Java in Mule
Java in MuleJava in Mule
Java in Mule
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.net
 
Introduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeopleIntroduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeople
 
Developing an aspnet web application
Developing an aspnet web applicationDeveloping an aspnet web application
Developing an aspnet web application
 
ASP.NET 5: What's the Big Deal
ASP.NET 5: What's the Big DealASP.NET 5: What's the Big Deal
ASP.NET 5: What's the Big Deal
 
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip KovačekJavantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
 
Programming and the web for beginners
Programming and the web for beginnersProgramming and the web for beginners
Programming and the web for beginners
 
Asp.net basic
Asp.net basicAsp.net basic
Asp.net basic
 
Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)
Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)
Building Microservices with .NET (speaker Anton Vasilenko, Binary Studio)
 
Oracle fusion middleware 11g - iBANK
Oracle fusion middleware 11g - iBANKOracle fusion middleware 11g - iBANK
Oracle fusion middleware 11g - iBANK
 
Automate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron SwerleinAutomate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron Swerlein
 
Visual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, ReadifyVisual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, Readify
 
Oracle fusion middleware 11g - IBANK
Oracle fusion middleware 11g - IBANKOracle fusion middleware 11g - IBANK
Oracle fusion middleware 11g - IBANK
 
La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!
 
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORKSpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
 
Dot net syllabus book
Dot net syllabus bookDot net syllabus book
Dot net syllabus book
 
Ruby on Rails industry trends
Ruby on Rails industry trendsRuby on Rails industry trends
Ruby on Rails industry trends
 

Viewers also liked

Cloud Compiler
Cloud Compiler Cloud Compiler
Cloud Compiler
Being Topper
 
FactPub Chrome Extension - Developer's Guide -
FactPub Chrome Extension - Developer's Guide -FactPub Chrome Extension - Developer's Guide -
FactPub Chrome Extension - Developer's Guide -
Shun Shiku
 
Információs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztésInformációs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztés
Zoffia
 
Location Brand Equity Model - Dissertation
Location Brand Equity Model - DissertationLocation Brand Equity Model - Dissertation
Location Brand Equity Model - DissertationSusanne Jeppsson
 
Target audience
Target audienceTarget audience
Target audience19rsg30cc
 
процессы передачи информации
процессы передачи информациипроцессы передачи информации
процессы передачи информацииazamatik1988
 
Rola Andony Hanania
Rola Andony HananiaRola Andony Hanania
Rola Andony HananiaRolaHanania
 
Editing process
Editing processEditing process
Editing process19rsg30cc
 
Információs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztésInformációs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztésZoffia
 
Q6 what have you learned
Q6   what have you learnedQ6   what have you learned
Q6 what have you learned19rsg30cc
 
El diurético
El diuréticoEl diurético
Oktoberfest
OktoberfestOktoberfest
Oktoberfest
Govind Singh
 
Fixing errors in Android Java applications
Fixing errors in Android Java applicationsFixing errors in Android Java applications
Fixing errors in Android Java applicationsStephen Gilmore
 
Windows NAS on cloud storage using CloudArray software
Windows NAS on cloud storage using CloudArray softwareWindows NAS on cloud storage using CloudArray software
Windows NAS on cloud storage using CloudArray softwareTwinStrata
 
Cloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The IndianCloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The Indian
Sanjay Chitnis
 

Viewers also liked (20)

Cloud Compiler
Cloud Compiler Cloud Compiler
Cloud Compiler
 
FactPub Chrome Extension - Developer's Guide -
FactPub Chrome Extension - Developer's Guide -FactPub Chrome Extension - Developer's Guide -
FactPub Chrome Extension - Developer's Guide -
 
Work today
Work todayWork today
Work today
 
09.elyana nugraheni
09.elyana nugraheni09.elyana nugraheni
09.elyana nugraheni
 
Információs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztésInformációs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztés
 
Location Brand Equity Model - Dissertation
Location Brand Equity Model - DissertationLocation Brand Equity Model - Dissertation
Location Brand Equity Model - Dissertation
 
Target audience
Target audienceTarget audience
Target audience
 
процессы передачи информации
процессы передачи информациипроцессы передачи информации
процессы передачи информации
 
Rola Andony Hanania
Rola Andony HananiaRola Andony Hanania
Rola Andony Hanania
 
media teknologi
media teknologimedia teknologi
media teknologi
 
Editing process
Editing processEditing process
Editing process
 
Információs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztésInformációs társadalom és intézményfejlesztés
Információs társadalom és intézményfejlesztés
 
Q6 what have you learned
Q6   what have you learnedQ6   what have you learned
Q6 what have you learned
 
El diurético
El diuréticoEl diurético
El diurético
 
Presentation1
Presentation1Presentation1
Presentation1
 
Rola A Hanania
Rola A HananiaRola A Hanania
Rola A Hanania
 
Oktoberfest
OktoberfestOktoberfest
Oktoberfest
 
Fixing errors in Android Java applications
Fixing errors in Android Java applicationsFixing errors in Android Java applications
Fixing errors in Android Java applications
 
Windows NAS on cloud storage using CloudArray software
Windows NAS on cloud storage using CloudArray softwareWindows NAS on cloud storage using CloudArray software
Windows NAS on cloud storage using CloudArray software
 
Cloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The IndianCloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The Indian
 

Similar to Cloud compiler - Minor Project by students of CBPGEC

Ppt for Online music store
Ppt for Online music storePpt for Online music store
Ppt for Online music store
ADEEBANADEEM
 
Struts 2 - Introduction
Struts 2 - Introduction Struts 2 - Introduction
Struts 2 - Introduction
Hitesh-Java
 
Session 41 - Struts 2 Introduction
Session 41 - Struts 2 IntroductionSession 41 - Struts 2 Introduction
Session 41 - Struts 2 Introduction
PawanMM
 
Micro services
Micro servicesMicro services
Micro services
Brian Perera
 
4. J2EE.pptx
4. J2EE.pptx4. J2EE.pptx
4. J2EE.pptx
HariChandruduM
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5
mbaric
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing
Ed Burns
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClass
Paul Withers
 
Web Component Development with Servlet and JSP Technologies Unit 01
Web Component Development with Servlet and JSP Technologies Unit 01Web Component Development with Servlet and JSP Technologies Unit 01
Web Component Development with Servlet and JSP Technologies Unit 01
Prashanth Shivakumar
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa intro
Sonic leigh
 
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS MiddlewareOracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
Getting value from IoT, Integration and Data Analytics
 
Performance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsPerformance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMs
Maarten Smeets
 
AJppt.pptx
AJppt.pptxAJppt.pptx
AJppt.pptx
SachinSingh217687
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)
slire
 
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
Getting value from IoT, Integration and Data Analytics
 
Java Training at Gateway Software Solutions,Coimbatore
Java Training at Gateway Software Solutions,CoimbatoreJava Training at Gateway Software Solutions,Coimbatore
Java Training at Gateway Software Solutions,Coimbatore
Gateway Software Solutions
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
netc2012
 
Struts 2-overview2
Struts 2-overview2Struts 2-overview2
Struts 2-overview2Long Nguyen
 
Framework adoption for java enterprise application development
Framework adoption for java enterprise application developmentFramework adoption for java enterprise application development
Framework adoption for java enterprise application development
Clarence Ho
 

Similar to Cloud compiler - Minor Project by students of CBPGEC (20)

Ppt for Online music store
Ppt for Online music storePpt for Online music store
Ppt for Online music store
 
Struts 2 - Introduction
Struts 2 - Introduction Struts 2 - Introduction
Struts 2 - Introduction
 
Session 41 - Struts 2 Introduction
Session 41 - Struts 2 IntroductionSession 41 - Struts 2 Introduction
Session 41 - Struts 2 Introduction
 
Micro services
Micro servicesMicro services
Micro services
 
4. J2EE.pptx
4. J2EE.pptx4. J2EE.pptx
4. J2EE.pptx
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClass
 
Web Component Development with Servlet and JSP Technologies Unit 01
Web Component Development with Servlet and JSP Technologies Unit 01Web Component Development with Servlet and JSP Technologies Unit 01
Web Component Development with Servlet and JSP Technologies Unit 01
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa intro
 
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS MiddlewareOracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
 
Nadeem_CV
Nadeem_CVNadeem_CV
Nadeem_CV
 
Performance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsPerformance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMs
 
AJppt.pptx
AJppt.pptxAJppt.pptx
AJppt.pptx
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)
 
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
 
Java Training at Gateway Software Solutions,Coimbatore
Java Training at Gateway Software Solutions,CoimbatoreJava Training at Gateway Software Solutions,Coimbatore
Java Training at Gateway Software Solutions,Coimbatore
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
 
Struts 2-overview2
Struts 2-overview2Struts 2-overview2
Struts 2-overview2
 
Framework adoption for java enterprise application development
Framework adoption for java enterprise application developmentFramework adoption for java enterprise application development
Framework adoption for java enterprise application development
 

Recently uploaded

Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Teleport Manpower Consultant
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
aqil azizi
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
MdTanvirMahtab2
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
ClaraZara1
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
Basic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparelBasic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparel
top1002
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
Kamal Acharya
 
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERSCW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
veerababupersonal22
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
manasideore6
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation & Control
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
manasideore6
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
SUTEJAS
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
AmarGB2
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
thanhdowork
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
Kerry Sado
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 

Recently uploaded (20)

Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
Basic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparelBasic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparel
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
 
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERSCW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 

Cloud compiler - Minor Project by students of CBPGEC

  • 1. Cloud Compiler Cloud Compiler Group Members: JASWANT KUMAR 01220703111 KRISHNA NAND MISHRA 03020703111 VIPIN KUMAR 04020703111 RAHUL VASHISTH 05520703111 Mentor Name and Designation Mr. Aditya Tandon (asst. Prof)
  • 2. CONTENT • OBJECTIVE • INTRODUCTION • PLATFORM USED • SERVER USED • FUNCTIONALITY • CHARECTERISTICS • FUTURE SCOPE AND LIMITATIONS 2
  • 3. 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.
  • 4. INTRODUCTION What is CLOUD COMPILER??
  • 8. Cloud Service Models 8 Software as a Service (SaaS) Platform as a Service (PaaS) Infrastructure as a Service (IaaS) Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance
  • 9. 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. 9
  • 10. SaaS Maturity Model Level 1: Ad-Hoc/Custom – One Instance per customer Level 2: Configurable per customer Level 3: configurable & Multi-Tenant-Efficient Level 4: Scalable, Configurable & Multi-Tenant-Efficient 10 Source: Frederick Chong and Gianpaolo Carraro, “Architectures Strategies for Catching the Long Tail”
  • 11. Virtualization • Virtual workspaces: • Implement on Virtual Machines (VMs): • Provide infrastructure API: • . 11 App App App App App Virtual Machine Monitor (VMM) / Hypervisor Hardware Guest OS (Linux) Guest OS (NetBSD) Guest OS (Windows) VM VM VM Xen VMWare UML Denali etc.
  • 12. TOMCAT : SERVER A container for Servlets and JSP • Tomcat is a Servlet container (Web server that interacts with Servlets) developed under the Jakarta Project of Apache Software Foundation • Tomcat implements the Servlet and the Java Server Pages (JSP) specifications of Sun Microsystems • Tomcat is an open-source, non commercial project – Licensed under the Apache Software License • Tomcat is written in Java (OS independent) 12
  • 14. Tomcat features • Tomcat Installation and Configuration • Tomcat 5.5 Manager • Tomcat and Eclipse
  • 19. • Java Server Pages allow special tags and Java code to be embedded in HTML files. • Presents dynamic content to users • Handles the presentation logic in an MVC architecture 19 Container (business logic) servlet JSP request response Helper Objects (presentation logic) Business Tier PLATFORM1: Java ServerPages (JSP)
  • 20. Architecture OF JSP JSP page request JSP container compiles to a servlet URL response dbc@csit.fsu.edu 20 HTTP request HTTP response Web server JavaBean Library DB properties, call methods HTTP page Browser
  • 21. JSP’s implementation *.class request response jsp parser JDK *.jsp *.java implementation
  • 22. PLATFORM2: STRUTS WHAT IS STRUTS? Why struts? What’s wrong with jsp/servlet coding?
  • 23. why is Struts so useful? Structural separation of data presentation and business logic • Struts provides a Controller that manages the control flow • easy localization (internationalization is more important than ever) • based on standard Java technologies (JSP, Servlets, JavaBeans) • open-source •every vivid open-source project with growing developer community
  • 24. Struts Framework Features • Model 2 -MVC Implementation • Internationalization(I18N) Support • Rich JSP Tag Libraries • Annotation and XML configuration options • POJO-based actions that are easy to test • Based on JSP, Servlet, XML, and Java • Less xml configuration • Easy to test and debug with new features • Supports Java’s Write Once, Run Anywhere Philosophy • Supports different model implementations (JavaBeans, EJB, etc.) • Supports different presentation implementations( JSP, XML/XSLT, etc)
  • 25. Struts 2.0 uses Model 2 MVC pattern Model 2 architecture Servlet Java function JSP File
  • 26. MVC Architecture View Controller Model
  • 27. Designing Web Applications • High Level Architecture Presentation Layer Control Layer Application Logic Data Sources
  • 28. Cloud Compiler Characteristics 28 Common Characteristics: MMaassssivivee S Sccaalele RReessiliileienntt C Coommppuuttiningg VVirirttuuaalilzizaattioionn SSeerrvvicicee O Orrieiennttaattioionn LLooww C Coosstt S Sooffttwwaarree AAddvvaanncceedd S Seeccuurritityy HHoommooggeenneeitityy GGeeooggrraapphhicic D Disisttrribibuuttioionn Essential Characteristics: OOnn D Deemmaanndd S Seelflf--SSeerrvvicicee BBrrooaadd N Neettwwoorrkk A Acccceessss RRaappidid E Elalasstticicitityy RReessoouurrccee P Poooolilningg MMeeaassuurreedd S Seerrvvicicee Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance
  • 29. 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
  • 30. FUTURE SCOPE and LIMITATIONS
  • 31. References • Cloud Documentation and Centralized Compiler for Java & Php • Online Java Compiler Using Cloud Computing .[Mayank Patel] • Grobauer, B. Walloschek, T. Stocker, E., “Understanding Cloud Computing Vulnerabilities”, Security & Privacy,IEEE March-April 2011 • Cloud Computing Bible, Barrie Sosinsky wiley publishing.
  • 32.
  • 33. MVC • Keep Presentation Layer Separate from Data Layer • Model-View-Controller Architecture – Model (Struts 2: action) • Represents the Data Objects – View (Struts 2: result) • Screen representation of the Model – Controller (Struts 2: FilterDispatcher) • How the user interface reacts to the user’s input
  • 34. Applying MVC to Web Applications • View: – HTML form; native Java interface; client-side script; applet • Controller: – Java servlet; session Bean • Model: – Entity Bean or other business logic object
  • 35. JSP Java Server Pages What is JSP? Java Server Pages allow special tags and Java code to be embedded in HTML files. • Presents dynamic content to users • Handles the presentation logic in an MVC architecture
  • 36. 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.
  • 37. 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). • Implement on Virtual Machines (VMs): – Abstraction of a physical host machine, – Hypervisor intercepts and emulates instructions from VMs, and allows management of VMs, – VMWare, Xen, etc. • Provide infrastructure API: – Plug-ins to hardware/support structures
  • 38. Why Cloud Compiler? • 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.
  • 39. 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.
  • 40. Architecture • Server: Server represents the entire Tomcat server. One server per JVM. • Service: Service component creates the connectors and associates the engine with this group of connectors. • Connector: Connectors are components that implement the socket listeners. They connect web applications to clients. This component provides flexibility to the Tomcat architecture. It allows the Tomcat servlet engine to integrate with many different types of web servers such as Apache, IIS etc. • Engine: Engine is the top level container. It examines the request and routes the request to the appropriate virtual host. • Host: This allows multiple servers to be configured on the same physical machine and be identified by separate IP addresses. • Context: This represents a single web application
  • 41. 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 dynamically-generated content. • JSP pages share the "Write Once, Run Anywhere" characteristics of Java technology.
  • 42. Why struts? What’s wrong with jsp/servlet coding? • 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. Struts 2.0 also uses Model 2 MVC pattern Still the question remains: Why struts?
  • 43. Struts Framework Features • Model 2 -MVC Implementation • Internationalization(I18N) Support • Rich JSP Tag Libraries • Annotation and XML configuration options • POJO-based actions that are easy to test • Based on JSP, Servlet, XML, and Java • Less xml configuration • Easy to test and debug with new features • Supports Java’s Write Once, Run Anywhere Philosophy • Supports different model implementations (JavaBeans, EJB, etc.) • Supports different presentation implementations( JSP, XML/XSLT, etc)
  • 44. 44 JSP Actions - <jsp:useBean> bean Servlet JSP How can I use that bean? getId(); setId(..) getName() setName(…) request.setAttribute(“userBean”, userBean”) <jsp:useBean …./>
  • 46. What is Cloud Computing • Shared pool of configurable computing resources • On-demand network access • Provisioned by the Service Provider Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance 46
  • 47. • Struts is a framework to develop web application easily. Using Struts, makes easier to develop web application and maintain them. • Struts is an open source framework which makes building web applications easier, based on Java Servlets and JSP technologies. • The Struts framework was created by Craig R. McClanahan and was donated to the Apache software foundation in 2000. Since then it is a open source software.
  • 48. Tomcat Installation and Configuration • 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. Tomcat 5.5 Manager • Tomcat 5.5 comes with a Web application called “manager”, which supports functions for managing Web applications • You can either use the HTML interface at http://<machine>:<port>/manager/html/ or send direct HTTP requests to it • You will need to authenticate as a privileged user – Use the username “admin” with no password 49
  • 50. Tomcat 5.5 Manager • Using the manager, you can – Deploy a Web application by posting a WAR file – Undeploy a deployed Web application – Start/stop a Web application (make it available/unavailable) – Reload an existing Web application (unpack new WARs) • Warning: while “stop” makes an application unavailable, “undeploy” deletes the application directory and WAR file from webapps/ 50 Find these options in the tomcat manager GUI
  • 51. Tomcat and Eclipse • You can use an Eclipse plugin for Tomcat Web-application development • The “Sysdeo Eclipse Tomcat Launcher” plugin is installed in CS • Using this plugin, you can start/stop the server, reload an application, etc. • Detailed explanations in the course technical-help section 51
  • 52. why is Struts so useful? •structural separation of data presentation and business logic • easy separation of development tasks (web design, database, …) • increases maintainability and extendibility (new views!) • increases reusability of code – Struts provides a Controller that manages the control flow • changes in the flow can all be done in struts-config.xml • abstraction from (hard coded) filenames (forwards) – easy localization (internationalization is more important than ever) – based on standard Java technologies (JSP, Servlets, JavaBeans) • thus running on all kinds of JSP/Servlet containers – open-source • affordable • no dependence on external companies • robustness (due to freely accessible source code) – very vivid open-source project with growing developer community

Editor's Notes

  1. IaaSdelivers computer infrastructure, typically a platform virtualization environment, as a service. Rather than purchasing servers, software, data center space or network equipment, clients instead buy those resources as a fully outsourced service. PaaSdeliver a computing platform where the developers can develop their own applications. SaaSis a model of software deployment where the software applications are provided to the customers as a service.
  2. Employing MVC offers many benefits for the developer, software architect, and project manager. One key advantage is built-in to the division of labor inherent in the MVC framework. Because of the separation of the presentation and data layers, if you want to change the look and feel of an application, you’re not required to recompile the Model or the Controller code. MVC architectures can deliver multiple types of views ( Web Browser, Wireless Devices) while leveraging the same server-side code.
  3. When planning the design of a Web application, it is helpful to conceptualize the architecture in terms of three logical pieces: Presentation Layer – outward facing layer that provides the look and feel of the application Control Layer – dispatches requests and packages responses Application Logic – performs the business rules and accesses back-end resources
  4. ScalabilityInfrastructure capacity allows for traffic spikes and minimizes delays. ResiliencyCloud providers have mirrored solutions to minimize downtime in the event of a disaster. This type of resiliency can give businesses the sustainability they need during unanticipated events. Homogeneity: No matter which cloud provider and architecture an organization uses, an open cloud will make it easy for them to work with other groups, even if those other groups choose different providers and architectures. On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service’s provider. Broad network access. Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs). Resource pooling. Multi-tenant model.. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter). Examples of resources include storage, processing, memory, network bandwidth, and virtual machines. Rapid elasticity. Capabilities can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out and rapidly released to quickly scale in. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be purchased in any quantity at any time. Measured Service. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts).
  5. One of the goals of the Jakarta Struts project was to provide an open-source framework for creating Web applications that keep the presentation layer separate from the data layer. To understand the Struts Framework, it’s important to have a firm foundation in the MVC Design Pattern. MVC consists of three components: Model, View, and Controller. Specific descriptions of each are given in the slide.
  6. Employing MVC offers many benefits for the developer, software architect, and project manager. One key advantage is built-in to the division of labor inherent in the MVC framework. Because of the separation of the presentation and data layers, if you want to change the look and feel of an application, you’re not required to recompile the Model or the Controller code. MVC architectures can deliver multiple types of views ( Web Browser, Wireless Devices) while leveraging the same server-side code.
  7. Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. cloud computing customers do not own the physical infrastructure. Cloud computing users avoid capital expenditure (CapEx) on hardware, software, and services when they pay a provider only for what they use. Low shared infrastructure and costs, low management overhead, and immediate access to a broad range of applications