tarsjs
tars支持nodejs,非常好的一个功能。
另外,开发中,我们希望客户端支持js来直接调用服务。 这个时候需要用到tars2node。
简单写个脚本搞定
/usr/local/tars/cpp/tools/tars2node ./*.tars
for element in `ls *.js`
do
echo $element
browserify ./$element > ./tarsjs/$element
done
rm *.js
另外,这时候可能会报错: Cannot find module '@tars/stream'
那么: npm install -g @tars/stream 即可。
https://cloud.tencent.com/developer/article/1394046 TARS配置解析源码分析
tars管理:
Web管理系统:在Web上可以看到服务运行的各种实时数据情况,以及对服务进行发布、启停、部署等操作;
Registry(路由+管理服务):提供服务节点的地址查询、发布、启停、管理等操作,以及对服务上报心跳的管理,通过它实现服务的注册与发现;
Patch(发布管理):提供服务的发布功能;
Config(配置中心):提供服务配置文件的统一管理功能;
Log(远程日志):提供服务打日志到远程的功能;
Stat(调用统计):统计业务服务上报的各种调用信息,比如总流量、平均耗时、超时率等,以便对服务出现异常时进行告警;
Property(业务属性):统计业务自定义上报的属性信息,比如内存使用大小、队列大小、cache命中率等,以便对服务出现异常时进行告警;
Notify(异常信息):统计业务上报的各种异常信息,比如服务状态变跟信息、访问db失败信息等,以便对服务出现异常时进行告警;
原则上要求全部的节点之间网络互通,至少每台机器的node能够与公共框架节点之间都是可以连通的。
https://zhuanlan.zhihu.com/c_1099707347118718976 某人的tars分析专栏 https://cloud.tencent.com/developer/column/74121
https://blog.csdn.net/killer0128/article/details/81583273 tars源码解析
http://www.techweb.com.cn/data/2018-06-25/2678890.shtml TSeer则是TARS的轻量化名字服务方案。它作为一套服务注册发现容错的方案,基于轻巧灵便、对业务的侵入性低、支持多种负载均衡算法等特点。在服务发现的核心功能之上,TSeer还为用户提供可靠的故障容错策略。目前,TSeer广泛运用于QQ浏览器、应用宝、腾讯手机管家、腾讯文学等腾讯产品中,承载着日均百亿级的请求量。