september 14th, 2005 nec 2005 symposium the information system of cms concepts, technology and...
Post on 18-Dec-2015
214 views
TRANSCRIPT
September 14th, 2005
NEC 2005 Symposium
The Information System ofCMS
Concepts, Technology and Architecture
Zhechka TotevaSofia University/CERN
Dirk Samyn, Nick J. SinanisCERN
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Introduction
Web content serving for the CMS collaboration Agendas, Documentation, Dynamic Mailing Lists, People &
Institutes Sub-detector and Project Pages Data samples, Software Distribution and Event Catalogues Provide an integrated environment for all Collaboration
generated knowledge Some numbers
> 2’000 people, spread around the world Availability around the clock!
> 90 GBytes/day of file transfers > 18 kHits/hour
Current system dates from the first days of WWW Mostly static content Few dynamic content, often leading to unmanaged pages “One size fits it all”
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
iCMS – What is it? A modern web information system to replace the legacy
CMSDOC
User perspective handles the processing of different classes of CMS-specific
information Agendas, Announcements, Documentation, Mailing lists,
Meetings, News, Notes, People & Institutes, Requests Built on experience from the last 12 years running CMSDOC
Federated content management Offers personalization
Functions/Roles in the experiment Interests and working fields
System Perspective Industrial standard technologies and techniques
Java, EJB, Web services Scalable during the lifetime of the experiment
Multi-Tier architecture High-performance
Content Separation
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Web Architectures
Classic architecture is a monolithic server
Simple but scales poorly
Content access Bottlenecks Synchronization
Architecture evolution is to be expected at the server side tiers
`
`
`
Web Clients
Data TierDB
FilesFiles
Presentation Tier
Web ServerHTML
Simple Dynamic Content
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Building N-Tier Architectures
Presentation Tier
ApacheJSP
HTML
Data TierRDBMS
File System
Business Tier
TomcatJava Beans (EJB), RDF/RSS
Work Flow Engine
Data Access Tier
TomcatAxis Web Services
Hibernate
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
iCMS 4-Tier Architecture
RSS
RDF
RDF
RDF
Data Access Tier Data Tier
News
Cmspeople
Ml
MeetAnn.
Notes
Reqst
Events
IT CDS Agenda
Web services
AXIS
Hibernate/JDBC
Hibernate/Informa/JDBC
SQL/JDBC
XML
WF engine
for BPEL4
WS WS Connec
tivity
JSP WEB COMPONENT
SQL/JDBC
rws
rws
rws
rws
Java beans
creation
iCMS
JSP,HTML
JSP WEB COMPONENT
Business Tier Presentation tier
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Presentation TiernotesTypeslList.jsp
<%@ page language="java" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-taglib" prefix="iw" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-WS-taglib“ prefix="iws" %>
<%@ taglib uri="http://jakarta.apache.org/taglibs/taglibs-jstl" prefix="c" %>
<iw:Form bean="types">
<iws:Notes action="getNoteType" var="types"/>
<iw:Info title="Notes Categories" show="true" hidable="false">
<c:forEach var="chitem" items="${types.items}">
<iw:InfoItem title="${chitem.id}" value="${chitem.typedescription}" />
</c:forEach>
</iw:Info>
</iw:Form>Visualization of Web Components
iCMS
JSP,HTML
JSP WEB COMPONENT
Presentation tier
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Presentation TiernotesTypeslList.jsp
<%@ page language="java" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-taglib" prefix="iw" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-WS-taglib“ prefix="iws" %>
<%@ taglib uri="http://jakarta.apache.org/taglibs/taglibs-jstl" prefix="c" %>
<iw:Form bean="types">
<iws:Notes action="getNoteType" var="types"/>
<iw:Info title="Notes Categories" show="true" hidable="false">
<c:forEach var="chitem" items="${types.items}">
<iw:InfoItem title="${chitem.id}" value="${chitem.typedescription}" />
</c:forEach>
</iw:Info>
</iw:Form>Visualization of Web Components
Communicating withBusiness Tier
iCMS
JSP,HTML
JSP WEB COMPONENT
Presentation tier
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Presentation TiernotesTypeslList.jsp
<%@ page language="java" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-taglib" prefix="iw" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-WS-taglib“ prefix="iws" %>
<%@ taglib uri="http://jakarta.apache.org/taglibs/taglibs-jstl" prefix="c" %>
<iw:Form bean="types">
<iws:Notes action="getNoteType" var="types"/>
<iw:Info title="Notes Categories" show="true" hidable="false">
<c:forEach var="chitem" items="${types.items}">
<iw:InfoItem title="${chitem.id}" value="${chitem.typedescription}" />
</c:forEach>
</iw:Info>
</iw:Form>Visualization of Web Components
Communicating withBusiness Tier
Procedural Logic
iCMS
JSP,HTML
JSP WEB COMPONENT
Presentation tier
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Presentation Tier
Advantages of JSP Web Components High Level of Tags Reuse
Adding New Pages Modularity
Trivial Functionality Grouping Development based on page components rather than
HTML tags Coherence
It’s enough to modify a tag at a single place in order to propagate everywhere
Portability Standardized versions
notesTypeslList.jsp
<%@ page language="java" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-taglib" prefix="iw" %>
<%@ taglib uri="http://iCMS.cern.ch/tomcat/iCMS-WS-taglib“ prefix="iws" %>
<%@ taglib uri="http://jakarta.apache.org/taglibs/taglibs-jstl" prefix="c" %>
<iw:Form bean="types">
<iws:Notes action="getNoteType" var="types"/>
<iw:Info title="Notes Categories" show="true" hidable="false">
<c:forEach var="chitem" items="${types.items}">
<iw:InfoItem title="${chitem.id}" value="${chitem.typedescription}" />
</c:forEach>
</iw:Info>
</iw:Form>Visualization of Web Components
Communicating with Business Tier
Procedural Logic
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Business Tier - Architecture
Processes the requests from the presentation tier Implements the business logic of information processing
Workflow engine for documents submission/refereeing management
Stubs call the axis web services of the data access tier Processes the RDF/RSS responses from the data access tier Creates the java beans for the presentation tier
java function call
remote ws service call
Data access tier
RDF/RSSjava
collection
java collection
Presentation tier
JSP web component call
Business tier
JSP web component
processing classes
WF engine client libraries
Web services connectivity
classes
Java bean creation classes
WF engine for BPEL4WS
java bean
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Business Tier - RDF/RSS Resource Description Framework (RDF)
W3D standard Describes documents using constraint
definitions processed by jenaRDF API
Really Simple Syndication (RSS) Standard RSS 2.0 Syndicates the updates of frequently
changing information (e.g., CMS news)
Advantages offered by RDF/RSS Unified interface
Modular Scalable
Syntax based on XML Neutral presentation to the client Universal language understood by
other tools (e.g., news aggregator)
RDF
RDF
RDF
WF engine
for BPEL4
WS WS Connec
tivity
JSP WEB COMPONENT
rws
RSS
rws
rws
rws
Java beans
creation
Business Tier
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Business Tier - BPEL4WS Business Process Execution Language for
Web Services (BPEL4WS) Orchestration of web services
establishes the communication protocols
defines the business rules of the web services interactions
Applications of BPEL4WS Describe the life cycle of CMS publications
A set of business rules of the interaction between the submitter, subeditors and editors (referees)
Twister workflow engine Implements the business processes Keeps track of the states of a process
instance (publication) the communication messages exchanged
between parties participating in the publication processing
Provides client libraries to integrate with the business tier
BPEL4WS specification compliance Extendibility, portability
RDF
RDF
RDF
WF engine
for BPEL4
WS WS Connec
tivity
JSP WEB COMPONENT
rws
RSS
rws
rws
rws
Java beans
creation
Business Tier
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Data Access Tier - Web Services
Web service definition Efficient serving of data query
results and data manipulation requests
Standalone service Data caching
Features Unification of the
communication interface jdbc rdf/rss
Modularity Portability
web services standard AXIS from Apache Foundation
RDF
RDF
RDF
Data Access Tier
Web services
AXIS
Hibernate/JDBC
Hibernate/Informa/JDBC
SQL/JDBC
XML
rws
RSS
rws
rws
rws
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Data Access Tier - ORM
Object-relational Mapping (ORM) Provides a seamless framework for
object/relational persistence and query
Hibernate ORM DB data treated as objects
An object property contains list of related objects
Speeds-up processing of parent-child relationships
Extendibility Supports SQL and JDBC standards Extends the SQL query features
with objects-based search criteria UML support for advanced object-
relational modeling Performance
Frequently used objects caching
RDF
RDF
RDF
Data Access Tier
Web services
AXIS
Hibernate/JDBC
Hibernate/Informa/JDBC
SQL/JDBC
XML
rws
RSS
rws
rws
rws
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Data Tier - RDBMS & FS Storage
MySQL RDBMS Persistent storage of data Ensures data consistency
domain constraints referential integrity constraints transactions
Provides multi-session data processing
Transaction isolation levels
File System (FS) storage File level storage Meta-data related to files are stored
in a database
Data Tier
News
Cmspeople
Ml
MeetAnn.
Notes
Reqst
Events
IT CDS Agenda
Hibernate/JDBC
Hibernate/Informa/JDBC
SQL/JDBC
XML
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
iCMS Site Presentation
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Summary
iCMS is the new generation information system of CMS N-tier architectures have been studied
A 4-tier architecture has been chosen for iCMS Advanced industrial standard technologies have been
employed in order to provide for Scalability Portability Extendibility
Status First user experiences already collected Goes into production in the coming weeks
Plans CMS shifts management
prototype for Cosmic Challenge in 2006 WIKI Community forums
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Spare Slides
September 14th, 2005
NEC 2005 SymposiumZhechka TotevaCERN - CMS Computing
Advantages
Coherent presentation to the end user – jsp web components
Standard web technologies employed Web Services – provides the communication with relational databases’ persistent storage
Resource Description Framework (RDF) / Really Simple Syndication (RSS) – XML-based formats to describe the result information
Business Process Execution Language for Web Services (WPEL4WS) - describes the interaction between different web services
Unified interfaces for communication between different tiers:
JSP web components, Java beans, RDF, Axis remote calls, JDBC
Physically distributed on different servers