默认分类

HaProxy 实现中继(中转/端口转发)

0 条评论 默认分类 无标签 kwor

安装HaProxy

Centos:

yum -y install haproxy

Debian/Ubuntu:

apt-get -y install haproxy

配置文件 打开 /etc/haproxy/haproxy.cfg 文件。 打开后把里面的内容全部删除,换成下面的内容。

global

defaults
    log global
    mode    tcp
    option  dontlognull
        timeout connect 5000
        timeout client  50000
        timeout server  50000

frontend ss-in
    bind *:2008
    default_backend ss-out

backend ss-out

    balance     roundrobin
    server server1 IP1:ss服务器端口 check
    server server2 IP2:ss服务器端口 check

listen admin

bind :9090
mode   http
server web6c 39.105.156.161:9090 check
stats enable
stats uri /admin
stats auth 账号:密码
stats realm Admin\ HA
stats hide-version
stats refresh 10s
stats admin if TRUE

说明:roundrobin 代表轮询如果不需要可以删除这一行

balance roundrobin
说明: listen admin

管理端配置

如果不需要可以删除这一段

启动服务

systemctl start haproxy

systemctl enable haproxy

如果启动不了可以直接运行
/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg

查看报错情况,根据错误信息进一步排除

docker haproxy 安装使用

0 条评论 默认分类 无标签 kwor

1.获取最新的版本
sudo docker pull haproxy
2.新建目录并创建配置文件haproxy.cfg
global

defaults
    log global
    mode    tcp
    option  dontlognull
        timeout connect 5000
        timeout client  50000
        timeout server  50000

frontend v2ray-in
    bind *:666
    default_backend v2ray-out
backend v2ray-out
    balance     roundrobin
      server server1 104.197.157.17:666 check

frontend ss-in
    bind *:888
    default_backend ss-out
backend ss-out
    balance     roundrobin
      server server2 45.76.230.172:84 check

listen admin

bind :9090
mode   http
server web6c :9090 check
stats enable
stats uri /
stats auth kwor:password
stats realm Admin\ HA
stats hide-version
stats refresh 10s
stats admin if TRUE

3.启动服务

${pwd} 表示当前所在目录。
-p 端口映射,前面是本地端口(这里的80是用的shadowsock的端口,使用vmess的换成88)

-v 目录文件映射

docker run -d -p 9090:9090 -p 666:666 -p 888:888 --name haproxy -v /home/haproxy/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro haproxy:1.9.11

php kafka安装

0 条评论 默认分类 无标签 kwor

1.java安装,版本大于8即可,openjdk也是可以的。
debian9下 sudo apt install default-jdk
centos下 yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
2.下载kafka
wget http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.12-2.3.0.tgz
3.解压
tar -xzvf kafka_2.12-2.3.0.tgz
4.运行
进入解压后的目录
cd kafka_2.12-2.3.0
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
bin/kafka-server-start.sh -daemon config/server.properties
以上运行不报错基本就可以了。
不放心可以查看下
ps -ef | grep kafka
5.安装php 扩展

先安装rdkfka库文件

git clone https://github.com/edenhill/librdkafka.git
cd librdkafka/
./configure
make
sudo make install git clone https://github.com/arnaud-lb/php-rdkafka.git
cd php-rdkafka
phpize
./configure --with-php-config=/usr/bin/php-config

上面的/usr/bin/php-config换成自己的php配置文件的目录即可
make all -j 5
可以先 make test 查看有无缺少扩展或者函数是否都开启,如果没问题继续
sudo make install
vim [php]/php.ini
extension=rdkafka.so

php nginx 性能优化设置

0 条评论 默认分类 无标签 kwor

可以在/etc/php/7.3/fpm/pool.d下的www.conf文件配置如下信息。

pm = dynamic; 表示使用哪种进程数量管理方式

dynamic表示php-fpm进程数是动态的,最开始是pm.start_servers指定的数量,如果请求较多,则会自动增加,保证空闲的进程数不小于pm.min_spare_servers,如果进程数较多,也会进行相应清理,保证多余的进程数不多于pm.max_spare_servers

static表示php-fpm进程数是静态的, 进程数自始至终都是pm.max_children指定的数量,不再增加或减少

pm.max_children = 1000; 静态方式下开启的php-fpm进程数量

pm.start_servers = 20; 动态方式下的起始php-fpm进程数量

pm.min_spare_servers = 10; 动态方式下的最小php-fpm进程数量

pm.max_spare_servers = 100; 动态方式下的最大php-fpm进程数量

如果pm为static, 那么其实只有pm.max_children这个参数生效。系统会开启设置数量的php-fpm进程

一般来说nginx 配置文件中对优化比较有作用的为以下几项:

  1. worker_processes 8;

nginx 进程数,建议按照cpu 数目来指定,一般为它的倍数 (如,2个四核的cpu计为8)。

  1. worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

为每个进程分配cpu,上例中将8 个进程分配到8 个cpu,当然可以写多个,或者将一个进程分配到多个cpu。

  1. worker_rlimit_nofile 65535;

这个指令是指当一个nginx 进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit -n)与nginx 进程数相除,但是nginx 分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致。

linux redis 下载及安装

0 条评论 默认分类 无标签 kwor

phpredis安装过程
git clone https://github.com/nicolasff/phpredis.git
/usr/bin/phpize //必须在phpredis目录下执行
./configure --with-php-config=/usr/bin/php-config
make
make install
安装完后 make test
在php.ini文件中增加
[redis]
extension=redis.so
redis安装过程:
redis下载地址:http://download.redis.io/releases/
下载后解压并make