文章261
标签214
分类4

Python3安装requests库

背景

由于平时一些软件都是用到python2.7的版本,但是实际上学习python还是用python3会比较好,这里为了区分,我就把Python3的命令改成了 python3,

安装方法

网上找了一大圈,各种很复杂,让我觉得很烦,以前用python2的时候,也就几条命令搞定,为啥到了python3还这么麻烦,想想就觉得其中肯定有简单方法,然而找到相关资料的确是真的简单!
命令如下

python3 -m pip install requests

1057884-cd575b3e7c63b0a2.png
测试一下是否安装完成
1057884-9addebed5b2ae94a.png
成功获取状态信息,表示已经成功安装。

nginx配置只允许域名访问,禁止ip访问80,443端口

背景

在对服务器做更新的时候,发现访问服务器IP的80端口,就自动跳转到我的网站上,这点对于强迫症患者来说万万不能忍!!!

解决方法

先来配置80端口的

打开Nginx的配置文件:

#vi /usr/local/nginx/conf/nginx.conf
增加以下代码片段

server
    {
        listen 80 default;
        return 403;
    } 

配置如下图所示:
1057884-cf86a23d9bf67503.png
最后重载配置即可
配置完成后效果如下
1057884-32d5e91f3d57c688.png

以上代码是针对80端口的,如果跟我一样配置了https(443端口)的话,需要再加点东西

配置80 443端口一起的
server
    {
        listen 80 default;
        listen 443 default_server;
        return 403;
        #HTTP_TO_HTTPS_END
    ssl_certificate    /www/server/panel/vhost/cert/oneone.moe/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/oneone.moe/privkey.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    error_page 497  https://$host$request_uri;

    #SSL-END
    
    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
    error_page 404 /404.html;
    #error_page 502 /502.html;
    #ERROR-PAGE-END
    } 

为什么要加上ssl证书的配置

Nginx 上对于 SSL 服务器在不配置证书的时候会出现协议错误,哪怕端口上配置了其他网站也会报错。解决方法就是随便生成一个证书填进去就好。

就是说443端口如果也跟80端口那样子的配置,使用https方式访问正常的域名也会被拒绝连接。
配置如下图所示:
1057884-4cb0c276b5094b96.png
最后重载配置即可
配置完成后效果如下:
1057884-7dc44ab7a9c97477.png
域名访问正常
1057884-164ae478ed222083.png

参考链接

https://lax.v2ex.com/t/348746
https://www.cnblogs.com/weifeng1463/p/9197971.html

http_load使用详解

1.什么是http_load

http_load是一款基于Linux平台的web服务器性能测试工具,用于测试web服务器的吞吐量与负载,web页面的性能。

2.http_load的安装

1)下载地址
wget http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz
2)安装
tar xzvf http_load-12mar2006.tar.gz
cd http_load-12mar2006
make
make install
文件夹内容如下
1057884-7234228a0cb1bddd.png

3.http_load的使用

1)创建文件
vi urls
写入要测的服务器域名或IP地址
比如urls里是http://www.baidu.com/ 亦或是192.168.0.1这一类的都可以测

2)使用示例
./http_load -rate 5 -seconds 10 urls

-parallel 简写-p :含义是并发的用户进程数。
-fetches 简写-f :含义是总计的访问次数
-rate 简写-p :含义是每秒的访问频率
-seconds简写-s :含义是总计的访问时间

执行结果:

说明执行了一个持续时间10秒的测试,每秒的频率为5。
49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds
5916 mean bytes/connection
4.89274 fetches/sec, 28945.5 bytes/sec
msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min
HTTP response codes:
code 200 -- 49

结果分析:

1.49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds
说明在上面的测试中运行了49个请求,最大的并发进程数是2,总计传输的数据是289884bytes,运行的时间是10.0148秒
2.5916 mean bytes/connection
说明每一连接平均传输的数据量289884/49=5916
3.4.89274 fetches/sec, 28945.5 bytes/sec
说明每秒的响应请求为4.89274,每秒传递的数据为28945.5 bytes/sec
4.msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
说明每连接的平均响应时间是28.8932 msecs,最大的响应时间44.243 msecs,最小的响应时间24.488 msecs
5.msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min 
6、HTTP response codes: code 200 -- 49
说明打开响应页面的类型,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。
特殊说明:这里,我们一般会关注到的指标是fetches/sec、msecs/connect
他们分别对应的常用性能指标参数
Qpt-每秒响应用户数和response time,每连接响应用户时间。
测试的结果主要也是看这两个值。当然仅有这两个指标并不能完成对性能的分析,我们还需要对服务器的cpu、men进行分析,才能得出结论

4.常见错误

1)byte count wrong
http_load在处理时会去关注每次访问同一个URL返回结果(即字节数)是否一致,若不一致就会抛出byte count wrong

2)too many open files
系统限制的open files太小,ulimit -n 修改open files值即可

3)无法发送大请求 (请求长度>600个字符)
默认接受请求的buf大小 http_load.c

4)Cannot assign requested address
客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,所以要改客户端机器的配置,
在sysctl.conf里加:
net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_timestamps=1 开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用
net.ipv4.tcp_tw_recycle=1 表示开启TCP连接中TIME-WAIT sockets的快速回收

网上有太多的教程,没必要自己再重新写,附上原文链接
https://www.cnblogs.com/shijingjing07/p/6539179.html

查看iis实时并发连接数

IIS并发连接数的定义

即为IIS服务器可以同时容纳客户请求的最高连接数

查看方法

开始运行输入perfmon.msc
1057884-d26e5debe20043db.png
点击性能监视器,在右侧图表区里点击右键,再点“添加计数器”
1057884-3c2c7e0aff35e6bd.png
然后点击途中绿色加号按钮,下来选择web Service
1057884-b87d7e00586271db.png
“从计算机选择计数器”选择中Current Connection,“从列表选择实例”中选择要统计的站点,最后点击“添加”按钮即可完成设置。
1057884-cc2461df43a30e3b.png

查看实时并发量

1057884-8d5b168fc6f495d2.png

最后

建议监测一段时间后关闭,毕竟会占用一定的资源。。。

使用python临时搭建web服务器

好方便好方便!

默认端口号是8080

python2: python -m SimpleHTTPServer
python3: python -m http.server

当然也可以自定义端口。比如8888

python2: python -m SimpleHTTPServer 8888
python3: python -m http.server 8888

1057884-dc254933bbc19178.png

远程桌面下使用ctrl+alt+del修改密码

ctrl+alt+end组合键就好了啊