在 Java EE 容器中扩展云特性毕业论文外文资料翻译.doc
《在 Java EE 容器中扩展云特性毕业论文外文资料翻译.doc》由会员分享,可在线阅读,更多相关《在 Java EE 容器中扩展云特性毕业论文外文资料翻译.doc(25页珍藏版)》请在三一办公上搜索。
1、 毕业设计(论文)外文资料翻译学生姓名: 学 号: 所在学院: 电子与信息工程学院 专 业: 计算机科学与技术 指导教师: 2011年 12月 25 日English Data Original TextTranslates the foreign materials: Author: Jayakrishnan Ramdas(jkramdas), Senior Technology Architect, Infosys LTD J. Srinivas(jsrinivas), Principal Architect, Infosys LTD Book title (or paper topic)
2、: Extend Java EE containers with cloud characteristics Publishing house (or publication name): Publication time (or registration number): august 2011Extend Java EE containers with cloud characteristicsStrategies and patterns to extend JEE containers/apps with parallelism, elasticity, multi-tenancy,
3、and securityThe Java Enterprise Edition (JEE) architecture is based on components with features that effectively manage application transactions and statefulness, multi-threading, and resource pooling. A JEE application is easier to write even with complex requirements since the business logic is or
4、ganized in reusable components and the server provides the underlying services in the form of a container for each component type.We thought it would be a novel idea to add even more power to the concept of container services in JEE by adding support for some of the powerful ideas of cloud computing
5、 namely parallelism, elasticity, multi-tenancy, and security. This article describes the strategies and patterns to extend JEE containers and applications with cloud computing characteristics. It includes: An outline of each cloud characteristic we integrated. A layout of the existing characteristic
6、s of JEE applications. A description of our approach to extend the JEE container to the cloud. A design strategy for this type of migration, one that includes the concepts of parallelism, synchronization, storage, elasticity, multi-tenancy, and security.Cloud characteristicsFigure 1 explains what cl
7、oud is and the different cloud deployment models.Figure 1. A birds eye view of cloud service models and their componentsAt the bottom of the cloud stack is the Infrastructure as a Service (IaaS) level. Here the infrastructure has moved to cloud and the cloud now facilitates the deployment of softwar
8、e including business applications. However the IaaS does not have an application-development environment or any testing services. As the figure shows, the top level of abstraction is elasticity, automated deployment, and utility computing.The Platform as a Service (PaaS) level provides an environmen
9、t for application software to be created, deployed, and maintained. The PaaS provider has to give the basic life cycle services like build, deploy, testing and building block services like state management, transaction, and security, as well as resource management services through the runtime.The So
10、ftware as a Service (SaaS) level provides an environment for the end-user to access an application and use it.The basic cloud characteristics that an application needs to support are elasticity and multi-tenancy. Other characteristics, like provisioning and automation, are supported through the depl
11、oyment features of the application server and do not have much of an impact on the code. Parallelism, distributed storage needs, and security enhancements act as supporting characteristics that need to be addressed to achieve elasticity and multi-tenancy.Lets look at each in more detail.ElasticityEl
12、asticity is the ability to scale up and down the infrastructure based on need. During peak load times, more instances are added to the cluster and when the load comes down, the number of instances comes down. This should be done dynamically. This function is enabled by features of the application se
13、rver to support dynamic clustering techniques.Elasticity is not just an application server solution; the application itself should be able to support elasticity. This means the application needs to be designed to handle the resources that it uses to support concurrency. By designing or customizing a
14、n application to support elasticity, you imply that youve also implemented parallelism, statelessness, and transaction support in your application.The design strategy section describes how to implement elasticity that has all the resources support statelessness in execution and parallelism.Multi-ten
15、ancyMulti-tenancy means your application has the ability for a single application instance to cater to multiple customers; this means that if five customers are using a content management service, then all five customers can use the same application instance with adequate segregation of data and exe
16、cution parameters. To support multi-tenancy, your application needs to engage distributed storage, parallelism, security, and loose coupling.There are two approaches to support multi-tenancy: A single physical storage for all tenants. Multiple physical storage resources for tenants.Parallelism and t
17、ransaction supportIn the content of this article, parallelism is the ability to execute multiple requests in parallel or to split a large dataset task into multiple subtasks which are executed in parallel. This makes better use of available resources. Employing parallelism has a positive impact on t
18、hroughput and performance. Transaction support ensures reliability by guaranteeing that changes in state of any resource are synchronized. These two concepts sit on opposite ends of a spectrum - if you do more of one, you do less of the other.The right mixture of parallelism and transaction support
19、is essential to balance these opposing characteristics. The strategies section introduces four strategies, two each for parallelism and transaction support: A synchronous and asynchronous approach for parallelism. A thread-completion and a data-arrival synchronization approach for transaction suppor
20、t.The migration strategy described follows non-functional approaches to parallelism, but there are some that require functional changes. Like the Google framework MapReduce; MR describes a way of implementing parallelism using the Map function which splits a large data into multiple key-value pairs.
21、 (See Resources for articles on MapReduce and the cloud.)Loose coupling and statelessnessLoose coupling ensures that every call to a service is made through a standard interface; this enables the called component and caller component to be changed without one impacting the other. Loose coupling is i
22、ntroduced by a proxy which invokes the call. Statelessness is a property of loose coupling in which every call to a service does not depend on the previous call. It is achieved by managing state changes in a persistent storage.Both of these are complimentary characteristics that make system calls mo
23、re independent of dependencies.Distributed storageDistributed storage is a means to persist data so that the location of the data is not important. It also means that there are different places where the same data can be stored. This characteristic improves elasticity and statelessness, but can nega
24、tively impact transaction support, so it will require a balancing act.Four strategies for distributed storage include: Replicated nodes: Data is available at different nodes and is replicated immediately to other nodes. Replication on-demand: Triggers are defined that cause data replication manually
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java EE 容器中扩展云特性 毕业论文外文资料翻译 容器 扩展 特性 毕业论文 外文 资料 翻译
链接地址:https://www.31ppt.com/p-2387362.html