zhaobin

增强信息技术;感悟商业管理;探索商业与技术融合;丰富自我修养;享受时尚生活;记录心路历程;使Blog作为自我改变之记录与监督的平台。
posts - 25, comments - 59, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Java模块化,OSGi,以及Azure云计算

Posted on 2010-02-03 12:12 赵斌 阅读(2503) 评论(0)  编辑  收藏 所属分类: 1.技术区
 

Java模块化,OSGi,以及Azure云计算

模块化Java简介

Java的模块化概念、历史、来龙去脉进行了很好的介绍。了解模块化的重要性,区分编译时和运行时模块化的差别,构建自己的Plugins来扩展系统,JSR 277(现已废止)到JSR 291Java 7将是模块化的。

模块化Java:静态模块化

使用OSGi来理解模块化的概念,是很好的OSGi入门示例。重点是带版本的依赖,使得多版本同时运行成为可能,为模块进化提供了基础。

模块化Java:动态模块化

精彩的就是这篇动态模块化。

只要servlet引擎没有保持对老版应用的引用,这些类就像其他Java对象一样被垃圾回收器回收了。——可能这是平台支撑热部署的关键。

通过查找和绑定,使得每次动态获得服务的引用,确保不会保持老版本的服务对象。实现的方式可以是context.getService(getServiceReference("java.sql.Driver")),或者用ServiceTracker来实现,使用ServiceTracker来管理服务依赖通常被认为是管理关系的好方法。还可以对服务的属性进行过滤,以便选择所需的服务。

关于Java 7模块系统

通过OSGi实现逻辑分离,通过CXF实现物理分离,再用ASFOSGiCXF统一成服务,实现可配置的动态部署。

JSR-294引入了新的可见性关键字“module”,意味着模块化成为语言特性,模块之间的可见性限制将会由编译器来负责检查。

依赖、部署时依赖、可选依赖、依赖冲突,或许模块之间的关系就是相互依赖的关系。

Bundle.update:模块化的一年

感觉整个Java都在向模块化发展,大量的第三方基于OSGi的创新正在不断涌现,新的规范甚至包括WAB,所以,我们的产品内部使用OSGi是完全没有问题的。

同时,要和其他的应用打交道,则要通过WS-*,这是我们表现出完全开放性的一面。

Azure于今日正式商用收费

云计算终于来了,不知道是否真的便宜?

Windows Azure Platform是微软完整的云计算平台,目前包含了如下3大部分:

  • Windows Azure:即运行在云中的一个操作系统,对于用户来说是虚拟且透明的,其中提供了一系列底层服务。
  • SQL Azure:运行于云中的一个关系数据库,和SQL Server 2008基本一致。
  • AppFabric:全名是Windows Azure platform AppFabric,提供了访问控制、服务总线等服务,用于把基础应用连接到云中。

云操作系统 + 云数据库 + 云平台,其实,我们提供的ASF+ORG+AC等,相当于Azure的云平台。

Google BigTable则是Google的云数据库,Google还多一个云操作系统GFS



赵斌原创,保留一切权利,转载请保留引用:www.blogjava.net/zhaobin,注明转载除外,谢谢!】

只有注册用户登录后才能发表评论。


网站导航: