站三界导航
首页 建站经验
  • 几款常用的免费web网站日志分析工具推荐
    几款常用的免费web网站日志分析工具推荐

    网站的SEO优化过程中不免会分析网站日志,网站日志的分析和诊断就像给网站看病一样,我们通过网站日志的分析,可以更加清楚的知道网站的健康状况,使用这些数据更有利于开展网站SEO优化。网络管理员如果想在企业的大型网络中掌握网络性能,离不开对网络日志的分析,帮助你在网络性能出现问题时,及早发现。通过网站日志可以清楚的得知用户在什么IP、什么时间、用什么操作系统、什么浏览器、什么分辨率显示器的情况下访问了你网站的哪个页面,是否访问成功。对于专业从事搜索引擎优化工作者而言,网站日志可以记录各搜索引擎蜘蛛机器人爬行网站的详细情况,例如:哪个IP的百度蜘蛛机器人在哪天访问了网站多少次,访问了哪些页面,以及访问页面时返回的HTTP状态码。为什么需要日志分析工具?连接到网络的每个设备或应用都会创建日志文件。网络管理员使用这些日志文件来查看性能数据。这些工具很有用,因为它们提供了对用户本来不具备的数据的访问权限。日志分析工具从设备的日志文件中收集数据,并将其转换为易于阅读的格式。在日志分析工具中,以图形将性能的相关数据显示到仪表盘。以这种集中格式,读取性能数据要比尝试直接读取日志文件作为文本文件容易得多。常见的蜘蛛名称:Baiduspider:百度蜘蛛Baiduspider-Image:百度图片蜘蛛Googlebot:谷歌机器人Googlebot-Image:谷歌图片机器人360Spider:360蜘蛛sogouspider:搜狗蜘蛛一、网站日志的作用1、通过网站日志可以了解蜘蛛对网站的基本爬取情况,可以知道蜘蛛的爬取轨迹和爬取量。2、网站的更新频率也和网站日志中蜘蛛抓取的频率有关,一般来说更新频率越高,蜘蛛的抓取频率越高,而我们网站的更新不仅仅只是新内容的添加同时还有我们的微调操作。3、我们可以根据网站日志的反应情况,对我们的空间的某些事情和问题提前进行预警,因为服务器如果出问题的话在网站日志中会第一时间反映出来,要知道服务器的稳定速度和打开速度两者都会直接影响我们的网站。4、通过网站日志我们可以知道网站的那些页面是很受蜘蛛欢迎的,而哪些页面是蜘蛛连碰都不去碰的,同时我们还能发现有一些蜘蛛由于是过度爬取对我们的服务器资源损耗是很大的,我们要进行屏蔽工作。二、如何下载网站日志1、首先我们的空间要支持网站日志下载,这一点是很重要的,在购买空间时候需事先了解下是否支持日志下载,因为有的服务商是不提供这项服务的,如果支持的话空间后台一般都有日志WebLog日志下载这个功能把它下载到根目录在用FTP传到本地就可以,服务器的话可以设置将日志文件下载到指定路径。2、这里有个很重要的问题,网站日志强烈建议设置成每小时生成一次,小型的企业站和页面内容较少的网站可以设置成一天,它默认是一天,如果内容多或者大型站设置成一天生成一次,那么一天只生成一个文件,这个文件会相当的大,我们有时电脑打开是会造成死机,设置的话找空间商协调设置即可。三、网站日志数据分析1、网站日志中数据量过大,所以我们一般需要借助网站日志分析工具来查看。常用的日志分析工具有:光年日志分析工具、weblogexploer、WPS表格等117.26.203.167--[02/May/2011:01:57:44-0700]"GET/index.PHPHTTP/1.1"50019967"-""Mozilla/4.0(compatible;MSIE8.0;WindowsNT5.1;Trident/4.0;AskTbCS-ST/5.11.3.15590;.NETCLR2.0.50727;AlexaToolbar)"分析:117.26.203.167访问ip;02/May/2011:01:57:44-0700访问日期-时区;GET/index.phpHTTP/1.1根据HTTP/1.1协议抓取(域名下)/index.php这个页面(GET表示服务器动作);500服务器响应状态码;服务器响应状态码通常状态码有以下几种:200,301,302,304,404,500等。200代表用户成功的获取到了所请求的文件,如果是搜索引擎,则证明蜘蛛在这次爬行中顺利的发现了一些新的内容。而301则代表用户所访问的某个页面url已经做了301重定向(永久性)处理,302则是暂时性重定向。404则代表所访问的页面已经不存在了,或者说访问的url根本就是个错误的。500则是服务器的错误。19967表示抓取了19967个字节;Mozilla/4.0(compatible;MSIE8.0;WindowsNT5.1;Trident/4.0;AskTbCS-ST/5.11.3.15590;.NETCLR2.0.50727;AlexaToolbar表示访问者使用火狐浏览器及AlexaToolbar等访问端信息;2、如果你的日志里格式不是如此,则代表日志格式设置不同。3、很多日志里可以看到20000和200064则都代表正常抓取。4、抓取频率是通过查看每日的日志里百度蜘蛛抓取次数来获知。抓取频率并没有一个规范的时间表或频率数字,我们一般通过多日的日志对比来判断,当然,我们希望百度蜘蛛每日抓取的次数越多越好。5、有时候我们的路径不统一出现带斜杠和不带斜杠的问题,蜘蛛会自动识别为301跳转到带斜杠的页面,这里我们就发现了搜索引擎是可以判断我们的目录的,所以我们要对我们的目录进行统一。6、我们分析日志分析时间长了,我们能够看出蜘蛛的抓取规律,同一目录下面的单个文件的抓取频率间隔和不同目录的抓取频率间隔都可以看出来,这些抓取频率间隔时间是蜘蛛根据网站权重和网站更新频率来自动确定的。7、蜘蛛对于我们的页面的抓取是分等级的,是根据权重依次递减的,一般顺序为首页、目录页、内页。四、通过网站日志我们能知道什么?1、我们买的空间是否能够稳定?2、蜘蛛对我们的那些页面比较喜欢而对哪些不喜欢?3、蜘蛛什么时候抓取我们的网站频繁,我们需要什么时候更新内容?总结:所以不管是新站还是老网站,不管你做百度还是Google我们都能通过网站日志分析出来搜索引擎蜘蛛抓取的情况;如果网站长时间收录有问题,那么我们也可以对比网站日志中的搜索引擎蜘蛛行为,来了解网站是哪方面出了问题;如果网站被封,或者被K,我们都可以通过观察网站日志的情况来了解原因出在什么地方。我们要看的网站日志的分析和诊断就像给网站看病一样,我们通过网站日志的分析,可以简单明了的就知道网站的健康状况,可以利于我们更好的做网站优化,所以对于真正的SEO高手而言,分析蜘蛛日志是最直观,最有效的额。服务器日志分析软件或者在线工具,都是根据我们常用的WEB环境导出或者在线生成的LOG日志文件,然后进行的可视化数据分析。会区别开各个时间节点,访客、爬虫的行为,有些基础的用户可能在需要的时候看看LOG日志文件就可以,如果深入分析的话会需要一款辅助的日志分析工具。五、网站日志分析工具推荐1、WebalizerWebalizer,采用C语言编写的,具有很高的运行效率,每秒钟可以分析10000条数据记录。有人进行测试过,如果分析40M的日志文件,只需要十几秒。Webalizer日志工具是一款高效的、免费的web服务器日志分析程序。Webalizer日志工具会将分析结果以HTML文件格式保存,我们可以很方便的通过web进行浏览,webalizer支持标准的一般日志文件格式(CommonLogfileFormat)。2、GoAccessGoAccess,一款来自国外的免费开源可部署在服务器端实现实时日志分析的工具。而且GoAccess日志分析可以实现实时可视化WEB显示,这个优秀的交互功能比有些仅仅是数据化显示更为体验友好。GoAccess可以实现WEB浏览器端HTML、CSV、JSON报告,比较适合有需要强化运维能力和数据分析的项目。GoAccess采用C语言编写,可实现毫秒级的更新,支持Apache,Nginx,AmazonS3,ElasticLoadBalancing,CloudFront等WEB日志格式。可以实现漂亮的终端以及bootstrap风格控制面板。在这篇文章中,笔者就和大家一起探索GoAccess日志软件的部署和功能。一款可视化Web日志分析工具,通过Web浏览器或者nix系统下的终端程序即可访问。能为系统管理员提供快速且有价值的HTTP统计,并以在线可视化服务器的方式呈现。官网地址:https://www.goaccess.cc/3、AnalogAnalog,也是一款用来快速处理日志的开源日志分析工具。同样具有很高的效率,不过这款工具生成的日志结果不够美观,analog可以读取gz格式压缩的日志文件,并且支持读取多个文件。Analog下载安装和进行必要配置后,直接运行analog即可,也可以指定相应的启动参数来改变输出文件的内容块。一般地,会使用crontab来设置一个指定的时间去运行该程序。4、LOGalyzeLOGalyze,一款来自国外的面向用户的开源服务器日志和监控日志工具。支持Windows和Linux系统,可以用于收集数据之后,然后针对程序搜索找到所需要的信息。一般这款工具国外的使用的多,但是感觉不是太适合我们国内用户的使用习惯。LOGalyze配置过程也稍微复杂一些,然后我们在LOGalyze的Web界面中,运行动态报告,并将其导出到Excel文件、PDF文件或其他格式。这些报告结果是基于LOGalyze后端管理的多维统计信息。5、PapertrailPapertrail,是一款Windows系统的日志分析软件工具。软件可以支持自动扫描日志数据。Papertrail扫描日志数据时,可以选择希望扫描结果显示的信息。例如,可以选择扫描是否包含IP地址,电子邮件地址,GUID/UUID,HTTP(s)URL,域,主机,文件名和引用文本等。6、360星图一款非常好用的网站访问日志分析工具,可以有效识别Web漏洞攻击、CC攻击、恶意爬虫扫描、异常访问等行为。一键自动化分析,输出安全分析报告,支持iis/apache/nginx日志,支持自定义格式。下载地址:https://wangzhan.qianxin.com/activity/xingtu7、LogForensicsTSRC提供的一款日志分析工具,可从单一可疑线索作为调查起点,遍历所有可疑url(CGI)和来源IP。相关下载地址:https://security.tencent.com/index.php/opensource/detail/158、AWStats一款功能强大的开源日志分析系统,可以图形方式生成高级Web,流媒体,ftp或邮件服务器统计信息。官网地址:http://www.awstats.org/9、Logstalgia一款非常炫酷且可视化日志分析工具,可以直观的展示CC攻击和网站的日志分析,并以可视化的3D效果展示出来。下载地址:http://www.softpedia.com/get/Internet/Servers/Server-Tools/Logstalgia.shtml10、FinderWeb程序员的看日志利器,支持,tail,less,grep,支持超大的文本文件,从几M到几十G的日志文件都流畅自如。下载使用:http://www.finderweb.net/download.html11、web-log-parser一款开源的分析web日志工具,采用python语言开发,具有灵活的日志格式配置。github项目地址:https://github.com/JeffXue/web-log-parser12、ELK开源实时日志分析的ELK平台,由ElasticSearch、Logstash和Kiabana三个开源项目组成,在企业级日志管理平台中十分常见。下载使用:https://www.elastic.co/cn/elastic-stack13、Splunk一款顶级的日志分析软件,如果你经常用grep、awk、sed、sort、uniq、tail、head来分析日志,那么你可以很容易地过渡到Splunk。下载地址:https://www.splunk.com/zh-hans_cn/download/splunk-enterprise.html14、IBMQRadarQradar有一个免费的社区版本,功能上和商用版本差别不大,适合小规模日志和流量分析使用。下载地址:https://developer.ibm.com/qradar/ce/总结,我们一般站长也很少日常去分析日志,即便需要使用也是在出现故障的时候去看。不过目前也有一些WEB环境自带插件是支持可用日志分析的,比如会看看搜索引擎爬虫的日志和用户行为日志。

    • 建站经验
    • 125阅读
    • 2022-04-28

  • 如何解决Site网站首页不在第一位的问题
    如何解决Site网站首页不在第一位的问题

    为什么Site网站首页不在第一位?很多站长看到这个问题都会心发慌以为网站是否是被降权了,今天我就来彻底给大家分析一下。site网站首页不在第一位不一定是降权如下图,该网站site首页在第二位。但是该网站是没有降权的,网站的排名依然是在搜索引擎首页。例子网站排名位置情况 Site网站首页不在第一位原因分析Site网站首页不在第一位有四种可能:1、网站打不开(间歇性打不开)从SEO的角度,搜索引擎需求网站长时间稳定打开,这样才有利于用户浏览体验。好的服务器(空间)是网站优化的保障,当网站空间出现问题的时候,被搜索引擎检测到网站打不开,搜索引擎会对网站作出轻微的处罚,减低网站信用度,从而导致site的异常。由于服务器的不稳定导致网站经常打不开,seo知否建议换个稳定的服务器,稳定的服务器更利于搜索引擎优化。至于网站被黑需要找到网站漏洞并修补网站访问情况可以到站长平台查看解决办法:只要后续网站访问正常,后续网站情况也会恢复正常。2、错误的改版这里讲的改版是大维度改版,比如、标题的整改、站内结构调整、布局大幅度调整!这样的改头换脸式改版,都有可能造成短期间的降权。搜索引擎喜欢的是一个稳定的网站,经常变动的站点对SEO不友好。出现site不在第一的情况,也就随之而来。网站经常频繁的大幅度改版是做SEO的第一大禁忌,特别是修改三大标签和其他一些权重标签。解决方法:坚持优化维护网站。让搜素引擎重新评估该网站的得分。3、内容权重高于首页很多站长可能会发现site虽然不在首页了,但是其他的页面却收录非常好,甚至是秒收。这种情况下是因为内页权重大于首页权重,造成这种原因很多是因为内链的结构的不合理,导致首页的权重低于内页权重。seo知否建议调整你网站内链的结构,通过首页有规律的更新,内页指向首页的链接。期间,可适当的降低内页的权重。解决办法:坚持优化网站,1-2星期左右会恢复正常的状态。4、过度优化网站被处罚搜索引擎为平衡搜索的生态圈,有着完善的作弊坚持机制,为的是营造公平的竞争环境。当你的网站触犯作弊机制,网页将会受到处罚。Site数据自然就会不正常。如果你经常使用其他外链群发工具,发现site不在首页那就很正常了。外链需要有规律的去建设,控制链接的增长频率。你的网站跟别人的网站交换友情链接是有正推荐度的,如果对方的网站受到搜索引擎惩罚,那么给你反馈的就是一个负推荐度,这样你的网站就会受到牵连。解决方法:通过检查网站是否有被降权、处罚、网站被k等,来确定网站是否被判断过度操作。作为一个合格的站长,我们需要清楚的明白,操作的规范和作弊的要点。这能让我们检查出网站的问题,同时避免后续的误操作。从以上的原因分析中,我们发现site异常的情况原因,都是由于网站出现异常而导致。我们不需要害怕,我们需要直面问题的本身,针对性的去解决该问题,这才算是一名合格的SEO站长。

    • 建站经验
    • 99阅读
    • 2022-04-28

  • 什么是下拉框关键词?下拉框关键词怎么刷?
    什么是下拉框关键词?下拉框关键词怎么刷?

    很多新手站长或者做自媒体的朋友都想了解搜索引擎的下拉与相关搜索结果是怎么出来的呢?这个问题其实也很简单。今天,就由小嵘给大家再次整理一下分享给大家:seo下拉框使用百度、谷歌、360、搜狗等等的搜索引擎下拉框:主要被应用到的在搜索一个关键词的时候,搜索引擎会推荐一些和这个关键词相关联的关键词出来让用户选择搜索,从而省去了打字的烦恼(如:搜索“seo”,百度下拉框出现“seo是什么职业,seo外包,seo推广”等等,此处省略100字,可以发挥你的想象)。对于做网络销售或自媒体的来说,能把这东西用好了,把自己所作产品相关的东西弄上去了对自己的营销来说是一件非常有意义的事情。当然,具体要达到什么效大家都懂的,我就不多说了,自己看图搜索引擎下拉框当输入关键词,下拉框就会跳出XXXX的相关关键词(长尾关键词)百度、谷歌、360、搜狗等等的搜索引擎都是同理的,而且淘宝、拼多多、今日头条、微信搜索等等的搜索都也是同理的,都可以使用下拉框。有搜索的地方,就有seo,除非大家都不搜索了,seo才可能会被消灭,那可是太难了。首先,我们需要了解的是百度下拉框的算法:(以百度搜索引擎为例)一个关键词每天有多少搜索量,和它相关的词有多少搜索量,这些数据百度都记录在案的,在百度搜索一个较短关键词(泛词)的时候,下拉框中可能会出现一些和它相关的一些长尾词(如:在输入”seo“的时候下拉框中出现了很多相关词按顺序往下是“seo优化的方法”,“seo优化的日常工作”….等等),从这个结果可以看出,在最近一段时间内搜索“seo优化的方法”的次数大于“seo优化的日常工作”,而“seo优化的日常工作”搜索量也大于它下面的词,依此类推。(一定周期内搜索量越大下拉框中排名越靠前,当然肯定还结合了其他判断方式,但是这可是主要的一种)而目前市场上一些刷”百度下拉框”的软件就不介绍了,我们可以通过以下二种方式来进行操作。一:让别人帮忙搜索如果你人缘好,那么可以找你的朋友帮忙,一天找200个人帮你搜索2个关键词,可能你能做到,那第二天、第三天、第四天、、、、、应该怎么办呢,估计没那么多人坚持了吧,所以这方法不是很可行。那就像刷下拉列表软件原理一样让陌生人帮忙搜索吧但是怎么让陌生人帮你搜索呢?也许你还没有开发那种工具的能力,或者你有开发者工具的能力,但是你没有宣传这软件的实力,所以想通过和刷下拉框软件一样的原理让别人主动帮你搜是不太可能的,直接找他?更不行。相信对做过一定时间站长的朋友来说应该都有自己的站,而且每天有几百甚至上千个不同ip的访问应该也不是难事?如果有这资源那么恭喜你,你可以让这些资源来访问你,增加点击量,从而增加关键词的词权,增加关键词的权重。二:网站的人帮你忙。怎么让陌生人帮忙搜索呢?两个字“弹窗”弹窗广告很多自媒体朋友和做站的朋友都接触过,当打开一个页面是,自动弹出另外一个窗口,之前接触的那些弹窗都是广告,而这些广告也是一个单独的页面,百度搜索结果也是一个独页面,如搜索关键词这个地址应用到弹窗中,当打开正常页面以后自动弹一个页面出来目标就是百度搜索结果地址。这样就达到了有人访问你网站,就自动帮你搜索一次关键词的目的了。这样就有了刷下拉框软件的功能,且更优于那软件,不用整天开着电脑去刷,节省了软件费用,也节约了电费,节约了电脑寿命。当然,如果你觉得这有点不利于用户体验,那么你可以不用弹窗(提示iframe,但要注意被百度判断调用来路,不过找到原因解决方法就很简单,给大家一点想象空间)。知道了这个原理后,估计又有人会为这资源犯愁了,或者自己有资源但是怕影响自己网站的形象,影响了用户体验。既然有了这个顾虑就别拿自己的站来弄了,果断用别人的吧,这点小事应该难不倒seo界的人。如果实在不会还有其他方法,现在网上卖广告的人不少,可以直接找一些小站长合作,花少量的钱,让他每天为你带来几百个ip的弹窗应该还是没问题的。文章来源:https://www.sohu.com/a/332629747_120262753

    • 建站经验
    • 113阅读
    • 2022-04-28

  • 免费SSL证书CloudFlare SSL和Wosign沃通SSL申请及使用教程
    免费SSL证书CloudFlare SSL和Wosign沃通SSL申请及使用教程

    有些项目的需要使用SSL证书才显得网站比较正规,当然正规的商业项目肯定是需要购买付费的SSL证书的。有些项目我们为了节省成本,于是可以选择免费的SSL证书将就使用了事。个人网站用SSL证书,貌似在国外这几年开始比较流行起来,尤其是Google对使用了SSL证书的网站表示更加“亲近”后,越来越多的网站开始使用Https访问了。不过,国内的个人网站依然不会使用SSL证书,用的比较多的仅限于局子商务、账户系统等。这可能和国内的搜索引擎对加载了SSL的网站不友好有一定的关系,另外一个原因可能是大家普遍没有意识到Https加密访问的重要性,安全意识没有得到足够重视。对于个人站长来说,购买一个SSL证书的价钱基本上够再买一个主机空间了,如果域名更多则成本更大。不过,在网络上免费始终是一个永远不过时的市场,主机空间有免费的,而SSL证书自然也有免费的。本篇文章就来为大家分享两款可供免费申请和使用的SSL证书:CloudFlareSSL和Wosign沃通SSL。这两款SSL证书已经被当前主流的操作系统和浏览器所支持,在一定程度上可以当作付费的SSL来使用。说到免费SSL证书,不得不要提到StartSSL。StartSSL免费SSL已经相当长了的时间了,且基本上已经得到国内各大公司的认可,适合范围非常地广泛,申请和使用也比较简单:主要还提供申请立即生效的免费SSL证书,而且注册资料简单,不需要负责的个人信息验证即可申请,比STARTSSL申请还要容易很多。第一步、免费申请SSL证书活动官方网站:http://www.wosign.com/price.htm在众多付费方案中,我们在最后一列可以看到免费的SSL证书,而且包含的内容还是可以足够我们免费账户使用的。第二、选择方案注册账户正常的把这款免费方案添加到购物车,然后注册账户。一个证书只能绑定一个域名。提交注册之后激活邮箱就可以。然后会把证书发送邮件给我们激活就可以下载到本地。Wosign沃通免费SSL安装使用1、先到Wosign沃通中将SSL证书文件下载到本地。2、下载到本的Wosign沃通免费SSL证书文件,打开后能看到针对不同的服务器的SSL证书配置文件。3、每个文件包中都有证书文件和密钥,有了这两个文件我们就可以在我们自己的网站安装SSL证书了。4、如果是Cpanel主机,那么安装SSL证书就简单了,直接进入到SSL管理器中,点击上传CRT文件。5、然后粘贴你的CRT文件内容,提交。6、接着再点击激活域名SSL,选择你想要使用SSL证书的域名,如果之间已经是经过在线生成的KEY,这时就可以点击自动填充了。4、如果不自动填充,也可以自己分别将Key和CRT两个文件内容粘贴进去,再点击提交即可。(点击放大)免费SSL证书:CloudFlareSSL和Wosign沃通SSL申请开通和安装使用一、CloudFlare免费SSL证书申请开通1、CloudFlare官网:1、官方网站:https://www.cloudflare.com/2、CloudFlare是美国一家提供CDN服务的网站,在世界各地都有自己的CDN服务器节点,国内外很多大型公司或者网站都在使用CloudFlare的CDN服务,当然国内站长最常用的就是CloudFlare的免费CDN,加速也非常好。3、如果不是国内经常出现无法连接CloudFlare的CDN服务器节点,相信CloudFlare可能会比现还会火一些。CloudFlare的免费CDN配额足够,只需要修改一下NS服务器就可以启用CDN,并且还有防DDos和CC攻击保护:cloudflare免费CDN加速使用方法与教程。4、CloudFlare提供的免费SSL证书是UniversalSSL,即通用SSL,用户无需向证书发放机构申请和配置证书就可以使用的SSL证书,CloudFlare向所有用户(包括免费用户)提供SSL加密功能,web界面5分钟内就设置好证书,24小时内完成自动部署,为网站的流量提供基于椭圆曲线数字签名算法(ECDSA)的TLS加密服务。5、开通CloudFlare免费SSL证书的方法很简单,先在CloudFlare中添加你想要使用CDN的域名。6、然后点击管理后台的设置。7、在CDN设置页面中可以开户CloudFlare的免费SSL服务,默认是FlexibleSSL,即您的用户到CloudFlare的连接是加密的,但是CloudFlare到您服务器的连接是不加密的。8、CloudFlareSSL还有其它两种:FullSSL和FullSSL(strict),FullSSL除了用户到CloudFlare是加密的外,CloudFlare到您服务器的连接也是加密的,strict则需要你的服务器有正式的SSL证书。下面一张图可以直观看出这三种SSL的区别。(点击放大)二、CloudFlare免费SSL证书安装使用1、CloudFlare免费SSL证书的优势在于使用SSL证书的网站不需要独立IP,如果你选择的是FlexibleSSL,你甚至不需要对自己的网站做任何改动就可以用上高大上的SSL服务。2、如果你选择了FullSSL模式,您需要在服务器部署SSL证书,可以是自己签发的证书。nginx服务器自己签发SSL证书的命令是:opensslgenrsa-des3-outfreehao123.key1024opensslreq-new-keyfreehao123.key-outfreehao123.csropensslrsa-infreehao123.key-outfreehao123.nopass.keyopensslx509-req-days365-infreehao123.csr-signkeyfreehao123.nopass.key-outfreehao123.crt3、nginx服务器配置SSL证书可以参考以下代码(主要是注意SSL证书存放路径):server{listen443;server_namewww.xxx.comxxx.com;sslon;ssl_certificate./cert/freehao123.crt;ssl_certificate_key./cert/freehao123.nopass.key;access_log/srv/www/logs/access_ssl.log;error_log/srv/www/logs/error_ssl.log;root/srv/www/public_html;default_typetext/html;location/{indexindex.phpindex.htmlindex.html;}}4、如果你选择了FullSSL(strict),那么你在你自己的服务器部署的SSL证书就需要真正的SSL证书了,一般需要到像Godaddy、Namecheap等服务商中购买。话又说回来了,购买了正式的SSL证书,又会觉得用CloudFlare免费SSL证书没有很大的必要了。免费SSL证书使用小结1、免费的SSL证书最大的问题就是不是很的平台和浏览器都支持,CloudFlare只支持ServerNameIndication(SNI)协议的现代浏览器,国内几乎有一半人使用的浏览器不支持此协议。而Wosign沃通免费SSL证书有朋友反映说有部分手机浏览器不支持。2、另外在使用SSL证书前请考虑清楚这一点:百度对https支持不友好,基本上不会收录Https的文章;360搜索对https支持不友好;搜狗搜索对https支持不友好;Google对Https非常友好,做哪一类网站要不要用SSL证书请三思。

    • 建站经验
    • 168阅读
    • 2022-04-28

  • 你的域名被“clientHold”了吗?各种域名状态中文介绍
    你的域名被“clientHold”了吗?各种域名状态中文介绍

    cn域名各个状态说明:以client开头的状态表示由客户端(注册商)可以增加的状态以server开头的状态表示服务器端(CNNIC)操作增加的状态既不以client开头也不以server开头的状态由服务器端管理域名的状态解释:ok正常状态inactive非激活状态(注册的时候没有填写域名服务器,不能进行解析)clientDeleteProhibited禁止删除serverDeleteProhibited禁止删除clientUpdateProhibited禁止修改serverUpdateProhibited禁止修改pendingDelete正在删除过程中pendingTransfer正在转移过程中clientTransferProhibited禁止转移serverTransferProhibited禁止转移clientRenewProhibited禁止续费serverRenewProhibited禁止续费clientHold停止解析serverHold停止解析pendingVerification注册信息正在确认过程中

    • 建站经验
    • 105阅读
    • 2022-04-28

  • NameCheap 域名PUSH 过户、转移、接收图文教程
    NameCheap 域名PUSH 过户、转移、接收图文教程

    push,指将域名从一个帐户转移到另一个帐户上,同时注册信息更正为新帐户里面的所有者信息,是在同一个服务商之间产生的行为。域名转出是从一个服务商转到另一个服务商!NameCheapPUSH就是一种域名拥有者的更换,包括注册信息等都会变更,当然有些人为了抢域名,往往在NameCheap中注册了多个账号,为了便于统一管理,也会采用NameCheapPUSH方法将所有的域名集中在一个账户中。NameCheapPUSH方法:域名过户、转移、接收图文教程一、NameCheapPUSH前的准备工作1、登录你的NameCheap账号,点击“ManageProfile”。2、在左边的设置中,选择“PushSetting”。3、如果你是域名的接收方,请在“PushSecuritySettings”中设置为“全部接收”,即不需要密码,任何人都可以Push和接收。4、如果你是域名的发送方,请选择“RequiresAuthorizationCode”,然后你会看到一个授权码,这个授权码在你Push域名时要用到。二、NameCheapPUSH图文方法1、点击你想要过户的域名。2、然后在左边点击“PushDomainToUser”。4、接着输入你的NameCheap账户密码、对方的账号和刚刚得到的域名授权码。3、点击确认你的域名转出。4、接着可以看到域名转出成功的提示了。三、NameCheapPUSH后接收操作1、NameCheapPUSH后,对方可以直接在域名管理处看到已经转过来的域名了。2、接收到了NameCheapPUSH来的域名后,因为NameCheapPUSH在购买域名时赠送whois保护,你可以激活它。3、勾选“EnableWhoisGuard”,完成NameCheapPUSH接收域名的所有操作。4、这时候你就可以使用对域名进行DNS解析了,例如先到DNSPOD中添加域名。5、然后将NameCheap域名的NS更换,待DNS解析生效后,就可以添加A、CNAME记录了。四、NameCheapPUSH失败的原因分析1、在实际的NameCheapPUSH操作中,西西也遇到了NameCheapPUSH失败的问题。2、提示是对方的联系信息不完整,解决的办法就是补充完整联系人信息即可。3、至于其它的NameCheapPUSH失败的原因,有可能是账号受限、特定域名等等。五、NameCheapPUSH方法小结1、NameCheapPUSH出现问题主要还是在授权码设置一块,如果你在NameCheapPUSH时遇到错误,可以尝试重置域名Push授权码,转出域名时也可以选择是否自动更新域名联系人信息等。

    • 建站经验
    • 168阅读
    • 2022-04-28

  • Godaddy Namecheap Name域名续费价格分析及国内外域名续费对比
    Godaddy Namecheap Name域名续费价格分析及国内外域名续费对比

    Godaddy、Namecheap、Name这三家域名商是朋友们经常购买域名的地方,Godaddy域名价格便宜,而且买主机还送域名,各种各样的域名在Godaddy最多,Namecheap经常搞域名促销活动,不搞歧视,因此也有不少的域名。在国内的知名度也是Godaddy最高。美国各大域名商首年注册时价格可能会相差很大,例如有一美元的,有十美元的,还有免费送域名的,但是域名第二年续费时却是恢复了“原价”,基本上在10美元一年以上。对于只有少量的域名的朋友来说相差1、2美元关系不大,但是对于那些“米农”来说就要好好辨别一下了。GoDaddy是一家提供域名注册和互联网主机服务的美国公司,服务产品涉及域名主机领域基础业务:域名注册、虚拟主机、VPS、独立主机,以及域名主机领域的衍生业务:独立IP、SSL证书、网站建设、邮箱、相册、速成网站、加速搜索引擎收录、网站分析等。Name,即Name.com,之前相对于其它的域名商来说价格贵,而且不搞域名低价促销,但是现在其它的域名商都把价格提上去了,现在看来Name.com的域名价格又很“平民”了。这次主要是想分享的是GodaddyNamecheapName三家域名续费问题。首当其冲的就是Godaddy,这厮现在域名续费原价很贵(基本上不会比其它的域名商续费便宜),域名续费的优惠码又少得可怜,好几个域名续费都花了10美元左右。Namecheap域名续费又要比Godaddy便宜一些,可以使用Paypal付款。Name.com域名续费还送免费Whois保护,如果在Godaddy单独购买Whois保护还得花几美元,所以如果综合起来来看的话,Name.com的域名续费是这三家当中最便宜的。对比一下国内域名商的域名续费价格,貌似和国外的域名商基本持平了。我们不仅要选择便宜的域名商,更要选择那些靠得住的域名商,经常看到一些人在网上“哭诉”自己珍藏了十几年的老域名被人盗走或者被强制收回的情况,如果排除个人违规的原因,那么这个域名商就是不值得信任了。保护自己的域名就是保护自己的“财产”,说不定哪天就会有像愿意花几百万来购买域名的“老罗”找上门来:GodaddyNamecheapName域名续费价格分析和国内外域名续费对比一、Godaddy域名续费1、进入Godaddy用户中心,点击域名续费的域名。2、然后选择Godaddy域名续费时长。3、接着跳转到Godaddy购物车结算页面,这里可以看到Godaddy的域名续费的价格是10.99美元。4、经过测试,Godaddy的域名续费优惠码几乎都没有用,没办法,只好硬着头皮续费了,在下方可以选择银联或者支付宝来给Godaddy续费。5、最后Godaddy域名续费成功,加上0.18的税费,续费个.info域名花了11.17美元。二、Namecheap域名续费1、进入Namecheap域名管理中心,点击需要续费的域名后面的“续费”按钮。2、接着选择续费时长。3、然后是选择使用Paypal付款。4、如果你的Namecheap有余额的话,也可以直接使用余额来付款。5、最后加上税费,总价是10.87美元。三、Name.com域名续费1、Name.com域名续费免费赠送Whois保护,详细教程:Name.com注册或续费域名获得免费Whois隐私保护方法。2、进入Name.com,点击域名续费。3、然后选择付款周期。4、最后使用Paypal付款。5、在Name.com续费一个.com域名总共花了10.10美元,还得到Whois保护。四、国内外域名续费价格对比1、国内的域名商杂乱多,这里以万网作为典型,现在域名注册和续费的价格在万网都是人民币50元左右。和国外的差不多。2、从上面GodaddyNamecheapName域名续费价格对比中可以看出,域名续费的价格基本上在10美元以上,其中Name的域名续费最划算。3、国外域名注册商的价格优势开始慢慢减弱。尤其是Godaddy进入到2014年后开始主推12美元一年主机赠送域名的活动,单纯的购买域名已经不是很便宜了。4、国外域名注册商的域名续费价格开始提高。其实不管是域名注册还是域名续费一年是比一年高,一些之前走低价路线的域名商都纷纷在域名续费时提高了价格。5、国内的域名注册商的域名价格开始走低。不管你有没有发现国内域名商的这些“改变”,但是CN域名确实又变成了“白菜”,不过曾经被“伤过”的草根站长难道还会再买吗?五、GodaddyNamecheapName域名续费价格小结1、总得来说,现在国外的物价水平也是一年比一年高了,域名购买和续费的价格也是一年比一年高,想要找到便宜的域名续费也是越来越少了,但是千万不能片面地追求便宜,而忽视了域名“安全”。2、现在有不少的域名商在接收域名转入时还是比较便宜的,例如.Me域名续费价格高达二十几美元,但是将域名转出到另一家域名商那里则会便宜到10美元以下,想当于续费了一年,我们可以利用域名转入与转出方式来给域名便宜续费。

    • 建站经验
    • 188阅读
    • 2022-04-28

  • GoDaddy 域名PUSH图文教程 ACCEPT接受Godaddy域名PUSH的方法
    GoDaddy 域名PUSH图文教程 ACCEPT接受Godaddy域名PUSH的方法

    海外注册商注册的域名就是非常的方便管理以及过户,手上有一枚域名被某人看中,达成协议之后肯定是需要过户的。域名在Godaddy注册商,要么是直接PUSH到他的账户中,要么就是通过解锁、提供转移码让其转到自己需要的注册商。对方选择前者,他自己有Godaddy账户的,这就相当方便。我直接把域名PUSH到他的账户就完事。第一、登录我们自己的GODADDY账户然后点击MANAGEMYDOMAINS进入我们的域名列表中。第二、选择需要过户的域名准备过户设置选择需要过户的域名,然后在MORE-BEGINACCOUNTCHANGE选择转出。这里有一个问题,如果域名状态是Pending是不可以转出的,我们需要先解决"PendingWhoisVerification"问题。第三、输入对方GODADDY资料我们只需要得到对方账户的用户名或者CUSTOMERNUMBER,以及账户的邮箱,按照上面的图示范就可以转出,点击NEXT,下面如果有勾选的就勾选,反正就是一直到最后一步。这样我们就完成域名PUSH到对方账户中,对方如何需要接收域名,请看下文如何接受push域名。GoDaddy域名教程–ACCEPT接受Godaddy域名PUSH的方法因为不同的注册商的系统不同,政策也不同,转出过去不会立即到我们的账户下,需要接收方接受确认才可以到他的账户,否则一段时间后还会自动回到原始的账户中。如果我们作为域名接收方,如何接收域名呢?因为GODADDY域名转出过来还需要我们手工接收的,不会类似有些注册商直接就进入账户中。第一、进入域名管理中心点击上面的域名管理列表,然后看到域名的账户后台。第二、准备同意转入进入界面后,点击左上角的位置,看到"Domains"-"PendingAccountChanges"。然后在"IncomingAccountChanges"下会看到对方PUSH过来的域名列表,我们选择域名,点击上面的ACCEPT按钮。这里必须勾选条款同意,然后才可以点击OK按钮。最后,这样我们在域名列表中,等待不到1分钟就可以看到域名已经到户,如果域名有出现状态是Pending,我们需要进行验证,解决方法参考"PendingWhoisVerification"。同样的,我们需要检查域名的信息和DNS解析,有些时候在PUSH转出的时候即便我们勾选不变动DNS,但有些时候还是会变的,所以最好检查一遍。

    • 建站经验
    • 163阅读
    • 2022-04-28

  • 网站改版方案需要考虑哪些方面?
    网站改版方案需要考虑哪些方面?

    当网站运营一段时间效果不佳或者希望获得更好效果时,不妨对网站进行重新规划改版设计,有时只是进行一些看似微小的改进,只要真正体现出营销型企业网站的基本特点,往往就可以取得明显的效果。网站改版,前提要知道为什么要改,如何改?如果只是设计、功能和栏目等的稍微变动,这些很简单,从技网站改版的步骤网站改版的步骤(2张)术上说并没有多少难度。,首先就要对原有的网站进行认真的分析,能够及时发现原来网站存在的一些主要问题,然后再有针对性的对原有网站进行修订和改正,这是进行网站改版的一个最基本的前提。在考虑网站改版的时候,一定要考虑的几个方面:1.本次网站改版要达到什么样的目的?2.网站改版以后是否更个性化,创意性?3.我们核心的优势是什么?4.我们如何超越竞争对手?5.公司服务的有哪几类客户群?6.公司可以提供哪些服务及优势来优于竞争对手?网站改版能达到好的效果,在改版过程中,网站改版需要考虑哪些方面?1、确定目标关键词网站首页确定3-5个目标关键词。2、确定长尾关键词给网站栏目和分类页确定长尾关键词。3、URL静态化网站每个页面的URL进行标准化,实现URL静态化每个页面都只留一个URL对应。4、网站的结构条理化网站的结构,建议选择简单的树状结构,去掉无用的功能。树状结构:网站首页—>分类—>小分类—>内容页面。5、长尾关键词记录单对原来已经存在的内容页面修改,给各个内容页面提炼长尾关键词,长尾关键词和所对应的URL放入长尾关键词记录单。6、四处一词把提炼出来的长尾关键词,做四处一词。7、页面的更新机制网站各个页面的更新机制。例如:各个页面出现一个最新文章的板块、相关文章的板块、随机文章的板块。网站改版需要先做好网站的规划,确定好如何修改,改版的目的最终效果也是吸引用户,降低跳出率,提高转化率等,一切以用户体验为出发点。8、处理网站死链将收集好的所有死链接粘贴到网站根目录的一个文档中,再把文档地址提交到百度站长工具--网页抓取--死链提交--添加新数据--填写死链文件地址;若大量死链具有一定的规则,如某个目录下全部为死链接,可提交规则死链。将收集好的所有死链接粘贴到网站根目录的一个文档中,再把文档地址提交到百度站长工具--网页抓取--死链提交--添加新数据--填写死链文件地址;若大量死链具有一定的规则,如某个目录下全部为死链接,可提交规则死链。改版修改的注意事项:1、切忌改版网站标题(Title)及描述(Despretion)站在搜索用户的角度考虑,网站关键词是引导搜索用户最快速度搜索到自己想要的内容,省时省力,高效率低投入。站长搜索引擎的角度出发,网站的标题就是搜素引擎抓取核心关键词的最大捷径。搜索引擎会根据其标题和内容的匹配程度、网站内容的贡献和链接的投票得分,给网站一个符合它价值的排名,即搜索网站优化排名!2、切勿对网站栏目及导航条大更改网站栏目是搜索引擎非常重视的一个关键所在,因为栏目下集中了大量相关内容文章页,搜索引擎往往通过每日搜集该栏目下的内容,对栏目的权重予以逐步提升,也对栏目进行每日更新。栏目页权重大大高于文章页,因为有许多内容在支撑,这也是为什么制作专题能够获得良好排名的原因之一。一旦大规模改变栏目,对导航条项目进行随意更改和丢弃,势必造成搜索引擎熟悉的内容成了一张全新的面孔,造成搜索引擎的不信任。3、尽可能的不更改网站域名网站改版过程中,域名能不更改尽量不更改,如果确实要换,做好301跳转,提交到站长平台。4、慎重考虑网站整体架构的更改问题网站整体架构在网站改版过程中起到了举足轻重的地位,是否更改需要慎重考虑,网站URL尤为重要。

    • 建站经验
    • 114阅读
    • 2022-04-28

  • 千万级流量的大型分布式系统架构设计
    千万级流量的大型分布式系统架构设计

    文中一部分为读书笔记,一部分是个人经验总结,对大型分布式网站架构有较好的参考价值。一、大型分布式网站架构技术1、大型网站的特点用户多,分布广泛大流量,高并发海量数据,服务高可用安全环境恶劣,易受网络攻击功能多,变更快,频繁发布从小到大,渐进发展以用户为中心免费服务,付费体验2、大型网站架构目标高性能:提供快速的访问体验。高可用:网站服务一直可以正常访问。可伸缩:通过硬件增加/减少,提高/降低处理能力。安全性:提供网站安全访问和数据加密、安全存储等策略。扩展性:方便地通过新增/移除方式,增加/减少新的功能/模块。敏捷性:随需应变,快速响应;3、大型网站架构模式分层:一般可分为应用层、服务层、数据层、管理层与分析层;分割:一般按照业务/模块/功能特点进行划分,比如应用层分为首页、用户中心。分布式:将应用分开部署(比如多台物理机),通过远程调用协同工作。集群:一个应用/模块/功能部署多份(如:多台物理机),通过负载均衡共同提供对外访问。缓存:将数据放在距离应用或用户最近的位置,加快访问速度。异步:将同步的操作异步化。客户端发出请求,不等待服务端响应,等服务端处理完毕后,使用通知或轮询的方式告知请求方。一般指:请求——响应——通知模式。冗余:增加副本,提高可用性、安全性与性能。安全:对已知问题有有效的解决方案,对未知/潜在问题建立发现和防御机制。自动化:将重复的、不需要人工参与的事情,通过工具的方式,使用机器完成。敏捷性:积极接受需求变更,快速响应业务发展需求。4、高性能架构以用户为中心,提供快速的网页访问体验。主要参数有较短的响应时间、较大的并发处理能力、较高的吞吐量与稳定的性能参数。可分为前端优化、应用层优化、代码层优化与存储层优化。前端优化:网站业务逻辑之前的部分;浏览器优化:减少HTTP请求数,使用浏览器缓存,启用压缩,CSSJS位置,JS异步,减少Cookie传输;CDN加速,反向代理;应用层优化:处理网站业务的服务器。使用缓存,异步,集群代码优化:合理的架构,多线程,资源复用(对象池,线程池等),良好的数据结构,JVM调优,单例,Cache等;存储优化:缓存、固态硬盘、光纤传输、优化读写、磁盘冗余、分布式存储(HDFS)、NoSQL等。5、高可用架构大型网站应该在任何时候都可以正常访问,正常提供对外服务。因为大型网站的复杂性,分布式,廉价服务器,开源数据库,操作系统等特点,要保证高可用是很困难的,也就是说网站的故障是不可避免的。如何提高可用性,就是需要迫切解决的问题。首先,需要从架构级别考虑,在规划的时候,就考虑可用性。行业内一般用几个9表示可用性指标,比如四个9(99.99),一年内允许的不可用时间是53分钟。不同层级使用的策略不同,一般采用冗余备份和失效转移解决高可用问题。应用层:一般设计为无状态的,对于每次请求,使用哪一台服务器处理是没有影响的。一般使用负载均衡技术(需要解决Session同步问题)实现高可用。服务层:负载均衡,分级管理,快速失败(超时设置),异步调用,服务降级,幂等设计等。数据层:冗余备份(冷,热备[同步,异步],温备),失效转移(确认,转移,恢复)。数据高可用方面著名的理论基础是CAP理论(持久性,可用性,数据一致性[强一致,用户一致,最终一致])6、可伸缩架构伸缩性是指在不改变原有架构设计的基础上,通过添加/减少硬件(服务器)的方式,提高/降低系统的处理能力。应用层:对应用进行垂直或水平切分。然后针对单一功能进行负载均衡(DNS、HTTP[反向代理]、IP、链路层)。服务层:与应用层类似;数据层:分库、分表、NoSQL等;常用算法Hash,一致性Hash。7、可扩展架构可以方便地进行功能模块的新增/移除,提供代码/模块级别良好的可扩展性。模块化,组件化:高内聚,低耦合,提高复用性,扩展性。稳定接口:定义稳定的接口,在接口不变的情况下,内部结构可以“随意”变化。设计模式:应用面向对象思想,原则,使用设计模式,进行代码层面的设计。消息队列:模块化的系统,通过消息队列进行交互,使模块之间的依赖解耦。分布式服务:公用模块服务化,提供其他系统使用,提高可重用性,扩展性。8、安全架构对已知问题有有效的解决方案,对未知/潜在问题建立发现和防御机制。对于安全问题,首先要提高安全意识,建立一个安全的有效机制,从政策层面,组织层面进行保障,比如服务器密码不能泄露,密码每月更新,并且三次内不能重复;每周安全扫描等。以制度化的方式,加强安全体系的建设。同时,需要注意与安全有关的各个环节。安全问题不容忽视,包括基础设施安全,应用系统安全,数据保密安全等。基础设施安全:硬件采购,操作系统,网络环境方面的安全。一般采用正规渠道购买高质量的产品,选择安全的操作系统,及时修补漏洞,安装杀毒软件防火墙。防范病毒,后门。设置防火墙策略,建立DDOS防御系统,使用攻击检测系统,进行子网隔离等手段。应用系统安全:在程序开发时,对已知常用问题,使用正确的方式,在代码层面解决掉。防止跨站脚本攻击(XSS),注入攻击,跨站请求伪造(CSRF),错误信息,HTML注释,文件上传,路径遍历等。还可以使用Web应用防火墙(比如:ModSecurity),进行安全漏洞扫描等措施,加强应用级别的安全。数据保密安全:存储安全(存储在可靠的设备,实时,定时备份),保存安全(重要的信息加密保存,选择合适的人员复杂保存和检测等),传输安全(防止数据窃取和数据篡改);常用的加解密算法(单项散列加密[MD5、SHA],对称加密[DES、3DES、RC]),非对称加密[RSA]等。9、敏捷性网站的架构设计,运维管理要适应变化,提供高伸缩性,高扩展性。方便的应对快速的业务发展,突增高流量访问等要求。除上面介绍的架构要素外,还需要引入敏捷管理,敏捷开发的思想。使业务,产品,技术,运维统一起来,随需应变,快速响应。10、大型架构举例以上采用七层逻辑架构,第一层客户层,第二层前端优化层,第三层应用层,第四层服务层,第五层数据存储层,第六层大数据存储层,第七层大数据处理层。客户层:支持PC浏览器和手机APP。差别是手机APP可以直接通过IP访问,反向代理服务器。前端层:使用DNS负载均衡,CDN本地加速以及反向代理服务;应用层:网站应用集群;按照业务进行垂直拆分,比如商品应用,会员中心等;服务层:提供公用服务,比如用户服务,订单服务,支付服务等;数据层:支持关系型数据库集群(支持读写分离),NOSQL集群,分布式文件系统集群;以及分布式Cache;大数据存储层:支持应用层和服务层的日志数据收集,关系数据库和NOSQL数据库的结构化和半结构化数据收集;大数据处理层:通过Mapreduce进行离线数据分析或Storm实时数据分析,并将处理后的数据存入关系型数据库。(实际使用中,离线数据和实时数据会按照业务要求进行分类处理,并存入不同的数据库中,供应用层或服务层使用)。二、大型电商网站系统架构演变过程一个成熟的大型网站(如淘宝、天猫、腾讯等)的系统架构并不是一开始设计时就具备完整的高性能、高可用、高伸缩等特性的,它是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随着业务的扩展而逐步完善的,并不是一蹴而就;不同业务特征的系统,会有各自的侧重点,例如淘宝,要解决海量的商品信息的搜索、下单、支付;例如腾讯,要解决数亿用户的实时消息传输;百度它要处理海量的搜索请求。他们都有各自的业务特性,系统架构也有所不同。尽管如此我们也可以从这些不同的网站背景中,找出其中共用的技术,这些技术和手段广泛运用在大型网站系统的架构中,下面就通过介绍大型网站系统的演化过程,来认识这些技术和手段。1、最开始的网站架构最初的架构,应用程序、数据库、文件都部署在一台服务器上,如图:2、应用、数据、文件分离随着业务的扩展,一台服务器已经不能满足性能需求,故将应用程序、数据库、文件各自部署在独立的服务器上,并且根据服务器的用途配置不同的硬件,达到最佳的性能效果。3、利用缓存改善网站性能在硬件优化性能的同时,同时也通过软件进行性能优化,在大部分的网站系统中,都会利用缓存技术改善系统的性能,使用缓存主要源于热点数据的存在,大部分网站访问都遵循28原则(即80%的访问请求,最终落在20%的数据上),所以我们可以对热点数据进行缓存,减少这些数据的访问路径,提高用户体验。缓存实现常见的方式是本地缓存、分布式缓存。当然还有CDN、反向代理等,这个后面再讲。本地缓存,顾名思义是将数据缓存在应用服务器本地,可以存在内存中,也可以存在文件,OSCache就是常用的本地缓存组件。本地缓存的特点是速度快,但因为本地空间有限所以缓存数据量也有限。分布式缓存的特点是,可以缓存海量的数据,并且扩展非常容易,在门户类网站中常常被使用,速度按理没有本地缓存快,常用的分布式缓存是Memcached、Redis。4、使用集群改善应用服务器性能应用服务器作为网站的入口,会承担大量的请求,我们往往通过应用服务器集群来分担请求数。应用服务器前面部署负载均衡服务器调度用户请求,根据分发策略将请求分发到多个应用服务器节点。常用的负载均衡技术硬件的有F5,价格比较贵,软件的有LVS、Nginx、HAProxy。LVS是四层负载均衡,根据目标地址和端口选择内部服务器,Nginx和HAProxy是七层负载均衡,可以根据报文内容选择内部服务器,因此LVS分发路径优于Nginx和HAProxy,性能要高些,而Nginx和HAProxy则更具配置性,如可以用来做动静分离(根据请求报文特征,选择静态资源服务器还是应用服务器)。5、数据库读写分离和分库分表随着用户量的增加,数据库成为最大的瓶颈,改善数据库性能常用的手段是进行读写分离以及分库分表,读写分离顾名思义就是将数据库分为读库和写库,通过主备功能实现数据同步。分库分表则分为水平切分和垂直切分,水平切分则是对一个数据库特大的表进行拆分,例如用户表。垂直切分则是根据业务的不同来切分,如用户业务、商品业务相关的表放在不同的数据库中。6、使用CDN和反向代理提高网站性能假如我们的服务器都部署在成都的机房,对于四川的用户来说访问是较快的,而对于北京的用户访问是较慢的,这是由于四川和北京分别属于电信和联通的不同发达地区,北京用户访问需要通过互联路由器经过较长的路径才能访问到成都的服务器,返回路径也一样,所以数据传输时间比较长。对于这种情况,常常使用CDN解决,CDN将数据内容缓存到运营商的机房,用户访问时先从最近的运营商获取数据,这样大大减少了网络访问的路径。比较专业的CDN运营商有蓝汛、网宿。而反向代理,则是部署在网站的机房,当用户请求达到时首先访问反向代理服务器,反向代理服务器将缓存的数据返回给用户,如果没有缓存数据才会继续访问应用服务器获取,这样做减少了获取数据的成本。反向代理有Squid、Nginx。7、使用分布式文件系统用户一天天增加,业务量越来越大,产生的文件越来越多,单台的文件服务器已经不能满足需求,这时就需要分布式文件系统的支撑。常用的分布式文件系统有GFS、HDFS、TFS。8、使用NoSQL和搜索引擎对于海量数据的查询和分析,我们使用NoSQL数据库加上搜索引擎可以达到更好的性能。并不是所有的数据都要放在关系型数据中。常用的NoSQL有MongoDB、HBase、Redis,搜索引擎有Lucene、Solr、Elasticsearch。9、将应用服务器进行业务拆分随着业务进一步扩展,应用程序变得非常臃肿,这时我们需要将应用程序进行业务拆分,如百度分为新闻、网页、图片等业务。每个业务应用负责相对独立的业务运作。业务之间通过消息进行通信或者共享数据库来实现。10、搭建分布式服务这时我们发现各个业务应用都会使用到一些基本的业务服务,例如用户服务、订单服务、支付服务、安全服务,这些服务是支撑各业务应用的基本要素。我们将这些服务抽取出来利用分部式服务框架搭建分布式服务。阿里的Dubbo是一个不错的选择。三、一张图说明电商架构四、大型电商网站架构案例1、电商案例的原因分布式大型网站,目前看主要有几类:大型门户,比如网易,新浪等;SNS网站,比如校内,开心网等;电商网站,比如阿里巴巴,京东商城,国美在线,汽车之家等。大型门户一般是新闻类信息,可以使用CDN,静态化等方式优化,开心网等交互性比较多,可能会引入更多的NoSQL,分布式缓存,使用高性能的通信框架等。电商网站具备以上两类的特点,比如产品详情可以采用CDN,静态化,交互性高的需要采用NoSQL等技术。因此,我们采用电商网站作为案例,进行分析。2、电商网站需求客户需求:建立一个全品类的电子商务网站(B2C),用户可以在线购买商品,可以在线支付,也可以货到付款;用户购买时可以在线与客服沟通;用户收到商品后,可以给商品打分,评价;目前有成熟的进销存系统;需要与网站对接;希望能够支持3~5年,业务的发展;预计3~5年用户数达到1000万;定期举办双11、双12、三八男人节等活动;其他的功能参考京东或国美在线等网站。客户就是客户,不会告诉你具体要什么,只会告诉你他想要什么,我们很多时候要引导,挖掘客户的需求。好在提供了明确的参考网站。因此,下一步要进行大量的分析,结合行业,以及参考网站,给客户提供方案。需求功能矩阵需求管理传统的做法,会使用用例图或模块图(需求列表)进行需求的描述。这样做常常忽视掉一个很重要的需求(非功能需求),因此推荐大家使用需求功能矩阵,进行需求描述。本电商网站的需求矩阵如下:3、网站初级架构一般网站,刚开始的做法,是三台服务器,一台部署应用,一台部署数据库,一台部署NFS文件系统。这是前几年比较传统的做法,之前见到一个网站10万多会员,垂直服装设计门户,N多图片。使用了一台服务器部署了应用,数据库以及图片存储。出现了很多性能问题。如下图:但是,目前主流的网站架构已经发生了翻天覆地的变化。一般都会采用集群的方式,进行高可用设计。至少是下面这个样子:使用集群对应用服务器进行冗余,实现高可用;(负载均衡设备可与应用一块部署)使用数据库主备模式,实现数据备份和高可用;4、系统容量预估预估步骤:注册用户数-日均UV量-每日的PV量-每天的并发量;峰值预估:平常量的2~3倍;根据并发量(并发,事务数),存储容量计算系统容量。根据客户需求:3~5年用户数达到1000万注册用户,可以做每秒并发数预估:每天的UV为200万(二八原则);每日每天点击浏览30次;PV量:200*30=6000万;集中访问量:24*0.2=4.8小时会有6000万*0.8=4800万(二八原则);每分并发量:4.8*60=288分钟,每分钟访问4800/288=16.7万(约等于);每秒并发量:16.7万/60=2780(约等于);假设:高峰期为平常值的三倍,则每秒的并发数可以达到8340次。1毫秒=1.3次访问;没好好学数学后悔了吧?!(不知道以上算是否有错误,呵呵~~)服务器预估:(以tomcat服务器举例)按一台web服务器,支持每秒300个并发计算。平常需要10台服务器(约等于);[tomcat默认配置是150],高峰期需要30台服务器;容量预估:70/90原则系统CPU一般维持在70%左右的水平,高峰期达到90%的水平,是不浪费资源,并比较稳定的。内存,IO类似。以上预估仅供参考,因为服务器配置,业务逻辑复杂度等都有影响。在此CPU,硬盘,网络等不再进行评估。5、网站架构分析根据以上预估,有几个问题:需要部署大量的服务器,高峰期计算,可能要部署30台Web服务器。并且这三十台服务器,只有秒杀,活动时才会用到,存在大量的浪费。所有的应用部署在同一台服务器,应用之间耦合严重。需要进行垂直切分和水平切分。大量应用存在冗余代码服务器Session同步耗费大量内存和网络带宽数据需要频繁访问数据库,数据库访问压力巨大。大型网站一般需要做以下架构优化(优化是架构设计时,就要考虑的,一般从架构/代码级别解决,调优主要是简单参数的调整,比如JVM调优;如果调优涉及大量代码改造,就不是调优了,属于重构):业务拆分应用集群部署(分布式部署,集群部署和负载均衡)多级缓存单点登录(分布式Session)数据库集群(读写分离,分库分表)服务化消息队列其他技术6、网站架构优化(1)业务拆分根据业务属性进行垂直切分,划分为产品子系统,购物子系统,支付子系统,评论子系统,客服子系统,接口子系统(对接如进销存,短信等外部系统)。根据业务子系统进行等级定义,可分为核心系统和非核心系统。核心系统:产品子系统,购物子系统,支付子系统;非核心:评论子系统,客服子系统,接口子系统。业务拆分作用:提升为子系统可由专门的团队和部门负责,专业的人做专业的事,解决模块之间耦合以及扩展性问题;每个子系统单独部署,避免集中部署导致一个应用挂了,全部应用不可用的问题。等级定义作用:用于流量突发时,对关键应用进行保护,实现优雅降级;保护关键应用不受到影响。拆分后的架构图:参考部署方案2如上图每个应用单独部署,核心系统和非核心系统组合部署(2)应用集群部署(分布式,集群,负载均衡)分布式部署:将业务拆分后的应用单独部署,应用直接通过RPC进行远程通信;集群部署:电商网站的高可用要求,每个应用至少部署两台服务器进行集群部署;负载均衡:是高可用系统必须的,一般应用通过负载均衡实现高可用,分布式服务通过内置的负载均衡实现高可用,关系型数据库通过主备方式实现高可用。集群部署后架构图:(3)多级缓存缓存按照存放的位置一般可分为两类本地缓存和分布式缓存。本案例采用二级缓存的方式,进行缓存的设计。一级缓存为本地缓存,二级缓存为分布式缓存。(还有页面缓存,片段缓存等,那是更细粒度的划分)一级缓存,缓存数据字典,和常用热点数据等基本不可变/有规则变化的信息,二级缓存缓存需要的所有缓存。当一级缓存过期或不可用时,访问二级缓存的数据。如果二级缓存也没有,则访问数据库。缓存的比例,一般1:4,即可考虑使用缓存。(理论上是1:2即可)。根据业务特性可使用以下缓存过期策略:缓存自动过期;缓存触发过期;(4)单点登录(分布式Session)系统分割为多个子系统,独立部署后,不可避免的会遇到会话管理的问题。一般可采用Session同步,Cookies,分布式Session方式。电商网站一般采用分布式Session实现。再进一步可以根据分布式Session,建立完善的单点登录或账户管理系统。流程说明用户第一次登录时,将会话信息(用户Id和用户信息),比如以用户Id为Key,写入分布式Session;用户再次登录时,获取分布式Session,是否有会话信息,如果没有则调到登录页;一般采用Cache中间件实现,建议使用Redis,因此它有持久化功能,方便分布式Session宕机后,可以从持久化存储中加载会话信息;存入会话时,可以设置会话保持的时间,比如15分钟,超过后自动超时;结合Cache中间件,实现的分布式Session,可以很好的模拟Session会话。(5)数据库集群(读写分离,分库分表)大型网站需要存储海量的数据,为达到海量数据存储,高可用,高性能一般采用冗余的方式进行系统设计。一般有两种方式读写分离和分库分表。读写分离:一般解决读比例远大于写比例的场景,可采用一主一备,一主多备或多主多备方式。本案例在业务拆分的基础上,结合分库分表和读写分离。如下图:业务拆分后:每个子系统需要单独的库;如果单独的库太大,可以根据业务特性,进行再次分库,比如商品分类库,产品库;分库后,如果表中有数据量很大的,则进行分表,一般可以按照Id,时间等进行分表;(高级的用法是一致性Hash)在分库、分表的基础上,进行读写分离;相关中间件可参考Cobar(阿里,目前已不在维护),TDDL(阿里),Atlas(奇虎360),MyCat。分库分表后序列的问题,JOIN,事务的问题,会在分库分表主题分享中,介绍。(6)服务化将多个子系统公用的功能/模块,进行抽取,作为公用服务使用。比如本案例的会员子系统就可以抽取为公用的服务。(7)消息队列消息队列可以解决子系统/模块之间的耦合,实现异步,高可用,高性能的系统。是分布式系统的标准配置。本案例中,消息队列主要应用在购物,配送环节。用户下单后,写入消息队列,后直接返回客户端;库存子系统:读取消息队列信息,完成减库存;配送子系统:读取消息队列信息,进行配送;目前使用较多的MQ有ActiveMQ、RabbitMQ、ZeroMQ、MSMQ等,需要根据具体的业务场景进行选择。建议可以研究下RabbitMQ。(8)其他架构(技术)除了以上介绍的业务拆分,应用集群,多级缓存,单点登录,数据库集群,服务化,消息队列外。还有CDN,反向代理,分布式文件系统,大数据处理等系统。此处不详细介绍,大家可以问度娘/Google,有机会的话也可以分享给大家。7、架构汇总大型网站的架构是根据业务需求不断完善的,根据不同的业务特征会做特定的设计和考虑,本文只是讲述一个常规大型网站会涉及的一些技术和手段,希望能给大家带来启发。站三界导航:https://www.zhansanjie.com

    • 建站经验
    • 83阅读
    • 2022-04-28

站三界导航
本站声明:本站严格遵守国家相关法律规定,非正规网站一概不予收录。本站所有资料取之于互联网,任何公司或个人参考使用本资料请自辨真伪、后果自负,站三界导航不承担任何责任。在此特别感谢您对站三界导航的支持与厚爱。