Node.js 微服务:Seneca 框架深度解析(上)
在 Node.js 的世界里,回调函数的使用极为普遍。回调函数是一种向程序表明某件事已发生的方式,而且在结果准备好处理之前不会阻塞程序。Seneca 也不例外,它严重依赖回调函数来处理服务调用的响应。尤其是在微服务部署于不同机器时,网络延迟是软件设计中需要考虑的因素,这种依赖就更有意义了。
1. 正确实现控制反转
控制反转是现代软件中不可或缺的一部分,它通常与依赖注入一同出现。控制反转可以定义为一种委托组件和方法的创建或调用的技术,这样模块就无需知道如何构建依赖项,这些依赖项通常通过依赖注入来获取。
Seneca 虽然没有真正使用依赖注入,但它是控制反转的完美示例。以下是一个基本的 Seneca 示例代码:
var seneca = require('seneca')();
seneca.add({component: 'greeter'}, function(msg, respond) {
respond(null, {message: 'Hello ' + msg.name});
});
seneca.act({component: 'greeter', name: 'David'}, function(error,
response) {
if(error) return console.log(error);
console.log(response.message);
});
从企业软件的角度来看,这里有两个组件:生产者( Seneca.add() </
超级会员免费看
订阅专栏 解锁全文
9

被折叠的 条评论
为什么被折叠?



