Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Java 与 云计算

5,363 views

Published on

Java课程作业第一小组PPT演示稿

Published in: Education

Java 与 云计算

  1. 1. Java 与云计算
  2. 2. Contents 云计算简介 一 Java 与云计算 二 云计算实例 三 云计算在教育中的应用 四
  3. 3. 一、云计算简介
  4. 4. 1.1 云计算的含义 <ul><li>云计算是 技术 还是 理念 </li></ul>
  5. 5. 1.1 云计算的定义 <ul><li>狭义:指 IT 基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源(硬件、平台、软件)。 提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。这种特性经常被称为像水电一样使用 IT 基础设施。 </li></ul><ul><li>广义:是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的服务。这种服务可以是 IT 和软件、互联网相关的,也可以使任意其他的服务。 </li></ul>
  6. 6. 1.1 云计算的含义 <ul><li>云计算 (Cloud Computing) 是 并行计算 (Parallel Computing) 、分布式计算 (Distributed Computing) 和网格计算 (Grid Computing) 的发展 , 是 虚拟化 (Virtualization) 、效用计算 (Utility Computing) 、 IaaS( 基础设施即服务 ) 、 PaaS( 平台即服务 ) 、 SaaS( 软件即服务 ) 等概念混合演进并跃升的结果 。 </li></ul><ul><li>云计算先驱: Google 、 yahoo 、 IBM 、 Microsoft 、 SUM 、 Amazon </li></ul>
  7. 7. Bob 的云办公 <ul><li>通过 Google Calendar 来管理日程安排 ; </li></ul><ul><li>通过 Gmail 收发邮件 ; </li></ul><ul><li>通过 Google Talk 来与同事朋友进行联系 ; </li></ul><ul><li>通过 Google Docs 来编写在线文档 ; </li></ul><ul><li>通过 Google Scholar 进行搜索相关论文; </li></ul><ul><li>通过 Google Translate 翻译一些英文; </li></ul><ul><li>通过 Google Charts 来绘制一些图表 ; </li></ul><ul><li>通过 Google Blogger 来分享日志 , </li></ul><ul><li>通过 Google 的 YouTube 来分享视频; </li></ul><ul><li>通过 Google 的 Picasa 来编辑分享图片 ; </li></ul>
  8. 8. 1.2 云计算的原理 <ul><li>基于互联网的超级计算模式 -- 即把存储于个人电脑、移动电话和其他设备上的大量信息和处理器资源集中在一起,协同工作。在极大规模上可扩展的信息技术能力向外部客户作为服务来提供的一种计算方式。 </li></ul>Mb PC 企业电脑 和服务器 PDA
  9. 9. 1.2 云计算的原理
  10. 10. 1.3 云计算的服务形式 <ul><li>SAAS ( Software as a Service ) ; </li></ul><ul><li>PAAS ( Platform as a Service ) ; </li></ul><ul><li>IAAS ( Infrastructure as a Service ); </li></ul><ul><li>云存储; </li></ul><ul><li>MSP (管理服务提供); </li></ul><ul><li>商业服务平台 ; </li></ul>
  11. 11. 1.4 云计算的特点 超大规模 虚拟化 高可靠性 通用性 高可扩展性 按需服务 极其廉价
  12. 12. 二、 Java 与云计算
  13. 13. James Gosling
  14. 14. 2.1 Java 的优势 JAVA 的 优势 1. 简单性 2. 兼容性 3. 简易性 4. 安全性 5. 动态性 6. 高性能 7. 解释性 8 . 健壮性
  15. 15. 2.1 Java 在云计算中的优势 <ul><li>Java EE was designed to be deployed to a distributed environment. Cluster management and extensive monitoring are supported by major application servers. </li></ul><ul><li>EJB 3 programming model encourages stateless, idempotent, and atomic or transactional design. </li></ul>Java Champion Adam Bien
  16. 16. 2.1 Java 在云计算中的优势 <ul><li>Java EE 5 and Java EE 6 come with standardized packaging -- the Enterprise Archive (EAR), which makes the provisioning of cloud apps relatively easy. And EAR solves some cloud-interoperability issues: It's a lot easier to move an app from one cloud to another. Java EE 5 and 6 are portable, so applications can be easily moved from one application server to another, regardless of whether they run in a cloud or not. They both will run on JDK 5 or higher. </li></ul><ul><li>JVM itself comes with fantastic remote debugging, profiling, and monitoring capabilities. This already greatly simplifies the development of distributed apps and should also simplify cloud-enabled apps </li></ul>
  17. 17. 2.2 Java 实现云计算的两种方式 Heavy UI oriented. Heavy framework oriented These types of applications or framework usually provide UI-based consoles, management applications, plugins, etc that provide the only way to manage resources on the cloud such as starting and stopping the image, etc. The key characteristic of this approach is that it requires a substantial user input and human interaction and thus they tend to be less dynamic and less on-demand. This approach strongly emphasizes dynamism of resource management on the cloud. The key characteristic of this approach is that it requires no human interaction and all resource management can be done programmatically by the grid/cloud middleware - and thus it is more dynamic, automated and true on-demand.
  18. 18. 云计算环境
  19. 19. 2.3 Java 与分布式计算 <ul><li>基于 JAVA 的分布式程序设计: </li></ul><ul><li>基于 Socket 的编程 </li></ul><ul><li>基于 RMI 的分布式编程 </li></ul><ul><li>基于 CORBA 的分布式编程 </li></ul>分布式计算是将大任务化分为小任务,各台参与计算的电脑之间是在物理地域上的分布,一般有服务器作为“中央”,参与计算的电脑不用了解工作原理,仅仅只是就自己感兴趣的项目做贡献而已。 分布式 计算
  20. 20. 2.4 Java 与并行计算 <ul><li>JDK 1.5 引入 java.util.cocurrent 包 </li></ul><ul><li>Java 中的多线程技术实现并行计算( JET 平台) </li></ul><ul><li>Java SE 5 中的锁,原子量 并行容器,线程调度 以及线程执行 </li></ul><ul><li>基于 Java 的分布并行计算环境 Java PVM </li></ul>并行 计算 并行计算是指同时对多个任务或多条指令、或对多个数据项进行处理。并行计算的主要目的:一是为了提供比传统计算机快的计算速度;二是解决传统计算机无法解决的问题。
  21. 21. 2.5 Java 与网格计算 <ul><li>网格计算: </li></ul><ul><li>通过利用大量 异构计算机 (通常为桌面)的 未用资源 ( CPU 周期和磁盘存储),将其作为嵌入在分布式电信基础设施中的一个 虚拟的计算机集群, 为解决大规模的计算问题提供了一个模型。 网格计算的焦点放在支持跨管理域计算的能力 ,这使它与传统的计算机集群或传统的分布式计算相区别 </li></ul>
  22. 22. 基于 Java 网格计算主要开发 工具包: Globus ToolKit 4.0 基于 Java 的开发框架与平台: GridGain 2.0& JPPF Java Grid Computing Library J2EE 环境与 API 网 格 计 算 开 发 2.5 Java 与网格计算
  23. 23. 2.6 Java 与虚拟化技术 <ul><li>Java 虚拟机 </li></ul><ul><li>Java 语言的一个非常重要的特点就是与平台的无关性。而使用 Java 虚拟机是实现这一特点的关键。 Java 虚拟机( Java Virtual Machine )是一个虚构出来的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。 Java 虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统 </li></ul>虚拟化 技术 是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。
  24. 24. 2.6 Java 与虚拟化技术 <ul><li>Sun 公司的虚拟化技术支持:管理程序 (Sun xVM Server) 、 OS (Solaris Containers) 、网络 (Crossbow) 、存储 (COMSTAR, ZFS) 和应用程序 (GlassFish 和 Java CAPS 技术 ) 。 </li></ul>
  25. 25. 三、云计算实例
  26. 26. 3.1 Sun 与云计算 <ul><li>2008 年 5 月, Sun 在 2008JavaOne 开发者大会上宣布推出“ Hydrazine ” 计划, Sun Microsystems 公司 (NASDAQ: JAVA) 展示了 Sun 开放式云计算平台 (Sun Open Cloud Platform) ,即 Sun 公司的开放式云计算基础架构,该平台由 Sun 公司的行业领先软件技术,包括 Java 、 MySQL 、 OpenSolaris 和开放式存储等所驱动。 </li></ul>
  27. 29. 3.2 Google App Engine <ul><li>Google App Engine 可让您在 Google 的基础架构上运行您的网络应用程序。 App Engine 应用程序易于构建和维护,并可根据您的访问量和数据存储需要的增长轻松扩展。 </li></ul><ul><li>可支持 Java + Groovy+ JDO 开发云服务 </li></ul><ul><li>Google File System 文件系统 </li></ul><ul><li>MapReduce 分布式编程环境 </li></ul><ul><li>分布式大规模数据库管理系统 BigTable </li></ul><ul><li>Google Docs </li></ul><ul><li>http://hxqabc.appspot.com </li></ul>
  28. 31. 3.3 Abicloud <ul><li>开源的基于 Java 平台的云计算平台 </li></ul><ul><li>Abicloud is an open source infrastructure software for the creation and integral management of Public & Private Clouds based on heterogeneous environments. The tool mainly offers users the capacity for scaling, management, automatic and immediate provision of servers, storage, networks, virtual network devices as well as applications. </li></ul><ul><li>采用 Spring + Grails 基于 java Web 的云计算 </li></ul>
  29. 34. 四、云计算在教育中的运用
  30. 35. 4.1 云计算与移动学习 <ul><li>移动学习 </li></ul><ul><li>是指利用无线移动通信网络技术以及无线移动通信设备 ( 如移动电话、 PDA 、 Pocket PC  等 )  获取教育信息、教育资源和教育服务的一种新型学习形式。 </li></ul><ul><li>云计算对移动学习的影响 </li></ul><ul><li>1 改变现有移动学习模式 </li></ul><ul><li>2 整合最丰富的教育信息资源 </li></ul><ul><li>3 创建自主、多元的虚拟学习社区 </li></ul><ul><li>4 对移动学习设备要求大幅降低 </li></ul>
  31. 36. 4.2 云计算与 PLE <ul><li>Personal Learning Environment </li></ul><ul><li>即个人学习环境。加拿大教育技术专家 Stephen Downes 描述的“ PLE 是一种工具、服务、人和资源的松散集合体,是利用网络力量的一种新方式” </li></ul><ul><li>1 云计算模型下 PLE 的要素: </li></ul><ul><li>( 1 ) 正规教育机构,( 2 ) 网络教育服务供应商,( 3 ) 提供云计算服务的网络公司,( 4 ) 个人终端设备, </li></ul><ul><li>2 云计算模型下 PLE 的特点 </li></ul><ul><li>( 1 ) Pull 与 Push 相结合,( 2 ) 浏览器即客户端 </li></ul>
  32. 37. 4.2 云计算与 PLE <ul><li>云计算模型下 PLE 的概念框架 </li></ul>
  33. 38. 4.3 云计算与泛在学习 <ul><li>泛在学习 :(Ubiquitous Learning ,简称 U-Learning) 是使用带有 RFID 、红外数据通信端口、蓝牙端口或 GPS 卡等通信接口的 PDA ,智能手机,笔记本电脑等移动设备,利用 IEEE 802.11b 、 GPRS 等无线通信技术,在任何地点、任何时间学习任何自己感兴趣的内容。 </li></ul>
  34. 39. 4.3 云计算与泛在学习
  35. 40. 主题: Java 与 云计算 Thank You !

×