最近研究了一下腾讯的微服务体系开发框架。

官方的搭建过程https://github.com/TarsCloud/Tars/blob/master/Install.zh.md

自己填的坑:

不得不说,文档写得很好,几乎没遇到什么坑。只有两点要注意:

1.源码安装mysql的时候,把mysql.sock软链接到指定目录,否则,直接执行mysql -uroot的话会报找不到sock的错误。

ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

2.mysql安装完给用户授权的过程走不下去了。

查看了mysql.user表:

+-----------+------------+-------------------------------------------+-------------+--------------+------------------------+
| Host | User | Password | Select_priv | Trigger_priv |几乎所有字段都是 |
+-----------+------------+-------------------------------------------+-------------+--------------+------------------------+
| localhost | root | *50589636A595E29BA0838B1F6CFC0E01D153BD86 | Y | Y | Y |
| 127.0.0.1 | root | *50589636A595E29BA0838B1F6CFC0E01D153BD86 | Y | Y | Y |
| :: | root | *50589636A595E29BA0838B1F6CFC0E01D153BD86 | Y | Y | Y |
| localhost | | | N | N | N |
| % | mysql-sync | *48309E59A67428E25091B13BE36A68E8423723E4 | N | N | N |
| % | root | *50589636A595E29BA0838B1F6CFC0E01D153BD86 | Y | Y | Y |
| % | tars | *1DF96CEAE847CFE085D5A2FB82A466D0BCF87C98 | Y | Y | Y |
| localhost | tars | *1DF96CEAE847CFE085D5A2FB82A466D0BCF87C98 | Y | Y | Y |
+-----------+------------+-------------------------------------------+-------------+--------------+------------------------+

上文忽略了一些字段,不过意思是,默认的localhost针对所有的user都是N,即使是grant使用的tars@'%'也不能访问。

这时需要单独针对tars@'localhost'来解决:

grant all on *.* to 'tars'@'localhost' identified by 'tars2015' with grant option;flush privileges;

3.如果选择的是一键安装,那么需要注意配置:

vim Tars/deploy/comm.properties

4.用TarCPP的时候到Tars/framework/tarscpp/servant/script目录下执行

./create_http_server.sh之后

到自己的目录下,make && make tar,然后服务部署的时候选“非TARS”就没有问题了。

什么是Tars?

腾讯 Tars 是腾讯内部使用的 TAF(Tencent Application Framework)的对外开源版,去掉了许多冗杂多余的部分。该框架集开发、运维、微服务、RPC 等为一体。对程序员而言,这就是一个能够快速搭建整个微服务体系的开发框架。这个框架支持基于 C++、Node.js、PHP、Java 等语言开发,最新版本已经支持后台开发语言新贵——Go。

参考文献:

写一个HelloWorld:https://cloud.tencent.com/developer/article/1381300

官方填的一些坑:https://cloud.tencent.com/developer/article/1372998?appinstall=0

Tars帮阅文集团实现架构变革:https://segmentfault.com/a/1190000010152740

为什么用微服务:https://mp.weixin.qq.com/s/UFeS4zJRW-zBZDbvqAdIPg

阅文集团 梁晨 - TARS-PHP:https://www.slidestalk.com/u5/TARS_PHP

腾讯微服务框架Tars的初体验的更多相关文章

  1. 【Tars】腾讯微服务框架Tars介绍

    目录 1.介绍2.设计思路3.整体架构4.平台特性1. 介绍 Tars是[基于名字服务][使用Tars协议]的高性能[RPC]开发框架,同时配套一体化的[服务治理平台],帮助个人或者企业快速的以微服务 ...

  2. net core 微服务 快速开发框架 Viper 初体验2020-10-17

    1.Viper是什么? Viper 是.NET平台下的Anno微服务框架的一个示例项目.入门简单.安全.稳定.高可用.全平台可监控.底层通讯可以随意切换thrift grpc. 自带服务发现.调用链追 ...

  3. 腾讯开源微服务架构 Tars,高性能 RPC 开发框架

    腾讯微服务架构 Tars 于今日正式开源. Tars 取名于电影“星际穿越”中的机器人,是支持多语言的高性能 RPC 开发框架和配套一体化的服务治理平台,可以帮助企业或者用户以微服务的方式快速构建稳定 ...

  4. net core 微服务框架 Viper 调用链路追踪

    1.Viper是什么? Viper 是.NET平台下的Anno微服务框架的一个示例项目.入门简单.安全.稳定.高可用.全平台可监控.底层通讯可以随意切换thrift grpc. 自带服务发现.调用链追 ...

  5. hello world .net core 微服务框架 Viper

    1.Viper是什么? Viper 是.NET平台下的Anno微服务框架的一个示例项目.入门简单.安全.稳定.高可用.全平台可监控.底层通讯可以随意切换thrift grpc. 自带服务发现.调用链追 ...

  6. Viper 微服务框架 编写一个hello world 插件-02

    1.Viper是什么? Viper 是.NET平台下的Anno微服务框架的一个示例项目.入门简单.安全.稳定.高可用.全平台可监控.底层通讯可以随意切换thrift grpc. 自带服务发现.调用链追 ...

  7. 高性能高可用的微服务框架TarsGo的腾讯实践

    conference/2.3 高性能高可用的微服务框架TarsGo的腾讯实践 - 陈明杰.pdf at master · gopherchina/conferencehttps://github.co ...

  8. 面试都在问的微服务、服务治理、RPC、下一代微服务框架... 一文带你彻底搞懂!

    文章每周持续更新,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 单体式应用程序 与微服务相对的另一个概念是传统的单体式应用程序( ...

  9. 日调度万亿次,微服务框架TSF大规模应用——云+未来峰会开发者专场回顾

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 演讲者:张浩 腾讯云中间件产品负责人 背景:众多开发者中,一定经历类似的甜蜜烦恼,就是当线上业务规模越来越大,系统分支发展越来越多的时候,初 ...

随机推荐

  1. 【jmeter】使用jmeter进行测试-示例

    介绍 jmeter主要用于负载测试,详细信息可以参见Google. 这里使用一个简单的示例,来介绍jmeter的使用. 涉及的功能点包括: HTTP HEADER配置 HTTP Request配置 J ...

  2. 查找算法(7)--Hash search--哈希查找

    1.哈希查找 (1)什么是哈希表(Hash) 我们使用一个下标范围比较大的数组来存储元素.可以设计一个函数(哈希函数, 也叫做散列函数),使得每个元素的关键字都与一个函数值(即数组下标)相对应,于是用 ...

  3. python 使用 elasticsearch 常用方法(聚合)

    #记录聚合查询方法 from elasticsearch import Elasticsearch es = Elasticsearch(['xx.xx.xx.xx:9200']) #获取最小的年龄r ...

  4. [ ceph ] 基本介绍及硬件配置

    1. Ceph简介 所有的 Ceph 存储集群的部署都始于一个个 Ceph节点.网络和 Ceph存储集群.Ceph 存储集群至少需要一个 Ceph Monitor.一个 Manager和一个Ceph ...

  5. FastJson 对json中的KEY值的大小写转换方法

    /** * json大写转小写 * * @return JSONObject */ public static JSONObject transToLowerObject(String json) { ...

  6. 浅谈 Docker 安全合规建设

    通过阅读网上帖子及浏览相关信息,大家可能会产生一种错觉:Docker 安全性不足,对 Docker 导入生产环境持保守态度.不过实际情况是,虽然我们需要对容器的安全性高度关注,但只要使用得当,完全可以 ...

  7. windows系统常用命令

    dir 指定要列出的驱动器,显示当前文件夹下的文件   /?可显示所有命令 显示当前路径下的所有文件的绝对路径,包含子文件夹中的内容 D:\test > dir /b /s /o:n /a:a  ...

  8. springcloud使用之断路器hystrix

    上一篇文章提到我们最近开了个新项目,目的是将新的业务放到新项目中,老项目单独维护,再逐步迁移老项目到新项目里.但就在前端时间生产环境发生了一个事故,事故开始的异常是我们的业务发现前端h5页面办理很慢, ...

  9. day55——django引入、小型django(socket包装的服务器)

    day55 吴超老师Django总网页:https://www.cnblogs.com/clschao/articles/10526431.html 请求(网址访问,提交数据等等) request 响 ...

  10. DRF框架(四)——单整体改(put)、单局部改(patch)、群局部改(patch)

    单整体改   单指的是单独一条数据,整体指这条数据的所有字段都必须传值修改 基于上篇文章的代码修改,序列化层不用变,只修改views.py 1) 单整体改,说明前台要提供修改的数据,那么数据就需要校验 ...