问题描述
- 多余千个客户端访问数据库的解决方案
-
老大昨天让我想一个解决方案出来,但是我还在实习不是特别懂希望有人能帮助我。
没有C币了谢谢
解决方案
几千个单台服务器肯定吃不消,需要用多个服务器,读写分离,分库分表
参考:
http://www.mamicode.com/info-detail-252110.html
http://blog.csdn.net/kobejayandy/article/details/8775255
http://m.blog.csdn.net/blog/xiaohan1990718/18183725
说并发几千很容易的,我就呵呵了。
解决方案二:
这个简单
mysql默认的最大连接数是100(max_connections =100),这样的设置对于一般的网站来说还可以,如果一些访问量比较大的网站,这样配置显然是不够的,连接数超过这个值的时候就会报错。如何修改mysql的最大连接数呢?
从以下几种方法都可以实现修改连接数的目的。
1. 进入到mysql的安装目录找到mysqld_safe(我的安装路径是:cd /opt/mysql-5.0.27/bin/mysqld_safe);
vi mysqld_safe
找到
then $NOHUP_NICENESS $ledir/$MYSQLD
$defaults --basedir=$MY_BASEDIR_VERSION
--datadir=$DATADIR $USER_OPTION
--pid-file=$pid_file
--skip-external-locking
-O max_connections=1500
>> $err_log 2>&1 else
eval "$NOHUP_NICENESS $ledir/$MYSQLD
$defaults --basedir=$MY_BASEDIR_VERSION
--datadir=$DATADIR $USER_OPTION
--pid-file=$pid_file
--skip-external-locking $args
-O max_connections=1500 >>
$err_log 2>&1"
红色行代表要添加的字段。保存,退出。
重启mysql服务,即可。
查看当前数据库的参数信息可用:mysql>show variables;
2. 相对来说比较简单,直接更改mysql的配置文件my.cnf找到max_connections将默认值改为你需要的值,保存退出,重启服务即可。
3.命令行方式更改最大连接数:以管理员身份登录到数据库:
mysql>set GLOBAL max_connections=200
显示当前运行的Query:mysql> show processlist
显示当前状态:mysql> show status
以上是个人见解,如有问题,请指教
解决方案三:
你可以用数据库连接池,同时服务器只与客户端连接,而不是让客户端直接连接数据库,然后由服务器连接数据库,获取数据库数据再返回给客户端,服务器做到几千客户端很容易。