服务器开启Gzip压缩功能
在负载均衡中有一个必须要做的事情就是给服务器开启Gzip压缩功能,对用户请求的页面进行压缩处理,以达到节省网络带宽,提高网站速度的作用。
Gzip是若干文件压缩程序的简称,通常指GNU计划的实现,此处的Gzip代表的就是GUN ZIP,这也是HTTP11协议定义的两种压缩方法中最常用的一种压缩方法,客户端浏览器大都支持这种压缩格式。
接下来,将介绍Apache、Nginx 如何开启Gzip压缩。
Apache开启Gzip要看查看是否已经开启mod_deflate模块,如果没有则需要先加载,在配置文件httpdconf中将
前面的#号去掉。另外,如果对Apache的配置文件不太懂的客户在修改配置文件之前对配置文件进行备份。
开启模块后,在httpdconf配置文件的最下面空白处添加一下内容:
其中DeflateCompressionLevel 的意思是压缩等级,共分为1-9,9级为最高,不建议使用太高的压缩比,这样会对CPU产生太大的负担。
打开配置文件 nginxconf找到Gzip on 把前面的注释符号#去掉即可开启GZIP服务。然后配置GZIP即可。
下面是一个相对优化不错的配置。
压缩协商(Content Negotiation)是指客户端和服务器之间在传输内容时,根据各自支持的压缩格式进行协商,选择最合适的压缩方案,以尽量减少网络带宽的使用。以下是压缩协商程序可能包括的一些步骤:
客户端发送请求:客户端向服务器发送HTTP请求,并在请求头中携带“Accept-Encoding”字段,用于告知服务器它所支持的压缩格式。
服务器响应:服务器接收到请求后,检查该请求所支持的压缩格式,并在响应头中携带“Content-Encoding”字段,通知客户端所选用的压缩格式。
压缩传输:如果服务器选用了压缩格式,那么在返回数据之前,服务器会将待返回的数据进行压缩,然后再将压缩后的数据发送给客户端。
解压缩:客户端收到服务器返回的压缩数据后,首先检查响应头中的“Content-Encoding”字段,确定服务器使用的压缩格式。然后,客户端使用相应的解压算法对压缩数据进行解压缩,得到原始数据。
压缩协商不是强制性要求,而是一种优化手段,如果客户端和服务器之间的网络带宽较大,那么压缩协商可能会增加额外的开销,不一定能够带来性能提升。
首先要知道你的客户群体有哪些,例如需要服务器托管的客户是做网站的,做APP软件开发的 做游戏的 做OA办公的等等
再就是了解这些客户群体的生活圈子,他们爱去哪些地方,怎样才能找到他们,熟悉自己的产品,了解客户最关注哪些问题,例如 不懂技术的关心价格 懂技术的关心性能,有的老板怕服务器托管的远,不方便。 有的无所谓 等等 这是一个长期积累的过程 慢慢练吧
合不合法和你的经营资质有关,和你的销售商品有关,和你销售过程有关,也和你纳税守法经营有关。
需要注意:
如果你网站服务器在中国大陆境内必须进行网站备案服务商才能给你开通访问。备案审核的主要是你主体真实性,譬如个人就是核验你身份证、电话等信息,公司的话再加营业执照和法人信息。只要信息真实一般都能通过但审核需要时间。
如果网站服务器在海外就不存在备案问题。通常外销网站或嫌备案麻烦就会选择海外服务器。
linux常用命令有哪些?
Linux是我们开发人员必不可少的系统,也是经常接触到的。然而,Linux命令比较多,有些不常用也难记住。那么,我们如何更高效的使用Linux命令,而又不必全面地学习呢?今天就给大家分享一下我在开发过程中,比较常用、也比较实用的Linux命令。
01查看文件或日志
查看文件内容或日志文件,相信几乎所有人都会接触到。其中,用得最多的就是head、tail和cat命令。
1、head
表示头部,查看最前面几行数据。
headtestlog:testlog文件前几行日志内容
head-n20testlog:查看testlog文件前20行日志内容
head-n-20testlog:查看testlog除了最后20行日志内容
2、tail
表示尾部,查看最后几行或实时日志。
tail-ftestlog:实时查看testlog文件最后几行日志内容
tail-f-n20testlog:实时查看testlog文件最后20行日志内容
tail-n20testlog:查看testlog文件最后20行日志内容
tail-n+20testlog:查看testlog文件20行后的所有日志内容
3、cat
用于查看文件内容。
cattestlog:查看testlog文件所有内容
02本地复制
同一台服务器不同目录之间复制文件或目录也是经常用到的。
1、复制文件
cptestlog/home/geshan/logs:复制testlog文件到/home/geshan/logs/目录下
cptestlog/home/geshan/logs/cptestlog:复制testlog文件到/home/geshan/logs/目录下并重新命名为cptestlog
2、复制文件夹
cp-rlogs//home/geshan/:复制logs目录及目录下所有文件到/home/geshan/目录下,此时该目录会有logs目录
cp-rlogs//home/geshan/testlogs/:复制logs目录及目录下所有文件到/home/geshan/testlogs/目录下,并把logs目录重新命名为testlogs,前提是/home/geshan/目录没有testlogs目录
注:-r或-R表示循环,循环目录下所有文件和目录。下面所有命令也是如此。
03远程复制
当我们需要从远程服务器复制某个文件或目录到本地登录的服务器时,大部分人想到先登录远程服务器下载该文件,然后再登录本地服务器再上传文件。这样是比较麻烦,效率也不高。
1、本地服务器复制到远程服务器
(1)复制文件
命令1:
scplocal_fileremote_username@remote_ip:remote_folder
命令2:
scplocal_fileremote_username@remote_ip:remote_file
命令3:
scplocal_fileremote_ip:remote_folder
命令4:
scplocal_fileremote_ip:remote_file
第1,2个指定了用户名,命令执行后需要输入用户密码,第1个仅指定了远程的目录,文件名字不变;第2个指定了文件名;第3,4个没有指定用户名,命令执行后默认与当前服务器用户名并需要输入用户密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名。
实例1:从本地服务器复制testlog至192168130130服务器的/home/geshan/目录,并重新命名为
20190125log
命令:
实例2:从本地服务器复制testlog至192168130130服务器的/home/geshan/目录
命令:
(2)复制目录
命令1:
scp-rlocal_folderremote_username@remote_ip:remote_folder
命令2:
scp-rlocal_folderremote_ip:remote_folder
第1个指定了用户名,命令执行后需要输入用户密码;第2个没有指定用户名,命令执行后需要输入用户名和密码。
实例:从本地服务器/home/appuser/目录下的tomcat目录复制到192168130130服务器的/home/geshan/目录命令:
2、从远程服务器复制到本地服务器
从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了。
(1)复制文件
实例:
从192168130130远程服务器的/home/geshan/路径下testlog文件复制到本地服务器/home/appuser/路径
命令:
scproot@192168130130:/home/geshan/testlog/home/appuser/
(2)复制目录
实例:从192168130130远程服务器的/home/geshan/路径下tomcat文件夹复制到本地服务器/home/appuser/路径
命令:
注:ip地址和路径之间(即冒号之间)没有任何空格,否则会报错。当第一次和另外一台服务通信(如复制文件),会提示是否信任,输入yes即可。
04压缩和解压
压缩和解压文件也是经常遇到的。如果下载一个目录下的所有文件,可以直接下载这个目录,但是直接下载目录的话,文件一旦很多,下载过程中很容易丢失文件,下载速度也比较慢。一般情况下是先压缩文件夹再下载。下面给大家介绍四种压缩和解压命令。
1、tar命令
解压:
压缩:
实例:解压一个logtar文件:
压缩log目录并命名为logtar:
2、gz命令
压缩:
注:压缩为gz文件源文件会消失如果想保留源文件,使用下面命令
解压:
targz和tgz解压:
压缩:
压缩多个文件:
实例:解压tomcattargz文件
压缩tomcat目录,并命名为tomcattargz文件
3、zip命令
解压:unzipfileNamezip压缩:
注:压缩目录时,需加-r,表示循环该目录下所有文件和目录。压缩多个文件或目录时,文件或目录之间需要空格。
实例:解压一个logzip文件:
压缩log文件目录并命名为logzip:
压缩log1和log2目录并命名为logzip:
压缩test1log和test2log文件并命名为logzip:
4、rar命令
同理,和zip命令类似,只需把zip改为rar即可。
05修改权限
Linux系统中文件和目录访问权限是不同的,通过些方式可以确定谁可以对该文件和目录进行相应的操作。
其中,文件或目录的访问权限分为只读,只写和可执行三种,分别代表可读、可写和可执行。
1、chgrp命令
改变文件或目录所属的组。命令:
实例:把testlog文件所属的组修改为geshan组
把logs目录及该目录下所有文件所属的组修改为geshan组
2、chown命令
更改某个文件或目录所属的用户。命令:
实例:把testlog文件所属用户修改为geshan用户
把logs目录及该目录下所有文件所属用户修改为geshan用户
3、chmod命令
用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。命令:
其中,mode有很多种表示含义,下面只对数字说明。大部分人看到mode有777或776等权限,这些表示什么呢?
为了方便,把mode改为abc,其中a,b,c各为一个数字,分别表示user、group及other的权限。r=4,w=2,x=1,r表示Read读,w表示Write写,x表示eXecute。
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。
实例:把testlog文件修改可读写执行(即777)操作。
把logs目录及目录下所有文件修改为读写(666)操作。
在Linux系统中输入ll(两个小写LL),如果文件或目录为777(读写执行)权限,可看到最前面为-rwxrwxrwx。如果为666(读写)权限,可看到最前面为-rw-rw-rw。
注:一般修改文件或目录权限需要超级用户(root)进行修改,否则可能会报权限不足。
这些Linux命令是比较常用实用的命令,肯定会有用得到的时候,如果对你有所帮助,记得点赞收藏转发哦!
0条评论