2019-08-16

搭建 teamtalk 服務(wù)器

(三)配置文件 修改im配置

網(wǎng)絡(luò)配置說明文件 INSTALL.md


image.png

配置文件所在目錄

image.png

常見部署方案

假設(shè)所有服務(wù)都部署在一臺機器上

1.純公司內(nèi)網(wǎng)

安裝的機器內(nèi)網(wǎng)ip為: 192.168.1.2

login_server:

ClientListenIP=192.168.1.2      
ClientPort=8008
HttpListenIP=192.168.1.2
HttpPort=8080
MsgServerListenIP=192.168.1.2   
MsgServerPort=8100
msfs=http://192.168.1.2:8700/
discovery=http://192.168.1.2/api/discover

msg_server:

ListenIP=192.168.1.2
ListenPort=8000

ConcurrentDBConnCnt=2
DBServerIP1=192.168.1.2
DBServerPort1=10600
DBServerIP2=192.168.1.2
DBServerPort2=10600

LoginServerIP1=192.168.1.2
LoginServerPort1=8100

RouteServerIP1=192.168.1.2
RouteServerPort1=8400

PushServerIP1=192.168.1.2
PushServerPort1=8500

FileServerIP1=192.168.1.2
FileServerPort1=8600

IpAddr1=192.168.1.2     
IpAddr2=192.168.1.2     
MaxConnCnt=100000

route_server:

ListenIP=192.168.1.2            
ListenMsgPort=8400

msfs_server:

ListenIP=192.168.1.2        
ListenPort=8600
BaseDir=./tmp
FileCnt=0
FilesPerDir=30000
GetThreadCount=32
PostThreadCount=我們?yōu)槟峁?

file_server:

Address=192.168.1.2 
ListenPort=8500         
TaskTimeout=60        

db_proxy:

ListenIP=192.168.1.2    
ListenPort=10600
ThreadNum=48        # double the number of CPU core
MsfsSite=192.168.1.2    

#configure for mysql
DBInstances=teamtalk_master,teamtalk_slave
#teamtalk_master
teamtalk_master_host=127.0.0.1
teamtalk_master_port=3306
teamtalk_master_dbname=teamtalk
teamtalk_master_username=root
teamtalk_master_password=12345
teamtalk_master_maxconncnt=16

#teamtalk_slave
teamtalk_slave_host=127.0.0.1
teamtalk_slave_port=3306
teamtalk_slave_dbname=teamtalk
teamtalk_slave_username=root
teamtalk_slave_password=12345
teamtalk_slave_maxconncnt=16


#configure for unread
CacheInstances=unread,group_set,token,sync,group_member
#未讀消息計數(shù)器的redis
unread_host=127.0.0.1
unread_port=6379
unread_db=我們?yōu)槟峁?unread_maxconncnt=16

#群組設(shè)置redis
group_set_host=127.0.0.1
group_set_port=6379
group_set_db=2
group_set_maxconncnt=16

#同步控制
sync_host=127.0.0.1
sync_port=6379
sync_db=3
sync_maxconncnt=我們?yōu)槟峁?
#deviceToken redis
token_host=127.0.0.1
token_port=6379
token_db=4
token_maxconncnt=16

#GroupMember
group_member_host=127.0.0.1
group_member_port=6379
group_member_db=5
group_member_maxconncnt=48

http_msg_server:

ListenIP=192.168.1.2
ListenPort=8400

ConcurrentDBConnCnt=4
DBServerIP1=192.168.1.2
DBServerPort1=10600
DBServerIP2=192.168.1.2
DBServerPort2=10600

RouteServerIP1=192.168.1.2
RouteServerPort1=8200
#RouteServerIP2=localhost   
#RouteServerPort2=8201

push_server:

ListenIP=192.168.1.2
ListenPort=8500

CertPath=apns-dev-cert.pem
KeyPath=apns-dev-key.pem
KeyPassword=好像有點感冒咳嗽的感覺……在線的人數(shù)越來越多,不想和你說什么話可以理解別人了,我要把所有事情交給別人掌控一切……………………好想好想睡@mogujie

#SandBox
#1: sandbox 0: production
SandBox=0   

2.公網(wǎng)ip

安裝的機器為多網(wǎng)卡,包含內(nèi)網(wǎng)網(wǎng)卡和公網(wǎng)網(wǎng)卡
內(nèi)網(wǎng)ip為:192.168.1.2
公網(wǎng)ip為122.222.222.222

login_server:

ClientListenIP=122.222.222.222      
ClientPort=8008
HttpListenIP=122.222.222.222    
HttpPort=8080
MsgServerListenIP=192.168.1.2   
MsgServerPort=8100
msfs=http://122.222.222.222 :8700/
discovery=http://122.222.222.222/api/discover

msg_server:

ListenIP=122.222.222.222
ListenPort=8000

ConcurrentDBConnCnt=2
DBServerIP1=192.168.1.2
DBServerPort1=10600
DBServerIP2=192.168.1.2
DBServerPort2=10600

LoginServerIP1=192.168.1.2
LoginServerPort1=8100

RouteServerIP1=192.168.1.2
RouteServerPort1=8400

PushServerIP1=192.168.1.2
PushServerPort1=8500

FileServerIP1=192.168.1.2
FileServerPort1=8600

IpAddr1=122.222.222.222     
IpAddr2=122.222.222.222     
MaxConnCnt=100000

route_server:

ListenIP=192.168.1.2            
ListenMsgPort=8400

msfs_server:

ListenIP=192.168.1.2;122.222.222.222        
ListenPort=8600
BaseDir=./tmp
FileCnt=0
FilesPerDir=30000
GetThreadCount=32
PostThreadCount=我們?yōu)槟峁?

file_server:

Address=122.222.222.222 
ListenPort=8500         
TaskTimeout=60        

db_proxy:

ListenIP=192.168.1.2    
ListenPort=10600
ThreadNum=48        # double the number of CPU core
MsfsSite=192.168.1.2    

#configure for mysql
DBInstances=teamtalk_master,teamtalk_slave
#teamtalk_master
teamtalk_master_host=127.0.0.1
teamtalk_master_port=3306
teamtalk_master_dbname=teamtalk
teamtalk_master_username=root
teamtalk_master_password=12345
teamtalk_master_maxconncnt=16

#teamtalk_slave
teamtalk_slave_host=127.0.0.1
teamtalk_slave_port=3306
teamtalk_slave_dbname=teamtalk
teamtalk_slave_username=root
teamtalk_slave_password=12345
teamtalk_slave_maxconncnt=16


#configure for unread
CacheInstances=unread,group_set,token,sync,group_member
#未讀消息計數(shù)器的redis
unread_host=127.0.0.1
unread_port=6379
unread_db=我們?yōu)槟峁?unread_maxconncnt=16

#群組設(shè)置redis
group_set_host=127.0.0.1
group_set_port=6379
group_set_db=2
group_set_maxconncnt=16

#同步控制
sync_host=127.0.0.1
sync_port=6379
sync_db=3
sync_maxconncnt=我們?yōu)槟峁?
#deviceToken redis
token_host=127.0.0.1
token_port=6379
token_db=4
token_maxconncnt=16

#GroupMember
group_member_host=127.0.0.1
group_member_port=6370
group_member_db=5
group_member_maxconncnt=48

http_msg_server:

ListenIP=192.168.1.2
ListenPort=8400

ConcurrentDBConnCnt=4
DBServerIP1=192.168.1.2
DBServerPort1=10600
DBServerIP2=192.168.1.2
DBServerPort2=10600

RouteServerIP1=192.168.1.2
RouteServerPort1=8200
#RouteServerIP2=localhost   
#RouteServerPort2=8201

push_server:

ListenIP=192.168.1.2
ListenPort=8500

CertPath=apns-dev-cert.pem
KeyPath=apns-dev-key.pem
KeyPassword=xxxxxxxx

#SandBox
#1: sandbox 0: production
SandBox=0   

3.公網(wǎng)ip,路由器映射

此種情況請確保在內(nèi)網(wǎng)下可以訪問路由器映射的外網(wǎng)ip
安裝的機器為單網(wǎng)卡,外網(wǎng)由路由器映射
內(nèi)網(wǎng)ip為: 192.168.1.2
路由器映射的公網(wǎng)ip為: 122.222.222.222

login_server:

ClientListenIP=192.168.1.2      
ClientPort=8008
HttpListenIP=192.168.1.2
HttpPort=8080
MsgServerListenIP=192.168.1.2   
MsgServerPort=8100
msfs=http://122.222.222.222 :8700/
discovery=http://122.222.222.222/api/discover

msg_server:

ListenIP=192.168.1.2
ListenPort=8000

ConcurrentDBConnCnt=2
DBServerIP1=192.168.1.2
DBServerPort1=10600
DBServerIP2=192.168.1.2
DBServerPort2=10600

LoginServerIP1=192.168.1.2
LoginServerPort1=8100

RouteServerIP1=192.168.1.2
RouteServerPort1=8400

PushServerIP1=192.168.1.2
PushServerPort1=8500

FileServerIP1=192.168.1.2
FileServerPort1=8600

IpAddr1=122.222.222.222     
IpAddr2=122.222.222.222     
MaxConnCnt=100000

route_server:

ListenIP=192.168.1.2            
ListenMsgPort=8400

msfs_server:

ListenIP=192.168.1.2        
ListenPort=8600
BaseDir=./tmp
FileCnt=0
FilesPerDir=30000
GetThreadCount=32
PostThreadCount=我們?yōu)槟峁?

file_server:

Address=122.222.222.222 
ListenPort=8500         
TaskTimeout=60        

db_proxy:

ListenIP=192.168.1.2    
ListenPort=10600
ThreadNum=48        # double the number of CPU core
MsfsSite=192.168.1.2    

#configure for mysql
DBInstances=teamtalk_master,teamtalk_slave
#teamtalk_master
teamtalk_master_host=127.0.0.1
teamtalk_master_port=3306
teamtalk_master_dbname=teamtalk
teamtalk_master_username=root
teamtalk_master_password=12345
teamtalk_master_maxconncnt=16

#teamtalk_slave
teamtalk_slave_host=127.0.0.1
teamtalk_slave_port=3306
teamtalk_slave_dbname=teamtalk
teamtalk_slave_username=root
teamtalk_slave_password=12345
teamtalk_slave_maxconncnt=16


#configure for unread
CacheInstances=unread,group_set,token,sync,group_member
#未讀消息計數(shù)器的redis
unread_host=127.0.0.1
unread_port=6379
unread_db=我們?yōu)槟峁?unread_maxconncnt=16

#群組設(shè)置redis
group_set_host=127.0.0.1
group_set_port=6379
group_set_db=2
group_set_maxconncnt=16

#同步控制
sync_host=127.0.0.1
sync_port=6379
sync_db=3
sync_maxconncnt=我們?yōu)槟峁?
#deviceToken redis
token_host=127.0.0.1
token_port=6379
token_db=4
token_maxconncnt=16

#GroupMember
group_member_host=127.0.0.1
group_member_port=6379
group_member_db=5
group_member_maxconncnt=48

http_msg_server:

ListenIP=192.168.1.2
ListenPort=8400

ConcurrentDBConnCnt=4
DBServerIP1=192.168.1.2
DBServerPort1=10600
DBServerIP2=192.168.1.2
DBServerPort2=10600

RouteServerIP1=192.168.1.2
RouteServerPort1=8200
#RouteServerIP2=localhost   
#RouteServerPort2=8201

push_server:

ListenIP=192.168.1.2
ListenPort=8500

    //蘋果推送p12文件
CertPath=apns-dev-cert.pem
    //蘋果推送p12文件密碼路徑?
KeyPath=apns-dev-key.pem
    //蘋果推送p12文件 解壓密碼
KeyPassword=xxxxxx

#SandBox
#1: sandbox 0: production
SandBox=0   

修改web的配置

修改web的配置


image.png
>$config['msfs_url'] = 'http://msfs.teamtalk.im:8700/';
>$config['http_url'] = 'http://10.11.5.171:8400';

修改數(shù)據(jù)庫參數(shù) 保存退出


image.png
安裝PB
wget https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz
tar -zxvf protobuf-2.6.1.tar.gz
cd protobuf-2.6.1
./configure --prefix=/usr/local/protobuf
 make -j 2 && make install
編譯安裝

monTalkServer 服務(wù)器目錄

cd ~
mkdir -p /root/monTalkServer/server/src/base/pb/lib/linux/
mkdir -p /root/monTalkServer/server/src/base/pb/protocol
cp /usr/local/protobuf/lib/libprotobuf-lite.a /root/monTalkServer/server/src/base/pb/lib/linux/
cp  -r /usr/local/protobuf/include/* /root/monTalkServer/server/src/base/pb/
生成pb協(xié)議
cd /root/monTalkServer/pb
export PATH=$PATH:/usr/local/protobuf/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib
sh create.sh
sh sync.sh
9安裝依賴
cd /root/monTalkServer/server/src
sh make_log4cxx.sh
sh make_hiredis.sh

報錯
‘void log4cxx::spi::LocationInfo::write(log4cxx::helpers::ObjectOutputStream&, log4cxx::helpers::Pool&) const’:
locationinfo.cpp:163:21: error: narrowing conversion of ‘237’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
0x78, 0x70 };
^
locationinfo.cpp:163:21: error: narrowing conversion of ‘153’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
locationinfo.cpp:163:21: error: narrowing conversion of ‘187’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
locationinfo.cpp:163:21: error: narrowing conversion of ‘225’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
locationinfo.cpp:163:21: error: narrowing conversion of ‘145’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
locationinfo.cpp:163:21: error: narrowing conversion of ‘165’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
make[3]: *** [locationinfo.lo] 錯誤 1
make[3]: 離開目錄“/root/monTalkServer/server/src/log4cxx/apache-log4cxx-0.10.0/src/main/cpp”
make[2]: *** [install-recursive] 錯誤 1
make[2]: 離開目錄“/root/monTalkServer/server/src/log4cxx/apache-log4cxx-0.10.0/src/main”
make[1]: *** [install-recursive] 錯誤 1
make[1]: 離開目錄“/root/monTalkServer/server/src/log4cxx/apache-log4cxx-0.10.0/src”
make: *** [install-recursive] 錯誤 1
cp: 無法獲取"log4cxx/include" 的文件狀態(tài)(stat): 沒有那個文件或目錄
cp: 無法獲取"log4cxx/lib/liblog4cxx.so*" 的文件狀態(tài)(stat): 沒有那個文件或目錄

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容