|
这个主题共有 60 回复 / 5 页 [
1 2 3 4 5
下一页
]
|
|
|
|
|
|
Jmservice对于服务的思考
|
发表: 2007年05月05日 12:57
|
回复
|
|
如果以OOA思想分析服务,那么服务应该存在静态与动态之分。
1 静态方面 主要分析服务域中可能存在什么,例如:组件, 容器。。。。
2 动态方面
主要分析服务可以处理什么,放映服务的处理能力和功能。如果也把服务看成对象的话,那么服务是可能存在多方面的应用,这好比一个对象有不同的业务方法处理不同的操作。既然服务具有动
态行为,那么如何体现呢?仔细思考服务的应用行为方面,也许我们可能发现这样的动作词语:部署,配置等,也许将来我们可能更多的服务应用服务方面被发现或被定义,当然您也可以为您自己的服务定义一些应用方面。在Jmkernel中,服务方面助手被设计用来帮助服务执行这些方面的操作。如果以服务为中心,那么服务是允许存在多个方面助手,当然也可以没有助手,从这一点上来说,我们很容易把服务与助手关系比做:"千手观音" 或者说是一把“瑞士军刀“。事实上我们是希望通过方面助手引导服务内部流程,而流程的细节需要设计人员根据业务自行设计。
3: 方面驱动 既然服务有方面助手,那么谁来驱动它们呢?Jmkernel的一个重要特色:担当控制者角色,驱动并控制这些服务方面助手,当然服务本身也可以使用它自己的方面助,服务的方面助手是允许动态增加的,以适应将来业务的拓展,这意味着Jmkernel是一个可扩展的内核。
Jmkernel不仅仅是一个控制器,它还是一个服务集成平台,我们力求它简单易懂。
|
|
|
|
|
|
回复:Jmservice对于服务的思考
|
发表: 2007年05月05日 12:58
|
回复
|
|
|
|
|
|
|
|
回复:回复:Jmservice对于服务的思考
|
发表: 2007年05月05日 13:01
|
回复
|
|
Jmin website
我个人认为服务是一个或一堆对外部产生影响的对象总称,服务关注内外与过程.
服务的主动式与被动式
我个人认为服务是存在主动式与被动式,称需要请求性的服务为被动服务,而将那些不请自来的服务为主动式服务。
1: 例如:学生请教老师问题,老师作出回答,这个过程中,首先学生向老师发出请求,然后老师才有问而答,事实上,老师为学生服务了。这就叫请求式服务或被动式服务。
2:例如:邮件员送信,可是很多时候我们并不清楚自己是否有信件,只有等邮件员将信送到你手中才知道,在这之前,我们也许并没有请求过邮件员。 这个叫主动式服务。
以上为个人观点,也许存在错误,还望得到您的指点! 谢谢! [该贴被older于2007年08月22日 14:21修改过]
|
|
|
|
|
|
回复:Jmservice对于服务的思考
|
发表: 2007年06月01日 10:34
|
回复
|
|
首先肯定你的精神和努力。
建议你的项目纳入SCA这样标准主流技术中来,看看这篇文章: http://www.jdon.com/jivejdon/thread/31872.html
参与其中一些开源项目,这样对自己发展非常有利。
目前你的项目看上去还处于理论探索中,其实这些问题已经在SOA/SCA中明确,如果你再探索,会很慢,在走一个弯路。上次SUN一个开源项目邀请你参与你应该珍惜机会。
另外,有点请你协助一下:关于Jmservice的问题最好放在一个帖子中,如果找不到以前的帖子可以使用本站搜索Jmservice就可以,这样便于大家对你项目进度的关注。
组件服务技术表面是一个简单技术,背后有很深的背景,建议你从EJB Spring IOC/AOP这些方面进行逐步研究,如果你能写出类似“关注SCA”这样文章来,说明你的理论水平已经非同一般,这样再进行开源产品化,必然立意高新,又不会范重新发明轮子的错误。
继续努力,早日看到你的项目能够跑起来。
|
|
|
|
|
|
re:Jmservice对于服务的思考
|
发表: 2007年06月01日 20:29
|
回复
|
|
对老师的教诲,我铭记在心! 我会再接再励,继续努力,不辜负老师的期望!
|
|
|
|
|
|
:re:Jmservice对于服务的思考
|
发表: 2007年06月12日 20:00
|
回复
|
|
利用Jmservice平台支撑的小server(Jmin0.3)参考实现版. 运行环境:JDK1.4 https://jmin.dev.java.net/release.html
该连接可以下载Jmin server及Jmservice草稿
Jmin特点 1: 命名(JNDI) 1: RMI 2: POJO(可供远程调用) 3: DataSource
未来Jmservice平台展望 1:网络通讯采用XML(有点困难,本人不熟悉XML技术,目前是Java序列化,需要高人的指点). 2:服务控制方面可以自由配置(已实现) 3:助手命名统一定义(已实现) 4:方面助手可动态增加(服务可以有任意多个助手,灵活吧, 已实现) 5:助手可拆卸与重装(这支手不好使,咱就给它换一支新的.灵活吧,呵呵.已实现) 6:助手实现业务处理(正在编码中,好简单!) 7:为业务助手生成Stub(类似EJB的Stub). 8:业务助手内实现业务工作流(正在思考中.)
多么简单的一个服务平台啊! 个人认为助手方面应用应该算是一个模型吧,当然不一定把助手应用于服务中,也可以用于其他的.
菜鸟程序员 --- Chris
[该贴被older于2007年06月12日 21:02修改过] [该贴被older于2007年06月12日 21:16修改过]
|
|
|
|
|
|
回复::re:Jmservice对于服务的思考
|
发表: 2007年06月12日 22:16
|
回复
|
|
Hi,
I am sorry for bothering you.Now,I want to invoke service's interface by a simple way. The below way is feasible ? Please help me.
1: define service file
//Math.xml: this file will be deployed on server <services> <service id =”Math” class=”math.MathService” > <property id =”assistants”> <map> <entry id =”cal ” value =”math.Cal ” > <map> </property> </service> </services>
2: Define Class files package math; public class MathService extends J2eeAbstractService{ } package math; public class Cal extends J2eeAbstractAssistant{ /** * @BI */ public int add(int a, int b){ return (a + b); }
/** * @BI */ public int del(int a, int b) { return (a – b); } }
3: Generate interface file for service I think we can use some tools to generate some interface files,the following XML is expected result. Of cource, We can also use a tool to generate stub file for service's aspect assistant, this like EJB stub file.
//MathBI.xml <services> <service id =”Math” > <aspect id=”cal”> <BI id =”add”> <int/> <int/> </BI> <BI id =”del”> <int/> <int/> </BI> </aspect> </service> </services>
4:How to contol invocation …………………… J2eeService service = serviceContainer.getService(netRequest.getServiceId()); J2eeAssistant ast = service.getAssisant(netRequest.getAspectId()); Method method = ast.getDeclaredMehtod(netRequest.getOperation()); Object result = method.invoke(ast,netRequest.getParameters()); ……………………
我个人是想尝试组件以外的方式来处理业务应用,在这过程我使用了服务方面助手来做组件同样的事情,以达到企业应用.这个构思可以吗? 谢谢!
|
|
|
|
|
|
回复:回复::re:Jmservice对于服务的思考
|
发表: 2007年06月13日 20:19
|
回复
|
|
|
为什么不使用一些现成的IOC框架呢,底层的实现都是通过反射来实现的啊~
|
|
|
|
|
|
回复:回复:回复::re:Jmservice对于服务的思考
|
发表: 2007年06月13日 21:07
|
回复
|
|
gougou3250,你应该是看过我的代码了吧. 你的建议不错!
当初做这个IOC时,我看了彭老师的代码,觉得要完全弄清楚,得花不少时间. 所以后来决定自己做一个算了,花了个把星期写的,不是很好! 我想等我其他部分完成后,可能会重写这个.
[该贴被older于2007年06月13日 22:12修改过]
|
|
|
|
|
|
re:Jmservice对于服务的思考
|
发表: 2007年06月14日 12:50
|
回复
|
|
我没看过你的代码,只是看了下你在上面帖的东西 其实IOC框架无非就是内部一个反射的方法,一个配置文件,一段管理代码(容器),用该管理代码调用配置文件来知道有哪些类,类之间的调用,然后利用反射来实现真正的调用。要说一些开源的东西,真正吸引人眼球的是,对各种细节都能考虑到。软件的精髓是细节。 别人都已经做了的东西,就没必要重复发明轮子了。而且你也不一定有人家做的好(通常情况下是这样的)。你可以整理修改人家的代码,弄出你想要的东西来,这样比你自己单独做要好。 至于BANQ的框架,我只看过一些他的介绍。觉得不咋的,是在一些开源框架上做的自己的一层封装,只是让一个拥有多年经验的开发人员来做,难度不大的那么一个东西。对于一些对JAVA世界认识不深,习惯于几句代码就搞定一套系统的人来说,确实是个好东西(如果它再好用点,少点BUG)。有点装逼了 呵,我也是一个初学者
|
|
|
|
|
|
回复:re:Jmservice对于服务的思考
|
发表: 2007年06月14日 13:37
|
回复
|
|
说得好! 我是学习者,只是想锻炼一下, IOC不是我所要表达的目的
细节是非常重要的,有时候把软件当艺术品看就好了.
在这里,我是想探讨:方面助手!
|
|
|
|
|
|
re:Jmservice对于服务的思考
|
发表: 2007年06月15日 18:01
|
回复
|
|
看了下最顶上的贴子 根据你的定义,感觉就是个IOC啊~~ 只是IOC只是写的配置文件,或者程序中写死。你是不是要出个界面来简化操作还是怎么回事呢,能给我讲解下么?谢谢
|
|
|
|
|
|
re:Jmservice对于服务的思考
|
发表: 2007年06月15日 19:43
|
回复
|
|
非常感谢gougou3250回贴.可能是我没有解释清楚,真不好意思.
我这作品的底层是采用IOC技术,但IOC只是它的一部分.
这里有它的可运行程序与代码,下载地址: Jmin server
文档下载地址: Jmservice草稿
挺简陋的,让大家见笑了.
[该贴被older于2007年06月15日 23:48修改过]
|
|
|
|
|
|
re:Jmservice对于服务的思考
|
发表: 2007年06月15日 20:35
|
回复
|
|
|
|
|
|
|
|
回复:re:Jmservice对于服务的思考
|
发表: 2007年06月15日 21:14
|
回复
|
|
我当初做这个时,并不知道它属于哪个领域的.说句老实话,到目前为止,我还不了解SOA的一些内容.可能与SCA还是有点区别的,因为SCA是服务组件架构,而我的是服务助手和面向服务方面控制,我并不想制作一个超大的软件出来,毕竟个人能力有限,再加上我还是菜鸟水平,所以我去寻找服务的一些共同特性,或者说有意思的特性吧.比如部署,仔细观察 EJB方面,web方面等,它们都有共同特点,那就是支持部署.又如,服务是有可能支持调用的.所以我的出发点也许和SOA是不一样的,我把服务看成是一个封闭的bean,是一个可大可小的bean.既然是和对象类比的话,我想服务是有应该具有对多方面的特点,正如一个对象有可能有多个操作方法一样. 我想既然被称为服务,那么这协作过程是需要对象的参与.
在Jmservice平台中,可以配置一些方面控制器去服务的运作,那么如何控制呢? 我就设计了服务方面助手来供外部驱动(类似对方的方法).我们可以把每一个方面的控制器看做是一个Jmservice一个子架构.在Jmservice平台中最初的设计是基于事件驱动的,可能现在有所不一样的.呵呵.
其实OB为我第一个服务试验作品,与04年完成了第一版,目前已经改观,将成为Jmservice平台的一部分,我打算用它来支撑服务的调用.
[该贴被older于2007年10月11日 08:49修改过]
|
|
|
|
|
|
这个主题有 60 回复 / 5 页 [
1 2 3 4 5
下一页
]
|
|
|