ipv4

Nginx深度优化

主宰稳场 提交于 2020-01-05 00:08:19
Nginx 以事件驱动(epoll)的方式编写,所以有非常好的性能,同时也是一个非常高效的反 向代理、负载平衡。但是 Nginx 并不支持 cgi 方式运行,原因是可以减少因此带来的一些程 序上的漏洞。所以必须使用 FastCGI 方式来执行 PHP 程序。 由于 Nginx 本身的一些优点,轻量,开源,易用,越来越多的公司使用 nginx 作为自己公司 的 web 应用服务器,本文详细介绍 nginx 源码安装的同时并对 nginx 进行优化配置。 可以通过 nginx初步优化 与 nginx反向代理 来初步了解nginx 博文结构 编译安装前优化 nginx主配置优化 nginx配置防盗链 验证上述优化 一.nginx编译前优化 下载nginx软件包 安装nginx及安装 zlib-devel、pcre-devel 等依赖包 [root@localhost ~]# tar zxf nginx-1.14.0.tar.gz [root@localhost ~]# yum -y install pcre-devel openssl-devel [root@localhost ~]# cd nginx-1.14.0/ [root@localhost nginx-1.14.0]# groupadd www [root@localhost nginx-1.14.0]# useradd -g

Linux Firewalld用法及案例

a 夏天 提交于 2020-01-04 01:57:55
Firewalld概述 动态防火墙管理工具 定义区域与接口安全等级 运行时和永久配置项分离 两层结构 核心层 处理配置和后端,如iptables、ip6tables、ebtables、ipset和模块加载器 顶层D-Bus 更改和创建防火墙配置的主要方式。所有firewalld都使用该接口提供在线工具 原理图 Firewalld与iptables对比 firewalld 是 iptables 的前端控制器 iptables 静态防火墙 任一策略变更需要reload所有策略,丢失现有链接 firewalld 动态防火墙 任一策略变更不需要reload所有策略 将变更部分保存到iptables,不丢失现有链接 firewalld 提供一个daemon和service 底层使用iptables 基于内核的Netfilter 配置方式 firewall-config 图形界面 firewall-cmd 命令行工具 直接修改配置文件 /lib/firewalld 用于默认和备用配置 /etc/firewalld 用于用户创建和自定义配置文件 覆盖默认配置 /etc/firewalld/firewall.conf 全局配置 运行时配置和永久配置 firewall-cmd –zone=public –add-service=smtp 运行时配置,重启后失效 firewall-cmd

IP地址略解

為{幸葍}努か 提交于 2020-01-03 03:40:54
搞清楚什么是IP地址? ip地址是指“互联网协议地址”(Internet Protocol Address,又译为网际协议地址),是TCP/IP体系中的网络层协议。通俗的来讲,在这个星球上,每一个接入互联网的计算机都会被分配一个“ip地址”,有了这个“ip地址”,你才能在互联网上找到自己的“定位”,找到自己的“定位”,你才能与其他计算机进行数据交换。 ip地址的表示? 其实ip地址是用二进制来表示的,每个ip长32bit,也就是4个字节。但是,我们经常见到的ip是"192.168.1.110"这样。这种表示方法叫做**“点分十进制表示法”**,是32bit被写成十进制的形式,中间用 “.” 进行分割。 ip是由网络号和主机号组成的,根据规则,“ 子网掩码的左边是网络位,用二进制数字“1”表示,1的数目等于网络位的长度;右边是主机位,用二进制数字“0”表示,0的数目等于主机位的长度。” 可知此IP地址(192.168.1.110)的网络ID是24位(十进制表示为:192.168.1)主机ID是8位(十进制表示为:110)。 **注意:**这个“192.168.1.110”这种表示方法只是给我们人类看的,方便我们理解记忆,但是计算机内部处理还是只支持2进制,也就是“00001010000000000000000000000001”这种的。 ipv4和ipv6

国内常用开源镜像网站汇总

为君一笑 提交于 2020-01-01 17:42:34
注:本博客内容均为博主浏览各大博客收集整理 部分转载于:https://code.csdn.net/gsls200808/chinese-opensource-mirror-site/tree/master       http://www.360doc.com/content/17/0426/16/7863900_648837133.shtml(尊重原著) 企业 阿里开源镜像站:http://mirrors.aliyun.com/ 搜狐开源镜像站:http://mirrors.sohu.com/ 网易开源镜像站:http://mirrors.163.com/ 教育网 东北大学(IPv4 & IPv6):http://mirror.neu.edu.cn/ 大连东软信息学院(IPv4):http://mirrors.neusoft.edu.cn/ 北京理工大学(IPv4):http://mirror.bit.edu.cn/ 北京交通大学(IPv4 & IPv6):http://mirror.bjtu.edu.cn/ 中国科学技术大学(IPv4 & IPv6):http://mirrors.ustc.edu.cn/ 目前是中国大陆高校访问量最大,收录最全的开源软件镜像 中国科学技术大学(IPv4):http://mirrors4.ustc.edu.cn/ 华中科技大学(IPv4)

TIME_WAIT太多解决思路和方法

亡梦爱人 提交于 2020-01-01 17:13:32
问题描述 环境是SLB+2台ECS实例,在ECS实例上跑的是的LNMP服务,在某一天下午三点中app包加载数据很慢,平时可能一两秒就能加载完成js,css等样式 解决方法 1、找到加载慢的域名和URL 访问后端数据库,看获取数据情况,访问数据正常。 2、查看操作系统CPU、内存、负载、网络情况 查看CPU命令:top 查看内存命令:free -m 服务器负载:uptime 网络:ping 域名 检测完后都没有问题 3、查看nginx访问日志 通过 tail -f 日志文件 查看,访问url地址,状态码都是200,证明正常 4、查看数据库 通过 show full processlist 查看数据库的整体状况,正在执行的SQL等情况。 备注: 这个我没有执行,因为我前面检测都没有问题,也能获取到数据,返回状态码是200,说明数据库是没有问题的。 如果有很多的SQL,有explain检索下,看看是否需要优化 5、查看TCP状态 命令:netstat -an | awk ‘/^tcp/{++S[$NF]}END{for(i in S) print i,S[i]}’ 发现TIME_WAIT的数量有近五千个,后来就先查看内核中tcp相关的参数 > sysctl -a | grep ‘tw’ net.ipv4.tcp_max_tw_buckets = 5000 #TIME_WAIT的数量

How to find location based on IP address in Excel

荒凉一梦 提交于 2020-01-01 09:29:17
问题 I've got a spreadsheet of about 5000 user events associated with IPs, and I'm trying to use IP to determine location using just an Excel formula. The IPs in my log are structured as "dotted quads" (decimal notation). I figured VLOOKUP is the way to go here, so I downloaded WEBNet77's IPV4 IpToCountry database, which seems like a comprehensive and up-to-date resource (is there a better resource out there for this purpose?). The database includes about 140K rows of IP ranges, with the sheet

Nginx 72万连接性能测试(一)

与世无争的帅哥 提交于 2020-01-01 08:58:58
转自:http://my.oschina.net/chenzhuo/blog/150200?p=2#comments 根据系统内存64G估算单台tengine做反向代理最高支持72万连接。为了验证达到该连接数时系统稳定运行,进行压测,先验证nginx与client建立72万连接时性能(不转发)。 关闭超线程,12核CPU对应12个nginx worker进程,每个进程worker_connections为60000,且关闭accept_mutex。前端LVS做FNAT模式转发,开synproxy。 1. Client 端建立连接数小于proxy 上限 7个client,每个client 10个进程对应不同vip,每个进程建立并维持9000个idle连接。共63万并发连接。 最大并发连接 最大CPU 利用率 最大内存占用 MaxTengineMem MaxSocketMem 625.0K 99.33% 4.0G 517M 388M 18:19:42: 如图,从18:19:42开始,Client端发起建立连接过程,CPU占用率提高,内存占用增加(1.4G-3.8G) 每个连接占用内存2.4G/630000 = 3.99KB( 4KB ) 18:19:51: 63W个连接建立完毕( CPS=7 万 ),CPU占用率下降趋于0,内存稳定在3.8G。 18:20:42:

Why request.getRemoteAddr() returns ipv4 or ipv6 depending on context (post query or ajax query)

…衆ロ難τιáo~ 提交于 2019-12-31 08:25:11
问题 I've donne a web app with Spring/GWT that uses Flash to upload files. When I send an ajax request with GWT and try to get the user ip address, I get an ipv4 address like: 127.0.0.1 but when I upload my files with flash (and so a post request on the same webapp) I get an ipv6 address 0:0:0:0:0:0:0:1 I use the same code to get the user ip which is: ServletRequestAttributes att = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes(); att.getRequest().getRemoteAddr(); The

TCP: time wait bucket table overflow解决方法

喜欢而已 提交于 2019-12-31 05:03:06
/var/log/messages 中出现大量的 TCP: time wait bucket table overflow 引起该现象的原因是服务器tcp的连接数太多,超出了内和定义的最大数 临时改变使用 # echo 20000 > /proc/sys/net/ipv4/tcp_max_tw_buckets 永久有效可如下 #vim /etc/sysctl.conf net.ipv4.tcp_max_tw_buckets = 20000 # sysctl -p 执行命令 netstat -an | grep 80| awk '{print $6}' | sort | uniq -c | sort -rn 可统计当前个连接的个数 以下引用其他文章 http://blog.sina.com.cn/s/blog_4e46604d0102vaf1.html 故障表现: 一:系统日志频繁出现:kernel: TCP: time wait bucket table overflow 二:服务器连接中,有大量TIME_WAIT netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' TIME_WAIT 5009 FIN_WAIT1 19 ESTABLISHED 3 FIN_WAIT2 2 SYN_RECV 14

网站访问慢排查方法及解决方案

余生颓废 提交于 2019-12-31 05:02:29
当出现网站慢的时候我们脑子中要映出几点原因:   1.程序代码执行方面   2.大量数据库操作   3.域名DNS解析问题   4.服务器环境 我也是这么解决的,下面说下解决中的步骤吧。   1.打开访问慢的网站观察下情况,通过火狐的fixfox 插件或者 IE的元素查看工具,你网站里面加载的信息会一览无遗的展现出来,并且那些元素加载耗时多少秒等等情况,如何解决能,把远程耗时久的js下载到本地,或者直接删除。   2.我看了下页面中有多处连接数据库操作的地方,并且有远程的数据库操作,并且还有多余的数据库连接代码,话不多说,改之,解决完了发现的确是快点了,但是还是不理想,于是我把页面执行数据库代码放到了数据库中执行没有耗慢的情况。   3.关于域名DNS的情况只是其中一种情况,不要急着找域名商的问题,你可以写个没有数据操作的页面放在同台服务器域名下,看看是不是访问同样慢,如果是才有可能,你还要让你周围的人也看看,最好别是你同公司的人。   4.我来看看服务器的情况吧,是不是CPU使用率过高造成的呢。   a. top 发现cpu使用也不高啊,30% 左右,但是发现一个问题,sleeping 的进程数比较多。擦,最好别是僵尸进程,现在这样的东西不多了。   b. 查看了下timewait的量: 发现有mysqld 和 httpd 的,大部分来自于httpd:命令 netstat -ae