可以工作在nginx tcp负载均衡环境中的集群聊天服务器和客户端源码 (基于muduo redis mysql)
sudo apt install mysql-server # ubuntu20
sudo apt install libmysqlclient-dev
mysql --version
# mysql Ver 8.0.33-0ubuntu0.22.04.2 for Linux on x86_64 ((Ubuntu))sudo systemctl status mysql
sudo cat /etc/mysql/debian.cnf
mysql -u debian-sys-maint -ponly local login
USE mysql;
SELECT User,Host,plugin FROM mysql.user WHERE user='root';
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '123456';
flush privileges;
exit;set remote login
mysql -u root -p # 123456UPDATE mysql.user SET Host='%' WHERE User='root' AND Host='localhost';
flush privileges;
ALTER USER root IDENTIFIED WITH caching_sha2_password BY '123456';
flush privileges;see also: http://blog.chinaunix.net/uid-192452-id-5862571.html
ubuntu 命令安装 redis 服务
sudo apt-get install redis-server
ps -ef | grep redisgit clone https://github.com/redis/hiredis
cd hiredis
make
sudo make install
sudo ldconfig /usr/local/lib运行redis客户端
redis-cliredis相关命令
keys * # 查看所有键
# 官网下载源码
http://nginx.org/en/download.html
# nginx-1.24.0.tar.gz
# linux内核版本至少为2.6
# 安装相关依赖
sudo apt-get install gcc g++
sudo apt-get install libpcre3-dev
sudo apt-get install libssl-dev
sudo apt-get install libz-dev
sudo apt-get install libpcre3-dev libssl-dev libz-dev
# 安装nginx
tar -xzvf nginx-1.24.0.tar.gz
cd nginx-1.24.0/./configure --with-stream
sudo make && sudo make install
cd /usr/local/nginx
sudo vim ./conf/nginx.conf # 修改配置文件为 */chatserver/nginx/nginx.conf 文件内容
sudo ./sbin/nginx
netstat -tanopsudo ./sbin/nginx -s reload
sudo ./sbin/nginx -s stopsh autobuild.sh然后运行sql语句
create database chat;
use chat;
source /home/zhengmao22/work/chatserver/sql/chat.sql;
show tables;
DELETE FROM 表名; # 删除表中所有数据运行上面sql语句后chat数据库会生成如下名称5张表 allgroup/friend/groupuser/offlinemessage/user
./bin/ChatServer 127.0.0.1 6000
./bin/ChatServer 127.0.0.1 6001
./bin/ChatServer 127.0.0.1 6002./bin/ChatClient 127.0.0.1 8000
./bin/ChatClient 127.0.0.1 8000
./bin/ChatClient 127.0.0.1 8000
./bin/ChatClient 127.0.0.1 8000