HI!,你好,我是zane,zanePerfor是一款我开发的一个前端性能监控平台,现在支持web浏览器端和微信小程序端。
我定义为一款完整,高性能,高可用的前端性能监控系统,这是未来会达到的目的,现今的架构也基本支持了高可用,高性能的部署。实际上还不够,在很多地方还有优化的空间,我会持续的优化和升级。
开源不易,如果你也热爱技术,拥抱开源,希望能小小的支持给个star。
项目的github地址:https://github.com/wangweianger/zanePerfor
项目开发文档说明:https://blog.seosiwei.com/performance/index.html
Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。
Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。
这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。
这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。
针对于zanePerfor这样的用户访问行为,页面性能监控系统,但又要求实时处理的限制,这是一个可行的解决方案。
zanePerfor中对于kafka的应用使用了kafka-node包,并在此基础上封装了egg-kafka插件。
zanePerfor初步的探索了kafka在node.js中的应用,以下内容主要讲解kafka在zanePerfor项目中的使用方式。
如果你对在node.js中使用kafka有更多的建议和心得,也希望能跟我一起分享。
zanePerfor项目中kafka应用介绍:
启用kafka配置说明:
// config/config.default.js
// kafka 配置 (report_data_type=kafka生效)
// 配置参考 https://www.npmjs.com/package/kafka-node
config.kafka = {
client: {
kafkaHost: 'localhost:9092',
},
producer: {
web: {
topic: 'zane_perfor_web',
partition: 0, // default 0
attributes: 0, // default: 0
// timestamp: Date.now(),
},
wx: {
topic: 'zane_perfor_wx',
},
},
// consumer 和 consumerGroup消费任选其一即可
// 优先选择consumer消费,两种消费配置任留一种即可
consumer: {
web: {
topic: 'zane_perfor_web',
offset: 0, // default 0
partition: 0, // default 0
isone: false, // 此参数默认不可更改
total_limit: 10000, // 消息队列消费池限制数, 0:不限制 number: 限制条数 高并发时服务优雅降级方案