• 博客(26)
  • 收藏
  • 关注

原创 DCache 分布式存储系统|Set, ZSet 缓存模块的创建与使用

作者 | Eaton导语 | 在之前的系列文章中,我们介绍了 DCache 及其 KV, K-K-Row 和 List 缓存模块的使用,本文将继续介绍如何使用 DCache 中的集合类型缓存模块 —— Set 和 ZSet 缓存模块。系列文章DCache 分布式存储系统|DCache 部署与应用创建DCache 分布式存储系统|Key-Value 缓存模块的创建与使用DCache 分布式存储系统|K-K-Row 缓存模块的创建与使用DCache 分布式存储系统|List 缓存模块的创建与使.

2021-03-18 17:39:33 493

原创 DCache 分布式存储系统|List 缓存模块的创建与使用

作者 | Eaton导语 | 在之前的系列文章中,我们介绍了 DCache 及其 KV 和 K-K-Row 缓存模块的使用,本文将继续介绍如何使用 DCache 中的列表类型缓存模块 —— List 缓存模块。系列文章DCache 分布式存储系统|安装部署与应用创建DCache 分布式存储系统|Key-Value 缓存模块的创建与使用DCache 分布式存储系统|K-K-Row 缓存模块的创建与使用DCache 分布式存储系统|List 缓存模块的创建与使用目录List 模块简介创建.

2021-03-11 17:36:10 517

原创 DCache 分布式存储系统|K-K-Row 缓存模块的创建与使用

作者 | Eaton导语 | 随着微服务与云的发展,分布式架构的需求变得越来越普遍,传统的 SQL 结构化存储方案已经跟不上脚步,于是 NoSQL 出现了。DCache 作为基于 TARS 的分布式 NoSQL 缓存系统,完美支持 TARS 服务。前一篇文章中,我们介绍了怎么创建并使用 KV 模块,本文将继续介绍如何创建和使用 DCache 中的 K-K-Row 缓存模块。系列文章DCache 分布式存储系统|DCache 部署与应用创建DCache 分布式存储系统|Key-Value 缓存..

2021-02-25 10:50:40 754

原创 DCache 分布式存储系统|Key-Value 缓存模块的创建与使用

作者 | Eaton导语 | 随着微服务与云的发展,分布式架构的需求变得越来越普遍,传统的 SQL 结构化存储方案已经跟不上脚步,于是 NoSQL 出现了。DCache 作为基于 TARS 的分布式 NoSQL 缓存系统,完美支持 TARS 服务。在前一篇文章中,我们介绍了 DCache 的特性、如何在 TARS 上部署 DCache 并创建一个应用 TestDemo。本文将继续介绍如何创建和使用 DCache 中的 KV 缓存模块。系列文章DCache 分布式存储系统|DCache 部署与应..

2021-02-03 11:42:06 1046 2

原创 DCache 分布式存储系统|安装部署与应用创建

作者 | Eaton导语 | 随着微服务与云的发展,分布式架构的需求变得越来越普遍,Web 上的数据类型不再单一,数据量呈爆发式增长。传统的 SQL 结构化存储方案已经跟不上脚步, NoSQL 便出现了。DCache 作为基于 TARS 的分布式 NoSQL 缓存系统,完美支持 TARS 服务,能够方便地在 TARS 服务中使用,本系列文章将着重介绍 DCache 的安装与使用。那么如何拥有这套系统呢?本文将对 DCache 的安装和应用创建方式进行介绍。目录简介背景SQL 与 NoSQL.

2021-01-22 17:01:05 1764 5

原创 TARS 染色日志|收集记录特定日志

作者|Eaton导语|记日志可以说是程序猿/媛日常开发中的家常便饭了。在日常业务场景中,经常需要分析特定用户的日志,一般的日志记录方式很难满足需求,有什么解决办法呢?TARS 框架中包含染色日志的功能,能够记录特定用户的日志,优雅地解决这一问题。本文将会介绍染色日志的原理和功能,以及如何在 TARS 中使用染色日志。目录背景初识染色日志TARS 染色功能概述染色日志初体验主动打开染色日志被动打开染色日志添加特定逻辑总结背景很多业务场景中,需要对特定用户的行为进行追踪.

2021-01-21 15:43:32 1361 2

原创 TarsBenchmark | 服务性能压测利器

作者|Eaton导语| 在服务正式上线前,我们需要确保服务上线后的可用性和稳定性,因此对系统的处理能力和稳定性进行全面的测试是非常必要的。压力测试是其中重要的一环,本文将介绍如何使用 TarsBenchmark 对 TARS 服务进行压测。目录压测简介TarsBenchmark 的使用安装部署服务压测总结压测简介在标准开发流程中,测试贯彻整个流程,包括但不限于单元测试、接口测试、集成测试、压力测试等。其中压力测试是服务上线之前的最后关键一环。压测是通过不断给服务接口施加压.

2021-01-20 15:02:55 692

原创 TARS RPC 通信框架|提供多种远程调用方式

作者 | Eaton导语 | TARS 中提供了一套高性能 RPC 通信框架,实现了服务间的高效通信。RPC 作为微服务的核心技术,支撑着移动互联网时代下不断增长的用户和海量的请求。为了满足更多的需求,TARS 支持了同步、异步等多种调用方式。本文将会详细阐述 TARS 中的几种远程调用方式。目录RPC 简介TARS 服务寻址方式远程调用方式同步调用异步调用单向调用Hash 调用总结RPC 简介RPC,即远程过程调用,是一种通过网络向远程计算机请求服务,而不需要了解底层网络技术的思想。通过屏蔽消息.

2020-12-24 13:01:48 1374 1

原创 TARS 服务信息上报|全方位服务监控

作者 | Eaton导语 | 服务上线运营后,出现异常是难免的事,通常情况下会通过服务日志排查问题。然而这种排查问题的方式有时候是低效的,特别是日志比较多,还不知道如何下手的时候,非常麻烦。那让服务主动报告出现的错误不就行了吗?本文将对 TARS 中的几种信息上报方式进行介绍。目录简介状态统计上报异常上报TarsCppTarsGo属性统计上报总结简介TARS 框架中集成了服务信息上报的功能,包含了服务的状态统计上报、异常上报、属性统计上报等三个信息上报统计方式,实现对服务健康程度的多方面监控。这三.

2020-12-24 11:49:18 817 4

原创 TARS 的服务鉴权功能|避免数据泄露

作者 Eaton导语在我们使用微服务架构时,经常会选择通过 RPC 通信框架方便地实现服务间的调用。但方便的同时也带来了一些安全隐患,任何用户都能够访问对外公开的接口,可能造成部分敏感数据的泄露,这是我们不希望看到的,怎么避免呢?这要求我们对访问的用户进行鉴别,因此我们需要一个细化到服务的鉴权访问机制。本文将介绍 TARS 的服务鉴权及其使用方法。目录什么是鉴权TARS 服务鉴权服务准备被调服务 TestServer主调服务 HttpServer开启鉴权修改被调用方的 endpoint,开启鉴权机制.

2020-12-07 15:06:49 727

原创 TARS 的服务自定义命令|实现高效服务管理

作者 Eaton导语日常开发中,除了基础的服务管理功能,有时我们还需要进行一些特殊的业务相关的服务管理,比如清除服务缓存,改变服务的模式、停用服务某个接口等。由于这些需求和业务耦合性较高,框架层面一般不会提供这样的功能,开发者甚至需要自己开发额外接口来实现。为了解决这一问题,TARS 在框架层面提供了自定义命令的功能。目录TARS 自定义命令简介添加自定义命令实现自定义命令响应函数将响应函数与自定义命令绑定使用自定义命令TARS 自定义命令的原理总结TARS 自定义命令简介TARS 自定义命令功.

2020-12-04 16:17:06 790

原创 TarsCpp 组件之 MySQL 操作

作者 Eaton导语在后台开发中,我们经常需要和数据库打交道,而在 C++ 开发中,MySQL Connector/C++ 只提供了基础操作接口,复杂的业务常常需要一系列复杂的调用过程,非常容易出错,那有什么方法可以避免呢?TarsCpp 中提供了数据库操作类 TC_Mysql,使我们能够方便地进行数据库操作,提高业务开发效率。本文将对 TC_Mysql 进行介绍分析。目录MySQL简介MySQL 常用 API存在的问题TC_Mysql数据库配置接口 TC_DBConf数据库操作类 TC_Mysql.

2020-11-02 20:18:23 3430 7

原创 TarsCpp 组件 之 智能指针详解

作者 Eaton导语 在 C++ 中,内存管理是十分重要的问题,一不小心就会造成程序内存泄露,那么怎么避免呢?通过智能指针可以优雅地管理内存,让开发者只需要关注内存的申请,内存的释放则会被自动管理。在文章 开源微服务框架 TARS 之 基础组件 中已经简要介绍过,TARS 框架组件中没有直接使用 STL 库中的智能指针,而是实现了自己的智能指针。本文将会分别对 STL 库中的智能指针和 TarsCpp 组件中的智能指针进行对比分析,并详细介绍 TARS 智能指针的实现原理。目录智能指针简介引.

2020-11-02 20:12:31 1382 2

原创 CICD实战——服务自动测试

CICD实战——服务自动测试导语随着微服务、容器、云计算的发展,近些年 DevOps、CI/CD 等概念越来越多地映入大家的眼帘。许多开发团队都希望应用这些理念来提高软件质量和开发效率,工欲善其事必先利其器,什么样的工具才能够满足开发者的需求?TARS 作为一套优秀的开源微服务开发运营一体化平台,拥有多语言、高性能、敏捷研发、高可用等特点。那么 TARS 是否能够完美支持 DevOps 理念呢?在上一篇文章中,我们了解了如何将开源 CI 工具 Jenkins 与 TARS 集成实现 TARS 服务的自动

2020-09-27 12:18:59 1850 1

原创 CICD实战——服务自动构建与部署

导语随着微服务、容器、云计算的发展,近些年 DevOps、CI/CD 等概念越来越多地映入大家的眼帘。许多开发团队都希望应用这些理念来提高软件质量和开发效率,工欲善其事必先利其器,什么样的工具才能够满足开发者的需求?TARS 作为一套优秀的开源微服务开发运营一体化平台,拥有多语言、高性能、敏捷研发、高可用等特点。那么 TARS 是否能够完美支持 DevOps 理念呢?本文通过将开源 CI 工具 Jenkins 与 TARS 集成,进行一次完整的实践来展示如何实现 TARS 服务的自动化构建与部署的流程。

2020-09-27 00:58:38 2649 2

原创 Linux基金会唯一官方微服务培训课程免费学 | 快速构建稳定可靠的微服务应用

​微服务的概念在2005年被首次提出,随后的十年互联网爆发式增长。业务需求越来越复杂、用户习惯和行为迅速变化,互联网行业线上应用急速增长。传统架构无法应对如此快速的变更及扩张,微服务具有松耦合、灵活发布等特性,能够满足越来越复杂的业务需求。Research&Markets预测,全球云微服务市场将在2019-2025年增长22.5%。这意味着在未来企业需要更多了解和熟悉微服务的人才。同时借助合适的微服务框架去逐步构建整个微服务体系是企业数字化转型一条快捷途径。现在,Linux 基金会和TARS..

2020-09-16 14:49:49 1103

转载 微服务开源框架TARS 之 框架服务解析

作者 herman简介本文源自herman的系列文章之一《鹅厂开源框架TARS之运营服务监控》。相关代码已按TARS开源社区最新版本更新。TARS框架为用户提供了涉及到开发、运维、以及测试的一整套解决方案,帮助一个产品或者服务快速开发、部署、测试、上线。 它集可扩展协议编解码、高性能RPC通信框架、名字路由与发现、发布监控、日志统计、配置管理等于一体。其中发布监控,日志统计等运维功能依靠着TARS框架中的运维服务和工具,本文将对各运维服务的功能和作用进行分析,并通过部分源码帮助读者进一步理解TARS.

2020-09-06 21:23:34 1570 1

转载 微服务开源框架TARS 之 基础组件

作者 herman导语本文源自herman的系列文章之一《鹅厂开源框架TARS之基础组件》。相关代码已按TARS开源社区最新版本更新。TARS开源框架库里面用C++实现了比较多的公用组件,这些组件一般统一放在 util 文件夹,在应用层也可以自由使用,工欲善其事必先利其器,所以有必要把这些工具组件做了解,更好的使用,提高效率。接下来,本文将对如下TarsCpp组件进行分析:线程操作线程安全队列: TC_ThreadQueue普通线程锁: TC_ThreadLock线程基类: TC_Thr.

2020-09-01 15:02:36 1180

转载 TarsGo 服务获取自定义模版(配置)值

作者:amc导语:之前的文章中我们介绍了如何使用TarsGo创建HTTP服务和TARS RPC服务,本篇文章中,我们将介绍如何在TarsGo服务中获得自定义模板的配置值。TARS 模版是什么?TARS 框架中,有两种可以称之为 “配置” 的地方:其中一个是可以自定义的,在 TARS 管理页面中称为 服务配置。在这里,可以按照开发者喜欢的格式上传文件,并且支持配置的热更新。而另一个地方,则是本文要讲的。这个在 TARS 中称为 “模版”。模版可以在 TARS 管理平台顶部的 “运维管理” 进去后,.

2020-08-13 21:49:39 778

转载 TarsGo 服务 Hello World——RPC 通信

作者:amc引言:上一篇文章介绍了如何创建安装 TarsGo,同时也阐述了如何开始一个 TarsGo HTTP 服务。本文就要开始 TarsGo 的主力业务了:基于 TARS 自带的 RPC 协议,设计 TarsGo 服务。本文的内容大致思路与官方 Quick Start 相同,但例子会有所不同,同时对于一些坑也会解释得详细点。本文的代码可以在我的 GitHub repo 中找到。设计目标上一篇文章中,我的 HTTP 服务器向前端返回一串 Json 字符串,其中包含了服务器时间。这一次,我设计一个.

2020-08-07 20:33:43 1014

原创 TARS ISSUE 一周快报 第三期

大家好,这是TARS基金会出品的《TARS ISSUE 一周快报》这周大概内容有:上传程序包后报错怎么办?tc_mysql的库是线程安全的吗?P90,P99和P999的汇总思路是什么?initialize用shm初始化,计算queueSize的原因是什么……这些问题,让我们一起来看看吧!!!▼▼▼已解决的问题:1、如图所示的逻辑是正常的吗? 感觉_interval不能生效, 查日志没看到loadData()里面的逻辑定期执行。https://github.com/TarsCloud.

2020-08-02 23:49:09 1004 1

转载 TarsGo 服务 Hello World——从 HTTP 开始

作者:amc导语:在进行本文实践之前,需要先完成TARS架的搭建,参考TARS框架部署文档。在我们的实际应用中,目前基于 TARS,主要采用 Node.js 和 C++ 进行开发。对于 C++ 程序员来说,目前最热门的后台开发语言莫过于 Google 的 Go。TARS 框架最新的版本已经把内部的 TafGo 开源为 TarsGo。作为与时俱进的程序员,当然要尝鲜啦。环境准备GO环境开发环境显然要安装好 Go 了。请注意的是,TarsGo 要求 Go 版本 1.9 以上。最新稳定版已经是 1.14.

2020-07-31 22:41:05 1392 2

原创 TARS ISSUE 一周快报 第二期

大家好,这是TARS基金会出品的《TARS ISSUE 一周快报》这周大概内容有:tarsnode升级的具体操作是怎样?启动遇到配置问题又怎么办?tcp or udp,提高效率的方法教教我。更有Java里的stringToProxy,会触发ConCurrentHashMap computeIfAbsent的死循环bug……这些你怎么想,快来看看这周的快报吧!!!▼▼▼已解决的问题:1、Tarsframework的master分支编译完后,如果我需要升级tarsnode,只替换tarsnode

2020-07-26 15:14:07 862

原创 TARS ISSUE 一周快报 第一期

大家好,这是TARS基金会出品的《TARS ISSUE 一周快报》这周大概内容有:集群MySql报错怎么办?服务器部署出现问题?Tars注册中心有不会的地方?服务器IP怎么更改……话不多说,让我们一起来看看吧!▼▼▼已解决的问题:1、为什么使用集群MySQL会报错?(详见备注)https://github.com/TarsCloud/Tars/ISSUE/5412、可以在一台服务器上部署同一个端口不同的Object吗?https://github.com/TarsCloud/

2020-07-19 23:16:12 891

原创 微服务开源框架TARS的RPC源码解析 之 初识TARS C++服务端

作者:Cony导语:微服务开源框架TARS的RPC调用包含客户端与服务端,《微服务开源框架TARS的RPC源码解析》系列文章将从初识客户端、客户端的同步及异步调用、初识服务端、服务端的工作流程四部分,以C++语言为载体,深入浅出地带你了解TARS RPC调用的原理。什么是TARSTARS是腾讯使用十年的微服务开发框架,目前支持C++、Java、PHP、Node.js、Go语言。该开源项目为用户提供了涉及到开发、运维、以及测试的一整套微服务平台PaaS解决方案,帮助一个产品或者服务快速开发、部署、测试.

2020-07-16 15:53:26 3477 6

原创 微服务开源框架TARS的RPC源码解析 之 初识TARS C++客户端

微服务开源框架TARS的RPC源码解析 之 初识TARS C++客户端什么是TARS初识客户端CommunicatorServantProxy与ServantProxyFactoryCommunicatorEpollObjectProxy与ObjectProxyFactory初始化代码1. 执行stringToProxy2.执行Communicator的初始化函数3.尝试获取ServantProxy4.获取ObjectProxy5.建立ObjectProxy与AdapterProxy的关系6.继续完成Ser

2020-07-08 16:17:41 2822 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除