Tars README

The project's README from github.com/TarsCloud/Tars. As one markdown file: README.md.

TARS - A Linux Foundation Project

What is TARS?

TARS is a Linux Foundation project. It is a high-performance RPC framework based on name service and Tars protocol, also integrated administration platform, and implemented hosting-service via flexible schedule.

Tars, aka TAF(Total Application Framework), has been used in Tencent since 2008. It supports C++, Java, Nodejs and PHP for now. This framework offers a set of solution for development, maintenance and testing, which making development, deployment and testing service efficiently. It integrated extensible protocol for encoding/decoding, high-performance RPC communication framework, name service, monitor, statistics and configuration. You can use it to develop your reliable distributed application based on microservice fast, and reach fully efficient service management.

Nowadays it's used by hundreds of bussiness in Tencent, services that developed base on TAF run on 16 thousands of machines.

See the detailed introduction SUMMARY.md.

Supported platforms

For now it supports OS as below:

Supported languages

For now it supports following languages:

Version Management

Tars is composed of many modules, scattered in many warehouses, and the basic framework version and language version can develop independently. In view of this, from version 2.1.0, the Framework version tag is printed on the tarsframework warehouse, no longer reflected in the tars warehouse

In addition, each component will have its own version. When there is a version dependency specification, each component will have its own version

Installation

  1. If you are new to Tars, please read documentation installation.
  2. First deploy, please read documentation source.
  3. Install by docker, detail information: docker。

Submodule

Directory Features
framework Source code implementation of C++ language framework basic service
cpp C++ language framework rpc source code implementation
java java language framework rpc source code implementation
go go language framework rpc source code implementation
nodejs nodejs language framework rpc source code implementation
php php language framework rpc source code implementation
tup source code implementation of tup group protocol in each language
web manage tars web source implementation

Developer's documentation

See docs.

License

The open-source protocol Tars used is BSD-3-Clause, see LICENSE.md.

Chinese Version

Read Chinese Version

Tars (TarsCloud/Tars)

Searching Database…

10.1K ·GitHub
Что это такое?Высокопроизводительный RPC-фреймворк, построенный на службе имён и протоколе Tars, со встроенной платформой администрирования и гибким управлением размещением сервисов. Изначально это был внутренний проект Tencent под названием TAF, а теперь это проект Linux Foundation.
Это фреймворк, под который я пишу код, или платформа, которую я разворачиваю и запускаю?И то, и другое: вы пишете сервисы, используя RPC-библиотеки для C++, Java, Nodejs, PHP или Go, и разворачиваете сам фреймворк Tars — службу имён, мониторинг, сбор статистики, конфигурацию и веб-консоль администрирования — чтобы размещать сервисы и управлять ими.
Как мне развернуть и запустить окружение Tars?README отправляет новичков к документации по установке, тех, кто разворачивает впервые, — к руководству по развёртыванию из исходников, а Docker предлагает как альтернативный способ установки.
На каких языках я могу писать свои сервисы?C++, Java, Nodejs, PHP и Go — для каждого есть своя RPC-реализация, которая хранится как сабмодуль в этом репозитории.
Он проверен в продакшене или всё ещё экспериментальный?Он работает в продакшене в Tencent с 2008 года: сервисы сотен компаний работают примерно на 16 000 машин, и сейчас это проект Linux Foundation.
На каких операционных системах он реально работает?Linux, Mac (поддерживается только с версии 2.1.0) и Windows 7 или новее.
Могу ли я использовать его в коммерческих продуктах?Да — лицензия BSD-3-Clause, разрешающая открытая лицензия.
Что Tars умеет помимо самих RPC-вызовов?Из коробки он включает расширяемый протокол кодирования и декодирования, высокопроизводительный RPC-слой, службу имён, мониторинг, отправку статистики и централизованную конфигурацию, а также веб-консоль для управления сервисами.
Что находится внутри этого репозитория?Сабмодули покрывают ядро C++-фреймворка, отдельные RPC-реализации для cpp, java, go, nodejs и php, исходники группового протокола tup и платформу веб-управления tars.
Почему с версиями возникает путаница?Tars разбит на множество репозиториев, и фреймворк с языковыми компонентами версионируются независимо: начиная с 2.1.0 тег версии фреймворка хранится в репозитории tarsframework, а у каждого компонента — своя.
Что такое TAF?TAF (Total Application Framework) — первоначальное название Tars в Tencent, где он используется в продакшене с 2008 года.
What are similar projects?go-zero, dtm, consul, zuul, redpanda, nsq, xxl-job, brpc
Creator
TarsCloud
Size
15.6 MB
Stars
10.1K
Age
9y
Commits · 90 Days