`
文章列表
我们在日常的开发过程中,难免遇到程序写得有漏洞的时候,比如数据库连接未释放啊,基于JMX,JMS的操作连接未释放啊,过多的对象创建啊,程序的性能 瓶颈啊等等,到了项目开发后期,常常会因为很早之前写得不太好得代码段而造成整个系统得运行效率下降,严重的则会造成系统崩溃。如何很好的解决这些隐藏得 问题呢?对了那就是使用profile工具对我们的系统进行从cpu,memory,thread方面的分析了。本篇文章,就是利用当前几个比较流行得 profile工具来讲解,如何利用这些工具对我们的基于OSGI系统进行profile。 这里我选取两个proflie工具来讲解,第一个是jprofiler,官网(h ...
1. dependecies repo的建立。 我们需要在eclipse上搭建一个OSGI的集成开发环境,实际上就是构建一个eclipse的目标平台(target),这个目标平台里面包括了一些我们要勇于OSGI开发的所必须用到的插件(Bundle),此外,剔除掉了一些我们不需要的插件来达到一个最干净,精简的OSGI开发环境的搭建,这样就有利于我们在eclipse上执行(run)或者调试(debug)一个方便的统一的OSGI开发环境来进行我们的OSGI相关开发工作。要完成这个目的,当然第一步工作是按照我们自己的需要去定制一个插件集,然后在利用eclipse的构建目标平台的功能(target ...
前言:我相信做基于OSGI框架开发的朋友,对于OSGI的基本单元Bundle应该并不陌生,平时的开发中,做得最多事情就是bundle的开发和打包了,打包其实属于蛮重要的一个过程,为什么说他重要呢,其实打包的过程就是一个理清bundle依赖关系的过程,在对OSGI的学习和使用过程中,个人觉得最令人头痛的就是bundle之间的依赖关系,而且我到现在为止还没有找到一种比较好的工具能够很好的管理OSGI环境中的各个bundle的依赖关系。不过现在公司也有开始考虑做一些类似phpadmin,mysqladmin这样的基于web的管理工具来对bundle进行统一管理,在这之前,如何解决依赖关系,如何将bun ...
  • 2007-10-14 18:56
  • 浏览 14003
  • 评论(5)
  • 论坛回复 / 浏览 (4 / 16907)
最近工作中要做一件这样的事情,就是在一个已有的SWT界面上对一些业务层写好的事件做响应,也就是是SWT的组件订阅了某个时间Listener,当事件触发的时候响应的SWT组件会做出一些信息的显示工作。一开始我们的程序是这样写的:我们所期待的那样做出了反应。问题解决了。总结一下也就是 SWT的在对其组件进行操作的时候有一个单线程的约束,直接的赋值方式是行不通的,SWT在*.widget.Display类中提供了两个方法可以间接的在非用户线程的进行图形构件的访问操作,这是通过的syncExec(Runnable)和asyncExec(Runnable)这两个方法去实现的。而方法syncExec()和a ...
用maven来构建一个web应用程序(这个网上很多就不多介绍了,google一下就能找到),并在pom配置文件里面加入jetty插件来支持应用的及时发布,以便于调试,。 但如果我的web应用中用了jstl的一些taglib的时候由于我配置的jetty服务器本身不能识别taglib于是便会报如下一个错误 The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application 在网上找了一些解决 ...
废话不多说了,log4j相信大家都用过的,现在公司有很多项目的研究都是基于OSGI的,所以我们的日志处理必须换到OSGI环境下去做了。于是相应的 问题也随之而来。其中最主要的问题就是一个classloader的问题。知道OSGI架构原理的都知道OSGI里面的各个Bundle是有独立的 ClassLoader来进行加载的。所以当我们把log4j的配置文件直接放在某个Bundle的classpath下面时是不能被整个OSGI环境识 别的。下面说我们的解决办法。核心思想参考了网上一篇文章(点击这里可以查看)。     1.建一个config-template.ini文件,当然位置和名字都可以由你自己安 ...
  • 2007-07-13 18:26
  • 浏览 11035
  • 评论(7)
  • 论坛回复 / 浏览 (7 / 13005)
Global site tag (gtag.js) - Google Analytics