我正在尝试使用Apache Kafka开发Pub / Sub系统。 Rest API是用NodeJS编写的。我使用的库是No-Kafka。用户传入他想要使用的队列的主题和偏移量(起始位置),API返回前10条消息。
var Consumer = new kafka.Consumer;
var client1 = new kafka.Client;
var consumer = new Consumer(client1, [{
topic: 'TutorialTopic',
partition: 0,
offset: 0
}], {
autoCommit: true,
fromOffset: true
});
app.get('/consume/:off', function(req, res) {
console.log("In Consume");
consumer.setOffset('TutorialTopic', 0, req.params.off);
consumer.on('message', function(message) {
console.log("Consumer Ready");
console.log(message);
});
res.send("Consumed");
});
我正在使用Hurl-it在线发送HTTP请求。每当我提出请求时,都需要450到2000毫秒。这是一个很好的响应时间吗?如果不是,我该如何提高API的速度?
如果您需要其他信息,请与我们联系。 提前谢谢。
编辑:我的代码与Kafka-node。
class Texture {};
class Color {};
class Square {};
class ITextured { public: virtual void setTexture(Texture) = 0; };
class IColored { public: virtual void setColor(Color) = 0; };
class ColoredSquare : public IColored, public ITextured, public Square {
Texture tex;
Color col;
public:
virtual void setTexture(Texture t) { tex = t; }
virtual void setColor(Color c) { col = c; }
};
因为图书馆提供了一个" on"事件处理程序,如何识别两个或更多人同时访问我的网站?使用kafka-node访问特定偏移量的消息的最佳方法是什么?