Escolar Documentos
Profissional Documentos
Cultura Documentos
CONTENTS
The Quarix Platform.................................................................................................................... 2 QuariX Frontends .................................................................................................................... 3 QuariX Progress Backend ....................................................................................................... 3 Architecture Overview ................................................................................................................. 4 Quarix Web Rich Client Framework......................................................................................... 5 Quarix Java Middle Tier........................................................................................................... 6 Quarix Progress Business Logic Framework ........................................................................... 6 Platform dependencies ............................................................................................................... 8 Scalable Architecture ................................................................................................................ 10
QUARIX FRONTENDS
On the frontend QuariX features a fully compatible XML format that can be used to render user interfaces on both Desktop and Web environments. This allows a very flexible development and deployment model which can fit any needs. At this moment two fully functional frontends are available in QuariX: y y QuariX Web the Web 2.0 solution for rich user interfaces ; QuariX Desktop a WPF implementation of the QuariX standard on the desktop;
ARCHITECTURE OVERVIEW
The major components of the QuariX platform are: y y y
cmp Architecture - high lev el
Quarix Web Rich Client Framework Quarix Java Middle Tier Quarix Progress Business Logic Framework
C en
eb B o
tags a a = un d e 1 5+ a a eb app e e = e e 2 3 + o a = 4 1 3 9+ p e e ed
" !
p og e p og e
tags app e e = 10 1 B+ db = 10 1 B+
Se e
P og e
App
a o n Se e
Se e
a a
dd e
bo
e =
e o 3+ e 7+
h o e 1+
The interface between the user interface components and the back-end is done through a client-side version of what it can be called a data access object to which all graphical components can be bind. Standard compliance and standard technologies where at the core of the requirements and that shows in all the pieces that form the QuariX framework: Standard JavaScript for the client side / browser based Rich Internet Application framework (no plugins, just A grade browsers) XHTML/W3-DOM for content presentation, manipulation
logging
& % ( %
% 0
%&
@ @
E i i ng
A @ 2
p pli a i on
u ine
Logi
A @
u ildReque
ex s ng ser
gu screens
C %
o n i gu a i on
e o
11
c es
@ @
@ R A2
A @
A @
u ildReque
Da a Reque
au h en i a i on on e e ion
A 3 A A
1A
d s pa cher
& % C
a n la i on
% 0
61
Fa e o
5 4 1
E1
%G
E1
%F
@ 6
&
34
@ @
19 2 1
7 2 1
Qua i
iddle
ie
ja a Quar x dd e
# &
reques
a nager
A @
e e Reque
1 E1
er
A @
da a e que
1 A D
A @
E1
A @
1 A
A @
e e Reque
1 E1
pain e que
Da a i nd
C A
Da a i nd
&
gu co ponen s
& # %
61
Qua i Ri h Gui F a e o
5 4 1 3 2 1
( '
c p rch ec ure
& &% $ #
e e
bind
da a access proxy
e e Reque
ser
c es
anage en
PLATFORM DEPENDENCIES
Quarix solution requires the following execution environments to be present in order to be deployed, please install the pre-requisites components before proceeding with Quarix deployment: A. Web Se e A standard HTTP server used to serve the static content (images, documents, css, javascript) this component is usually required in a production environment even if most of the Web Application Servers can also serve static content; we recommend this to be used because of two reasons: has specific functionality (virtual hosts, proxy, content cache, etc.) has less functionality compared to a Web Application Server hence its less exposed to various malicious attacks
Any HTTP server can be used given there is also a connector available for the selected Web Application Server selected to be used as the middle tier component: Internet Information Server (IIS), Apache HTTP Server (preferred). Please note that if you choose not to use this component, by deploying also the static content on the Web Application Server, that the Application Server need to be connected to the Progress Application Server which usually is placed inside the internal network (LAN) while the web server need to be places somewhere outside of the internal network (preferred in the DMZ).
e s)
The Quarix middle tier layer is build using standard Java Servlet Technology and needs any Web Application Server that support at minimum the 2.3 version specifications. We recommend the Apache Tomcat Application Server but there are also other solutions available among which we can name: JBoss Application Server, IBM WebSphere Application Server. iven the fact that this layer is actually assuring the connection to the Progress Application Server is advisable to be placed inside the internal network (LAN) or in the demilitarized zone (DMZ). C. P og ess App ca on Se e
Progress Application Server is actually hosting the application business logic and provides access to the Progress Database Server. The normal operation mode used by Quarix solution is state-free which is the less restrictive option meaning no session management is provided by the Application Server itself and no connection is hold open between requests. Because the Quarix Progress framework use the newly Object Oriented ABL and require support for large object data type (CLOB, BLOB) the minimal version that can be used is Progress Open dge 10.1B. The number of agents needed and the licensing model to be used depends on the number of users accessing the application; please consult your Progress Sales Representative to discuss the licensing requirements. D. P og ess Da abase Se e Beside the applications specific databases the Quarix solution requires a run-time database for things like application configuration, user management, session management. Because the usage of large object data type (CLOB, BLOB) the minimal version that can be used is Progress Open dge 10.1B. The number of access licenses needed and the licensing model to be used depends on the number of users accessing the application; please consult your Progress Sales Representative to discuss the licensing requirements.
SCALABLE ARCHITECTURE
iven the fact that the solution architecture is a highly distributed one there are a couple of deployment options going from all on one server choice to the totally distributed one on which each running environment is hosted by a separate server. The fact that most of the existing Web Application Servers (servlets) are able to also serve static content the plain Web Server can be taken completely out of the picture, however we do not recommend that for a production environment. The choice of the deploying architecture is not imposed by Quarix and depending on the series of requirements/constraints a decision need to be made case by case. Among the most important things that need to be considered when deciding upon the deployment architecture to be used we ca name: y y y y required application availability/response-time security considerations need for fail-over and load-balancing existing network/hardware infrastructure
One of the deployment option which we think can provide a good performance as well and scalability while maintaining a high security level is a 3-tier architecture as seen bellow. Optionally if high availability is a key factor a combination of load-balancing and fail-over servers coupled with database replication solutions can be put in place obtain a near-zero downtime solution.
10
wan
tags apache t mcat connector mod_jk) ii tomcat connector i api _redi rect.dl l )
rg q p h i hg
(f l an i nt anet
V
S ft
TCP/IP
(f
S ft
11
sn r q
p on
g f e
(f
S ft
(f
ml j
kj
versi on
tags .
TCP/IP versi on
tags .
S ft
f e
y x w
TCP/IP
YX W
erv er
a d v d f T
e rv er