OSGi 系列(六)之服务的使用】的更多相关文章

本文介绍了一次生产环境的JVM GC相关参数的调优过程,通过参数的调整避免了GC卡顿对JAVA服务成功率的影响. 这段时间在整理jvm系列的文章,无意中发现本文,作者思路清晰通过步步分析最终解决问题.我个人特别喜欢这种实战类的内容,经原作者的授权同意,将文章分享于此.原文链接:Java服务GC参数调优案例,下面为转载此文的内容,备注部分为本人添加,主要起到说明的作用. 背景以及遇到的问题 我们的Java HTTP服务属于OLTP类型,对成功率和响应时间的要求比较高,在生产环境中出现偶现的成功率突…
OSGi 系列(六)之服务的使用 1. 为什么使用服务 降低服务提供者和服务使用者直接的耦合,这样更容易重用组件 隐藏了服务的实现细节 支持多个服务的实现.这样你可以互换这实现 2. 服务的使用 2.1 服务的注册 bundle 通过在框架的服务注册中心注册一个服务对象来发布一个服务.安装在 OSGi 环境下的其它 bundle 就可以访问到在框架中注册的服务对象. bundle 通过使用 BundleContext.registerService,在框架中注册一个服务对象: registerS…
OSGi 系列(十六)之 JDBC Service compendium 规范提供了 org.osgi.service.jdbc.DataSourceFactory 服务 1. 快速入门 1.1 环境准备 <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.core</artifactId> <version>5.0.0</version> </…
OSGi 系列(七)之服务的监听.跟踪.声明等 1. OSGi 服务的事件监听 和 bundle 的事件监听类似,服务的事件监听是在服务注册.注销,属性被修改的时候,OSGi 框架会发出各种不同的事件供事先注册好的事件监听器处理. 1.1 服务的事件监听简介 服务的事件类型: 事件名称 描述 事件值 REGISTERED 服务被成功注册 1 MODIFIED 服务属性被修改 2 UNREGISTERING 服务被卸载 4 MODIFIED_ENDMATCH 服务属性被修改,且不再匹配当前监听 8…
辅助链接 Dubbo系列之 (一)SPI扩展 Dubbo系列之 (二)Registry注册中心-注册(1) Dubbo系列之 (三)Registry注册中心-注册(2) Dubbo系列之 (四)服务订阅(1) Dubbo系列之 (五)服务订阅(2) Dubbo系列之 (六)服务订阅(3) RegistryDirectory 当RegistryDirectory#substribe()方法被RegistryProtocol#refer()方法调用时,本地服务消费端会与注册中心交互,拉取最新的服务提…
WCF编程系列(六)以编程方式配置终结点   示例一中我们的宿主程序非常简单:只是简单的实例化了一个ServiceHost对象,然后调用open方法来启动服务.而关于终结点的配置我们都是通过配置文件来完成的.在本讲中,我们将直接使用编程方式来配置终结点. ServiceHost类 即服务宿主类,它为我们的服务提供一个运行环境.ServiceHost的构造函数有三个重载: ServiceHost()  使用无参数的构造必须要有相应的配置文件设置. ServiceHost(Object,Uri[])…
OSGi 系列(十二)之 Http Service 1. 原始的 HttpService (1) 新建 web-osgi 工程,目录结构如下: (2) HomeServlet package com.github.binarylei.servlet; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest;…
OSGi 系列(十三)之 Configuration Admin Service OSGi 的 CM 就是 Configuration Admin Service,是用于管理 Bundle 属性.并在属性发生变更时通知相应的 Service,这是保持 OSGi 动态性的很关键的一个服务. 1. ConfigurationAdmin 用于管理配置数据的服务,主要有两个作用: 获取配置数据 更新配置数据 public class ConfigurationAdminDemo { private Co…
OSGi 系列(十四)之 Event Admin Service OSGi 的 Event Admin 服务规范提供了开发者基于发布/订阅模型,通过事件机制实现 Bundle 间协作的标准通讯方式. 事件发布者使用 Event Admin 服务发送基于主题 (Topic) 的事件,任何对某一主题感兴趣的事件订阅者都会收到该事件,并且做出相应的反应. 1. Event Admin Service 介绍 (1) Event Admin Service 规范 compendium 规范提供了 Even…
OSGi 系列(十)之 Blueprint blueprint 是 OSGi 的一个规范,类似于 spring 的 IOC,用来处理 OSGi 的动态特性,可以大大简化服务的使用. blueprint 是以 xml 文档来构建应用,但它也有采用 Annotation 的方式,我们在此只介绍 xml 的方式. 在 bundle 里,这个 xml 默认的位置在 OSGi-INF/blueprint 下,也可以在 MANIFEST.MF 里指定其它位置上的 xml 文档. Bundle-Bluepri…