TeamTalk 一键部署方案:TTAutoDeploy

 

TeamTalk 整套服务提供模块部署脚本和一键部署方案,主要模块有JDK,NGINX,PHP,PERCONA(MYSQL), REDIS,IM_WEB,IM_DB_PROXY,IM_SERVER,其中IM_WEB,IM_DB_PROXY,IM_SERVER为自主开发模 块,其余 均为开源解决方案,各个模块需要手动改动的地方如下:

   JDK:

无需改动

   NGINX:

无需改动

   PHP:

在conf目录下包含两个配置文件 php-fpm.conf php.ini, 可以自行进行优化配置, 也可以选择不改动
这两个文件

   PERCONA(MYSQL):

在安装脚本setup.sh中默认设置了PERCONA root用户的初始密码为12345,可以修改“MYSQL_PASSWORD=12345”
对密码进行重设,一旦对密码进行更改,需要同时在IM_WEB与IM_DB_PROXY中进行更改,详见IM_WEB和IM_DB_PROXY
配置说明。
如果使用的是已存在的percona或者mysql,可以直接使用"mysql -u $USER -p$PASSWORD < macim.sql"进行库与表的创建。

   REDIS:

在conf目录下包含了redis.conf的配置文件, 可以自行进行优化配置,也可以选择不改动这个文件

   IM_WEB:

在conf目录下包含了db.php和im.com.conf两个配置文件,其中im.com.conf为NGINX所需要的配置文件,建议不
改动;db.php文件主要配置了链接PERCONA所需要的参数,根据自己的需求修改'connectionString','username',
'password'这三个参数。
如果使用的是现有的nginx+php环境,可以修改setup.sh中的 PHP_WEB_SETUP_PATH为nginx放置web代码的路径,
并且将PHP_NGINX_CONF_PATH修改为nginx配置文件的路径然后执行setup.sh脚本即可

   IM_DB_PROXY:

在安装配置脚本setup.sh中, DB_PROXY的默认监听Port设置为11000,如果被更改需要同时对IM_SERVER中的配
置进行更改,详见IM_SERVER配置说明;在conf目录下,包含了cache-online.properties和db-online.properties
两个配置文件,其中cache-online为REDIS的配置参数,db-online为PERCONA的配置参数,若PERCONA进行过更改,则改
成对应的链接参数即可

   IM_SERVER:

IM_SERVER下共有5种服务器,所以也需要对这些服务器进行分别配置

1.LOGIN_SERVER: 
ClientListenIP为用于Client端监听的本地地址
MsgServerListenIP为用于Msg Server端监听的本地地址 2.MSG_SERVER: 
ListenIP为本机监听的IP,用于Client端的消息收发; 
HttpListenIP监听的IP、Port用于IM_WEB创建固定群通知,可以在IM_WEB配置此处监听的IP、Port
DBServerIP用于链接DB_PROXY,此处至少填两个数据库地址,也可以是同一个实例
LoginServerIP用于链接LoginServer
RouteServerIP用于链接RouteServer
FileServerIP用于链接FileServer
IpAddr填写的是Client端可以直接访问的地址,对于需要公网访问的情况下,如果是路由器映射,则需要填路由器
映射在公网上的地址;此处需要填写两个Client端可以访问的地址,如果只有一个,则填写相同的地址即可 3.ROUTE_SERVER: 
根据说明配置需要监听的对应IP Port即可 4.FILE_SERVER: 
ListenIP为本机监听的IP
Address为Client端可以直接可以访问的IP地址,对于需要公网访问的情况下,如果是路由器映射,则需要填路由器
映射在公网上的地址 5.MSFS_SERVER: 
ListenIP和Port填写的是监听的本地IP, BaseDir为默认保存图片文件的路径,如有必要可以更改

一键部署:

"强烈建议"选择一台未安装过的NGINX,PHP,MySQL,JDK,REDIS,并且OS为CentOS 6.X,在安装之前可以先执行
"setup.sh check"命令进行上述环境的检查。检查通过后对各个模块进行一些配置文件的设置,其中主要设置
的为IM_SERVER中的几个服务器地址设置,设置完成后运行"setup.sh install"

模块部署:

TeamTalk的各模块支持安装到不同的服务器上,所以部署可以根据自己的需要进行模块安装,主要修改的地方即为
上述各个模块中的IP地址设置。根据自己的网络拓扑在conf文件夹下的各个配置文件中预先设置正确的IP地址,
然后执行模块内的"setup install"即可

IM_SERVER与IM_DB_PROXY架构图如下:

项目主页:http://www.open-open.com/lib/view/home/1414591839840

企业办公即时通信软件TeamTalk的更多相关文章

  1. 企业办公3D指纹考勤系统解决方案(一)

    员工准时.正常出勤是企业考勤制度的基本要求,然而目前签名式.卡钟式.IC卡考勤系统均存在代打卡.人情卡.不易统计等漏洞,而市面上的光学指纹考勤机存在识别能力差.识别速度慢.使用寿命短.不能完全杜绝指纹 ...

  2. 企业办公领域: Windows + Office的组合在未来能抵挡住 Google Apps的冲击么

    从个人角度讲,我基本上不怎么喜欢微软的产品,即便是其无处不见的Windows. Windows 8用了几个月的后,实在无法忍受其某些SB的设计,还是换回Win7.另外自从用上了MacBook 以后, ...

  3. Ubuntu下借助URLOS实现快速安装DzzOffice企业办公套件

    如今,越来越多的个人.团队甚至企业都在使用GSuite或者Office365等网络办公套件,为什么人们越来越喜爱使用网络办公套件?一方面是考虑数字资产的安全性以及管理效率,另一方面则是日益增大的协同办 ...

  4. 定制化移动办公APP:打造企业专属的“钉钉”“纷享销客”,实现企业办公管理一体化

    一.项目背景 随着信息化社会的高速发展,市场竞争日益激烈,传统的管理和办公系统多且复杂,用户需要使用多个系统才可完成一项工作,而且各个系统的界面和风格存在差异,造成了信息查找不便,大大降低了用户的工作 ...

  5. 企业办公3D指纹考勤系统解决方案

    员工准时.正常出勤是企业考勤制度的基本要求,然而目前签名式.卡钟式.IC卡考勤系统均存在代打卡.人情卡.不易统计等漏洞,而市面上的光学指纹考勤机存在识别能力差.识别速度慢.使用寿命短.不能完全杜绝指纹 ...

  6. telegram即时通信软件和outline ---- by 余弦 by倾旋

    第一次遇到它 是在余弦的圈子里发现的tele推送,他当时关键部分说的极其少,就三个字,你懂的..看完以后,我想哭.我真的不懂.. 我是如何突破这个术语的 近期,随着信息源的增多.(收集了大量的可靠公众 ...

  7. IM即时通信软件设计

    参考资料: 架构篇:https://yq.aliyun.com/articles/698301 模型篇:https://yq.aliyun.com/articles/701593 实现篇:https: ...

  8. 蘑菇街IM

    https://github.com/mogutt TTServer 蘑菇街TeamTalk之消息服务器 Updated 2 days ago   Shell 122 208 TTAutoDeploy ...

  9. 开源IM工程“蘑菇街TeamTalk”的现状:一场有始无终的开源秀

    1.前言 随着云IM的发展,已吸引越来越多有IM需求的APP接入.但考虑到云IM无论从商业模式还是运营模式上,还需经过多年的沉淀,才可能真正实现客户与服务商的运营和服务良性循环的双赢局面.在此之前,加 ...

随机推荐

  1. WP8关于对地图开发的改进

    原文:WP8关于对地图开发的改进 微软在2012年6月21日 发布了 Windows Phone 8的更新.带来大量的功能更新和全新的SDK.作为重头戏的部分是引入了 C++ 和 DirectX,支持 ...

  2. ORM武器:NHibernate(三)五个步骤+简单对象CRUD+HQL

    前面的两篇文章中.我们对NHibernate已经做了大致了解 <ORM利器:NHibernate(一)简单介绍>Nhibernate的作用:攻克了对象和数据库的转化问题 <ORM利器 ...

  3. 一天JavaScript示例-判定web页面的区域

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  4. 4.帧循环(游戏循环),schedule

     1 概述 游戏乃至图形界面的本质是不断地画图,然而画图并非任意的,不论什么游戏都须要遵循一定的规则来呈现出来,这些规则就体现为游戏逻辑.游戏逻辑会控制游戏内容,使其依据用户输入和时间流逝而改变. ...

  5. Oracle 常见函数使用汇总

    INSTR用法:INSTR(string,subString,position,ocurrence)解释:string:源字符串      subString:要查找的子字符串      positi ...

  6. Sqlmap渗透测试是常用语句

    1.获取站点信息 sqlmap.py  -u http://.../ 2.获取站点的数据库信息 sqlmap.py -u http://../ --dbs 3.获取数据库DataBaseTest下的表 ...

  7. 致网友Wonderfei的一封信(怎样选择自己主动化框架的几点拙见)

    注:本来这封信要发给Wonerfei网友的,可是由于每次仅仅能发200字,所以干脆贴到博客上,叫Wonderfei同学到这上面来看,也算是我自己的一个暂时总结吧.同一时候也希望大家给予Wonderfe ...

  8. 推荐系统相关算法:SVD

    假如要预测Zero君对一部电影M的评分,而手上只有Zero君对若干部电影的评分和风炎君对若干部电影的评分(包含M的评分).那么能预测出Zero君对M的评分吗?答案显然是能.最简单的方法就是直接将预测分 ...

  9. oracle中execute immediate的使用(select/insert/update/delete)(转)

    execute immediate的语法如下: execute immediate 'sql'; execute immediate 'sql_select' into var_1, var_2; e ...

  10. about greenplum collection tool

    three collection tool for greenplum:pstack.strace.gcore.                                            ...