143 research outputs found

    J2EE application for clustered servers : focus on balancing workloads among clustered servers : a thesis presented in partial fulfilment of the requirements for the degree of Master of Information Science in Computer Science at Massey University, Albany, New Zealand

    Get PDF
    J2EE has become a de facto platform for developing enterprise applications not only by its standard based methodology but also by reducing the cost and complexity of developing multi-tier enterprise applications. J2EE based application servers keep business logic separate from the front-end applications (client-side) and back-end database servers. The standardized components and containers simplify J2EE application design. The containers automatically manage the fundamental system level services for its components, which enable the components design to focus on the business requirement and business logic. This study applies the latest J2EE technologies to configure an online benchmark enterprise application - MG Project. The application focuses on three types of components design including Servlet, entity bean and session bean. Servlets run on the web server Tomcat, EJB components, session beans and entity beans run on the application server JBoss and the database runs on the database server Postgre SQL. This benchmark application is used for testing the performance of clustered JBoss due to various load-balancing policies applied at the EJB level. This research also focuses on studying the various load-balancing policies effect on the performance of clustered JBoss. As well as the four built-in load-balancing policies i.e. First Available, First Available Identical All Proxies, Random Robin and Round Robin, the study also extend the JBoss Load balance Policy interface to design two dynamic load-balancing policies. They are dynamic and dynamic weight-based load-balancing policies. The purpose of dynamic load-balancing policies design is to ensure minimal response time and obtain better performance by dispatching incoming requests to the appropriate server. However, a more accurate policy usually means more communications and calculations, which give an extra burden to a heavily loaded application server that can lead to drops in the performance

    Survey of Technologies for Web Application Development

    Full text link
    Web-based application developers face a dizzying array of platforms, languages, frameworks and technical artifacts to choose from. We survey, classify, and compare technologies supporting Web application development. The classification is based on (1) foundational technologies; (2)integration with other information sources; and (3) dynamic content generation. We further survey and classify software engineering techniques and tools that have been adopted from traditional programming into Web programming. We conclude that, although the infrastructure problems of the Web have largely been solved, the cacophony of technologies for Web-based applications reflects the lack of a solid model tailored for this domain.Comment: 43 page

    A Prelimanary Exploration on component based software engineering

    Full text link
    Component-based software development (CBD) is a methodology that has been embraced by the software industry to accelerate development, save costs and timelines, minimize testing requirements, and boost quality and output. Compared to the conventional software development approach, this led to the system's development being completed more quickly. By choosing components, identifying systems, and evaluating those systems, CBSE contributes significantly to the software development process. The objective of CBSE is to codify and standardize all disciplines that support CBD-related operations. Analysis of the comparison between component-based and scripting technologies reveals that, in terms of qualitative performance, component-based technologies scale more effectively. Further study and application of CBSE are directly related to the CBD approach's success. This paper explores the introductory concepts and comparative analysis related to component-based software engineering which have been around for a while, but proper adaption of CBSE are still lacking issues are also focused

    Web Auction System

    Get PDF
    Auctions are perhaps the oldest market places in history. For centuries, people were allowed to place a price on an item for sale. The person who pledged the highest amount won. Although there were no legal contracts and laws in place, the underlying concept remained the same; both buyer and seller gained something from the transaction. This Computer Science Masters project is aimed at designing an online auction system that is scalable, robust, and flexible to meet the increasing demands of secure and efficient transactions. This project proposes the use of a three-tier architecture system to conduct online auctions in order to ensure reliability, flexibility and scalability. The system uses HTML and JSP for the front end, WebLogic server as the middle tier, and Oracle as the backend database. This online auction system is built to ensure smooth and efficient transactions between buyers and sellers. This report describes the basic concepts underlying auctions, specifically online auctions. The report goes on to explain in detail the design and logic of the system by incorporating figures and screen shots for illustration

    Diseño y desarrollo de portales web para el comercio electrónico

    Get PDF
    [ES]En este capítulo presentamos una panorámica general sobre las principales tecnologías dedicadas al a creación de portales y sitios Web de comercio electrónico. Aunque estos productos actualmente también proporcionan soporte para desarrollar procesos de B2B, aquí nos centraremos fundamentalmente en el desarrollo de portales mediante componentes preparados para su reutilización (a veces llamados portlets). La visión sucinta proporcionada en este documento puede complementarse con el uso de licencias de evaluación de los productos que se tratan, que cuentan con tutoriales que dan una idea más práctica de las funcionalidades proporcionadas. En el apartado de “Recursos en la Web” pueden encontrarse las direcciones Web de estos productos. Dentro del mundo Java existen otras alternativas opensource para la creación de portales que contienen todos los servicios anteriormente mencionados por las otras plataformas y que cumplen los estándares de industria, y que son alternativas perfectamente válidas para un pro-yecto de grandes prestaciones. En este capítulo se revisarán las al-ternativas existentes.[EN]In this chapter we offer an overview of two commercial products currently widely used in the professional development of e-commerce portals and websites. Although these products currently also provide support for developing B2B processes, here we will focus primarily on the development of portals using reusable speakers (sometimes called portlets). The succinct vision provided in this document can be complemented with the use of evaluation licenses for the products in question, which include tutorials that give a more practical idea of the functionalities provided. The Web addresses of these products can be found in the "Web Resources" section. Within the Java world there are other opensource alternatives for the creation of portals that contain all the services previously mentioned by the other platforms and that meet industry standards, and that are perfectly valid alternatives for a pro-ject of great features. In this chapter we will review the existing alternatives

    Creación de portales para B2C

    Get PDF
    [ES]En este capítulo ofrecemos una panorámica general de dos productos comerciales muy utilizados actualmente en el desarrollo profesional de portales y sitios Web de comercio electrónico. Aunque estos productos actualmente también proporcionan soporte para desarrollar procesos de B2B, aquí nos centraremos fundamentalmente en el desarrollo de portales mediante componentes preparados para su reutilización (a veces llamados portlets). La visión sucinta proporcionada en este documento puede complementarse con el uso de licencias de evaluación de los productos que se tratan, que cuentan con tutoriales que dan una idea más práctica de las funcionalidades proporcionadas. En el apartado de “Recursos en la Web” pueden encontrarse las direcciones Web de estos productos. Dentro del mundo Java existen otras alternativas opensource para la creación de portales que contienen todos los servicios anteriormente mencionados por las otras plataformas y que cumplen los estándares de industria, y que son alternativas perfectamente válidas para un proyecto de grandes prestaciones. En este capítulo se revisarán las alternativas existentes.[EN]In this chapter we offer an overview of two commercial products currently widely used in the professional development of e-commerce portals and websites. Although these products currently also pro-vide support for developing B2B processes, here we will focus primarily on the development of portals using reusable speakers (sometimes called portlets). The succinct vision provided in this document can be complemented with the use of evaluation licenses for the products in question, which include tutorials that give a more practical idea of the functionalities provided. The Web addresses of these products can be found in the "Web Resources" section. Within the Java world there are other opensource alternatives for the crea-tion of portals that contain all the services previously mentioned by the other platforms and that meet indus-try standards, and that are perfectly valid alternatives for a project of great features. In this chapter we will review the existing alternatives

    Crystallizing Application Configurations

    Get PDF
    Software applications have both static and dynamic dependencies. Static dependencies are those derived from the source code. Dynamic runtime dependencies are established at runtime and may be based on information external to the source code, such as configuration files. Flexible applications commonly rely on configuration to adapt to diverse environments. An application's configuration encodes runtime dependencies between the various parts of the application. Reverse engineering tools have traditionally been based solely on static dependencies extracted from the source code. Neglecting dynamic dependencies encoded in an application's configuration can result in incorrect or incomplete program comprehension. Unfortunately, many applications store their configuration in an ad hoc, unstructured format from which it is not feasible to extract runtime dependencies by traditional reverse engineering. Our work takes advantage of well structured, published configuration formats, such as that of J2EE applications. Using these formats we are able to extend reverse engineering to analyse this previously neglected information. We introduce a technique called crystallization, which extracts configuration facts that encode dynamic dependencies. We use these recovered facts to predict and validate dynamic dependencies. Crystallizing configurations has the potential to increase developer productivity by providing better program comprehension
    corecore