言归正传,Asynchronous-Messaging Oriented Web Application,这是一个很早的的技术了,大概在04年就提出来吧!只是在今天偶尔看到了,就再回味一下,从08年开始参加工作其实就接触的全是异步,什么消息啦,事件啦等,所以觉得一切就是理所应当,今天看到这个概念的提出,始知道什么技术都是有个过程的。
说起来其实这个概念是由两个技术来支撑,消息与异步。消息就是把所有的调用都包装成消息,用消息来通知对方,而不是调用,比如:
以下是一个AMOWA接口的伪代码
* 客户端将操作包装成消息并发送:
clientOperation.sendMessageBundle(msgBundle, callback);
callback定义了消息的处理策略。
* AMOWA Gateway负责获取前台发送的消息,并处理
messageBundle = buildMessage(request); //将Request包装成MessageBundle
returnedMSGBundle = process(messageBundle); // 处理消息包
sendReturnedBundle(returnedMSGBundle ); //发送处理结果
* 在process方法内部,简单的调用业务逻辑层的处理方式:
bizDTO = bizService.doSomething();
return bizDTO;
AMOWA Engine将会将bizDTO序列化为系统能够辨认的消息格式,生成消息包。
而在消息包中加入回调函数即构成了异步的消息处理
没有评论:
发表评论