TeamTalk 服务端分析 一、编译

这一节主要参考TeamTalk官方文档。

简介:

TeamTalk是一套开源的企业办公即时通讯软件,作为整套系统的组成部分之一,TTServer为TeamTalk 客户端提供用户登录,消息转发及存储等基础服务。

TTServer主要包含了以下几种服务器:

  • LoginServer (C++): 登录服务器,分配一个负载小的MsgServer给客户端使用
  • MsgServer (C++): 消息服务器,提供客户端大部分信令处理功能,包括私人聊天、群组聊天等
  • RouteServer (C++): 路由服务器,为登录在不同MsgServer的用户提供消息转发功能
  • FileServer (C++): 文件服务器,提供客户端之间得文件传输服务,支持在线以及离线文件传输
  • MsfsServer (C++): 图片存储服务器,提供头像,图片传输中的图片存储服务
  • DBProxy (JAVA): 数据库代理服务器,提供mysql以及redis的访问服务,屏蔽其他服务器与mysql与redis的直接交互

当前支持的功能点:

  • 私人聊天
  • 群组聊天
  • 文件传输
  • 多点登录
  • 组织架构设置.

系统结构图

server.jpg

编译运行

1、下载代码

通过git来clone代码:
git clone https://github.com/mogutt/TTServer.git
clone 后会在当前目录生成一个文件夹TTServer

2、安装依赖

CentOS:

yum -y update
yum -y install libuuid-devel

Ubuntu:

apt-get install uuid-dev
3、编译

进入TTServer目录:

cd TTServer

目录结构如下:

run  src

run 目录是用来执行的目录,src则是源码目录
进入src目录:

cd src

目录结构会如下:

base  build.sh  file_server  login_server  msfs  msg_server  route_server  test_client  tools

执行如下命令,给build.sh 赋可执行权限:

chmod +x build.sh

执行build.sh进行编译:

./build.sh version 0.0.1

其中0.0.1 是你想定义的版本号
如果想执行编译清理,请执行如下命令:

./build.sh clean

进入上一层目录:

cd ../

目录如下:

im-server-0.0.1.tar.gz  run  src

其中im-server-0.0.1.tar.gz就是我们刚刚编译完成生成的tar包,其中包含了各个服务端的可执行文件。

4、常见问题

4.1、找不到uuid.h
这是因为没有安装依赖,需要执行2过程;
4.2、找不到version.h
这是因为version.h文件是由build.sh运行的时候产生的,用于查看各个服务端编译的时间以及版本号

下篇预告

下一篇,我会分析C++服务端各个配置文件的含义。以及如何进行配置部署。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值