最后更新:2021-11-18 12:50:28 手机定位技术交流文章
TDR表格是一个基于TDR协议的TcalpusDB表格,该表格是用于测序、反顺序和其他目的的自我研究的RPC通信协议。TcalpusDB中的数据比PB表格(议定书表格)在传输效率和质量方面具有一定的优势,具有广泛的基础供电信游戏使用,在定义语言的表格(PB、TDR)的章节中可提及TDR表格的详细定义。
快速启动TDR协议表的构建涉及多个阶段,下文将详细说明如何根据TcalusDB环境的本地版本的多克格式加快TDR表格的增删速度,所有操作均在理想的开发测试机或云主机上进行。
具体引用: TcaplusDB- Docker 部署的介绍。 我不知道您在说什么, md。 本地的 Docker 环境和 tcapluscli 工具需要在样本代码演示文稿前创建。 当安装 Docker 时, 所有 IP 必须允许所有 IP 访问 Docker 环境以获取以下命令行工具 :
./tcapluscli privilege --endpoint-url=http://localhost --allow-all-ip
以下是 xml 文档的例子: 表_ 测试。 xml 示例, 表格名称: PLAYERONECNT, 表格类型: GENERIC 。
<?xml version="1.0" encoding="GBK" standalone="yes" ?> <metalib name="tcaplus_tb" tagsetversion="1" version="1"> <struct name="PLAYERONLINECNT" version="1" primarykey="TimeStamp,GameSvrID" splittablekey="TimeStamp"> <entry name="TimeStamp" type="uint32" desc="单位为分钟" /> <entry name="GameSvrID" type="string" size="64" /> <entry name="GameAppID" type="string" size="64" desc="gameapp id" /> <entry name="OnlineCntIOS" type="uint32" defaultvalue="0" desc="ios在线人数" /> <entry name="OnlineCntAndroid" type="uint32" defaultvalue="0" desc="android在线人数" /> <entry name="BinaryLen" type="smalluint" defaultvalue="1" desc="数据来源数据长度;长度为0时,忽略来源检查"/> <entry name="binary" type="tinyint" desc="二进制" count= "1000" refer="BinaryLen" /> <entry name="binary2" type="tinyint" desc="二进制2" count= "1000" refer="BinaryLen" /> <entry name="strstr" type="string" size="64" desc="字符串"/> <index name="index_id" column="TimeStamp"/> </struct> </metalib>
在 TcaplusDB 创建表格之前, 必须先构建合适的表格群集 。 在 Docker 本地版本中, 组群会默认地为每个人构建, 因此没有必要在 TcaplusDB 中创建组群生成的表格, 必须构建合适的表格群集 。 在 Docker 本地版本中, 组群会默认地为每个人创建, 因此没有必要创建组群 。
TcaplusDB表格还以组群为基础依赖表格组群,该组群与游戏的逻辑分区相对应,并使用表格组命令如下:
# 查看表格组帮助命令 。 / tcplusclable group-h# 建立一个有 id 4 、 端点- URl 的表格组, 显示在 docker 上方有 80 个端口, 进入 id 表示在 docker 环境连接上有 组群访问 id (操作 id, tdr 群集默认 2), 由字母、 数字和 下划线名称组成的组名 。
我们现在正式进入创建表格部分,我们将根据前面提到的表格组建立TDR表格,并运行创建表格指令,具体如下:
# 查看生成命令提示的表格 。 / tcapluscli table-h# 建立一个包含以下参数的表格: 端点- url, 表格id: group- id, 表格类型: TDR, 表格定义文件: table_ test. xml 和当前路径 。 / tcalpupscliable version -- endpoint- url= http://localhost - access- id=2 - group- id=4 - schedule- type= TDR
将 C++ 示例代码视为如何使用TDR 界面用于 TcaplusDB 表格数据操作的示例。 这里主要为通用类型表格讨论这些数据操作。 示例代码分为两种模式: 同步模式和 Astral 模式, 其中您将主要参考 Astral 模型示例代码, 它允许您阅读 SDK 示例目录的必要代码 。
这是三.46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、68、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、46、
| 组件名 | 下载地址 | 用途 |
|---|---|---|
| TcaplusServiceApi3.46.0.198987.x86_64_release_20200925 | Download | 与 API 有关的 SDK 代码 |
| TSF4G_BASE-2.7.37.0a1db41b8_X86_64_Release | Download | Tdr 以特定包件代码为基础。 |
Tcalpus Service Api00. 经过下载 x86_64_release_20201102, 目标机器的相关目录可以立即卸载, 例如 :
/root/TcaplusServiceApi3.46.1.199000.x86_64_release_20201102
在下载 TSF4G_BASE-a1db41b8_X86_64_Release后,将子目录的内容复制到/usr/local/tsf4g_release,例如:
# 创建目标部署目录 [root@VM-32-centos] #mkdir/usr/local/tsf4g_release# 子目录 [root@VM-32-2-0-centos] #cd/root/TSF4G_BASE-a1db41b8_X86_64_Release/release/release/x86_64# 复制到/ usr/local/ tsf4g_release[root@VM-32-2-cento]
设置两个主要环境变量( TSF4G_HOME 和 TCAPLUS_HOME),在/root/.Bashrc 中添加以下内容,然后运行源/root/.Bashrc, 使其生效如下:
export TSF4G_HOME=/usr/local/tsf4g_release/ export TCAPLUS_HOME=/root/TcaplusServiceApi3.46.1.199000.x86_64_release_20201102/release/x86_64
| 环境依赖 | 版本 | 说明 |
|---|---|---|
| 操作系统 | CentOS7 | x86体系 |
| C++ | C++98 | |
| GCC | 4.8.5 | |
| gcc-c++ | 4.8.5 | yum install -y gcc-c++ |
| tsf4g | 2.7.37 | 相关依赖关系,关于上述关于部署三SF4G的描述 |
示例代码目录位于SDK目录子目录的示例目录中,其中有许多种类不同的指标,多数为Ctdr1.以下为 0_asyncmode_generic_simplic_simple Operation的子目录示例:
# SDK 根目录/ 根目录/ 根目录/ 根目录/ Tcaplus ServiceApi00x86_ 64_ release_ 20201102/ release/ x86_ 64# SDK 公共配置目录/ root/ Tcaplus ServiceApi00.x86_ release_ 20201102/ release/ x86_ 64/ examples/ tcaplus/ C* common_ for_for_ tdr1.0# SDK 示例目录/ root/ Tcapls ServiceApen.x86_
在生成具体示例代码之前,必须配置关于设定公共参数的组群信息的本地版本,目录配置在 endles/ tcaplus/ Ccommon_for_tdr1 上。
#进入公共信息配置目录
cd TcaplusServiceApi3.46.0.198987.x86_64_release_20200925/release/x86_64/examples/tcaplus/C++_common_for_tdr1.0
#修改common.h,将相关集群信息改为本地版中集群相关信息
/*********************测试例子前需要用户手动修改的地方BEGIN**************************************/
// 目标业务的tcapdir地址,对于TcaplusDB本地版直接配置成0.0.0.0:9999即可
static const char DIR_URL_ARRAY[][TCAPLUS_MAX_STRING_LENGTH] =
{
"tcp://0.0.0.0:9999"
};
// 目标业务的tcapdir 地址个数, 配置成:1
static const int32_t DIR_URL_COUNT = 1;
// 目标业务的表名 PLAYERONLINECNT
static const char * TABLE_NAME = "PLAYERONLINECNT";
// 目标业务的App ID (接入ID,Access ID), TcaplusDB本地版APP_ID默认为2,用户测试可以不用修改
static const int32_t APP_ID = 2;
// 目标业务的Zone ID (游戏区ID, Table Group ID), 参考上述章节创建的group id
static const int32_t ZONE_ID = 4;
// 目标业务的业务密码,默认为39859BC573A2E254,用户测试可以不用修改, 如果有问题可访问oms控制台在业务管理->业务维护-> 查看密码
static const char * SIGNATURE = "39859BC573A2E254";
/*********************测试例子前需要用户手动修改的地方END**************************************/
在 0_ asyncmode_generic_ simplicable/ Single Operty 目录下的子目录中, 示例/ tcaprus/ Ctdr1 中, 每个操作的子目录都有多个文件 。
| 文件名 | 文件用途 |
|---|---|
| conv.sh | 无法删除文件夹:%s: 没有这样的文件夹Xml 生成表指定接口文件表_ test。 我不知道, h, table_ test.cpp, 使用 SDK 根目录的 bin 目录中的 tdr 工具生产 。 |
| envcfg.env | 环境变量设置, 特别是 TAPLUS_ HOME 和 TSF4G_ HOME, 设置为 SDK 根目录, 在编译. env 前运行源 envcfg, 给环境变量带来效果 |
| main.cpp | 示例代码主程序 |
| Makefile | 编译文件 |
| readme.txt | 编译操作提示说明 |
| table_test.xml | TDR 定义文档样本表 |
| tlogconf.xml | 日志配置文件, 默认时没有更改 |
示例代码目录:
/root/TcaplusServiceApi3.46.1.199000.x86_64_release_20201102/release/x86_64/examples/tcaplus/C++_tdr1.0_asyncmode_generic_simpletable/SingleOperation/insert
接口文件由生成表格定义如下:
发件人_ test. I'm not sure, h, table_ test. I'm sorry, cppsh conv. # Review Makefile, 侧重于 LIMBS 和 INC 变量, 包括以下设置: LiBS_- L$( TSF4G_ HOME) /lib- L$( TCAPLUS_ HOME) /lib- Wl,- Bstatic- ltcapaciceapi- ltsf4g_r- lread
示例代码目录:
/root/TcaplusServiceApi3.46.1.199000.x86_64_release_20201102/release/x86_64/examples/tcaplus/C++_tdr1.0_asyncmode_generic_simpletable/SingleOperation/get
编译过程:
我不知道,h, table_ test. I'm sorry, cppsh conv. # 检查 Makefile, 重点是LIMS + -L$(TSF4G_HOME)/lib -L$(TCAPLUS_HOME)/lib -L$(TCAPLUS_HOME)/lib -Wl, -Bast -Capplaplaceaviceapi -ltsf4g_r -lreadline -lncurs-lscew -Lexpat -Wl, -Bldalive -lpread -lashread -llanlINC=-I$(TSF4G_HOME)/包括 -IItest#MY my binary $(TCLUS_HOME)/ 包含/treate me binary binmaly filestal/treal a const leglegrial lection/tal reglection/st bration 这样的问题, /tristreptest /tal regregretal regrel /
示例代码目录:
/root/TcaplusServiceApi3.46.1.199000.x86_64_release_20201102/release/x86_64/examples/tcaplus/C++_tdr1.0_asyncmode_generic_simpletable/SingleOperation/update
编译过程:
发件人_ test. I'm not sure, h, table_ test. I'm sorry, cppsh conv. # 校验 Makefile, 聚焦于 LIBS + - wl, - Bstatic - capplacerviceapi - ltsf4g_r - 线性线 - incurs - lscew - lexpat - Wl, - B 动力学
示例代码目录:
/root/TcaplusServiceApi3.46.1.199000.x86_64_release_20201102/release/x86_64/examples/tcaplus/C++_tdr1.0_asyncmode_generic_simpletable/SingleOperation/delete
编译过程:
发件人_ test. I'm not sure, h, table_ test. I'm sorry, cppsh conv. # 校验 Makefile, 聚焦于 LIBS + - wl, - Bstatic - capplacerviceapi - ltsf4g_r - 线性线 - incurs - lscew - lexpat - Wl, - B 动力学

TcaplusDB是一个分布式的NOSQL数据库,拥有完全自我研究的存储和发送代码,具有诸如缓存+着陆集成结构、PB级存储、毫秒级延迟、非破坏性扩展和复杂数据结构等特征。 与此同时,它具有丰富的生态、容易迁移、极廉价的运输成本和五高可用性等特征。
本文由 在线网速测试 整理编辑,转载请注明出处。