网站又挂了,一招搞定~

2024-08-31 15:12
文章标签 网站 搞定 一招

本文主要是介绍网站又挂了,一招搞定~,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击“终码一生”,关注,置顶公众号

每日技术干货,第一时间送达!

前段时间网站出现了一些比较大的问题,发卡网站使用的是硅云的香港服务器,出现了网络节点故障及机房电源问题,一停就是三四天。教程站也被攻击了几次,包括DDos攻击,可能是因为网站哪里写的让大神不满意了,竟对一个小站痛下杀手,造成网站瘫痪了一上午,因为垃圾流量过大,也是一度触发了阿里云的公网流量阀值,iP服务器被阿里云直接屏蔽访问了,给正常访问的用户带来极差的体验。

尤其是硅云的服务器,因为是小云商,各种小问题不断,一会网络故障,一会又电源故障,不知道的还以为我用自己电脑搭的网站呢。说起来是上云了,但是稳定性极差,不胜其烦,因为上面部署的是几个主要的网站,后面也是一直也在考虑迁移。

图片

图片

图片

图片

相信不少站长也有过类似的经历,那么碰到这些问题有没有好的解决办法呢?答案是肯定的。我也一直在找稳定,安全,性价比高的替代方案。网站运维时间减少了,才有更多的精力去做其他事情。

总结,遇到的问题:

  • 担心单点故障

  • 访问量较大

  • 减少运维时间

首先考虑用大的云商服务器,之前使用过多家云服务,最后决定还是将主要网站迁回阿里云,没有对比就没有伤害,相对阿里云还是要稳定许多,其次我对阿里云后台操作相对熟悉,同时他提供的有一站式解决方案,并且性价比较高,操作也很便捷。

1、高可用、高并发流量架构

在我们搭建自己的高可用架构之前,需要介绍下本次使用到的几款阿里云产品:

弹性公网IP(EIP)

弹性公网IP其优势非常大,用户购买固定的弹性公网IP,可以绑定到自己的负载均衡服务SLB或ESC服务器上,这样后面无论资源如何变化,我们只需更换EIP的绑定对象,不需要通过域名重新解析(因为每次域名解析至少30分钟,甚至更久才会生效,会造成大面积的用户访问中断,如果考虑老用户的浏览器缓存问题,则影响会更大),从而保证了对外服务的稳定性。

负载均衡SLB

阿里云自研软件负载均衡SLB,相对于硬件负载均衡来说,入门难度较低,人人可以操作使用,不需要专业的知识,更不需要精通硬件和运维知识。只需简单的添加和配置策略,就可以动态将用户访问请求分发的不同的后端运行服务器上,可以有效解决单独故障和单个服务器性能不足或性能瓶颈的问题。同时SLB提供了轮训,轮训加权,最少连接数,以及一致性哈希等不同的调度算法,可以更加自由转发和控制流量。

云服务ECS

阿里云云服务器ECS,是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS级别云计算服务,实现了计算资源的即开即用和弹性伸缩,对于我们普通用户,流量较小的网站,一般2C4G的配置就足够使用,随着流量变大,我们也可以自由升降配置。

云数据库RDS

阿里云提供的一套稳定可靠、可弹性伸缩的关系型云数据库RDS,支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,具备容灾、备份、恢复、迁移等方面的全套解决方案。

2、资源购买

购买弹性公网IP

进入到阿里云控制台,直接搜索「弹性公网IP」,直达管理界面。首次进入,需要创建弹性公网IP,我们根据需求选择以下。

图片

选择配置

图片

选择好点「下一步」,确认配置无误,提交即可,EIP为按量计费,后付费模式,注意个人账单。

图片

购买负载均衡SLB

同样的,我们控制台搜索「负载均衡SLB」,快速直达管理界面。可以看到,SLB提供多种负载均衡类型,包括传统型负载均衡CLB(提供四层和七层负载均衡)、网络型负载均衡NLB(四层)、应用型负载均衡ALB(七层)。我们根据自己的业务情况选择,这里选择CLB类型负载均衡

图片

点击左侧CLB类型 - 实例管理,首次使用,需要「创建传统型负载均衡」

图片

选择配置信息,因为手里目前两台ECS均为「华北2区」,这里SLB我们也选择为「华北2区」

图片

计费方式,选择「按规格计费」,实例类型选择「私网」,专有网络默认不变

图片

确认没有问题我们提交购买即可。

购买云服务ECS

我账号下已经有2台ECS,这里不需要在购买了。ECS购买大家可以趁着有活动的时候购买,近期官方有一个“99计划”,2C2G云服务器,99元/年,可以连续续费3年,一共是4年。性价比还是比较高的,新老用户均可用购买,有需求的可以去购买。想要搭建高可用,至少需要2台以上ECS。

也可以试试官方新推出的免费试用:https://free.aliyun.com/?spm=a1z389.11499242.0.0.7b1c2413RCDDMk&scm=20140722.M_10513603._.V_1&product=1351

ECS的配置,大家根据自己需要选择。比较简单,选择好提交购买即可。

图片

3、开始配置和搭建

1、EIP绑定负载均衡实例

返回到我们弹性公网IP管理界面,我们需要将弹性公网IP,绑定到负载均衡上,如下:

图片

选择刚才创建的负载均衡SLB实例:

图片

选择好,点击确认。

2、SLB配置监听和后端服务器

返回到SLB管理页,找到我们刚购买的SLB实例,点击开始配置,如下:

图片

  • 协议&监听:选择TCP协议(四层分发,如果选择HTTP为七层分发),并在监听端口处输入80(Web服务默认端口),点击下一步:

图片

  • 添加后端服务器:选择默认服务器组,并点击继续添加,全选两台ECS后,点击下一步:

图片

  • 添加端口和权重:点击确认添加,端口添加为【80】,权重根据自己服务器配置选择,我2台服务器一台式2C4G,一个2C2G,将权重一个设置为100,一个为50,点击下一步

图片

  • 默认不变,点击下一步

图片

  • 点击提交,完成配置

图片

到这里已经完成高可用配置,下面是去服务器下部署我们的网站,并通过弹性公网IP进行访问。

3、部署网站

因为我的2台服务器目前均已部署有网站,并通过宝塔管理,所以我这里不在部署,但需要把弹性公网IP添加到宝塔的域名管理中,方便访问,如下:

图片

4、测试

我们希望通过弹性公网IP,进行访问,通过负载均衡SLB动态的访问不同云主机服,因为一台服务器的权重比较高,我们访问时两个网站应该是交替切换访问,同时权重高的相对频率会更多一些。

考虑到我们浏览器直接访问,会有缓存的问题,可能不会频繁切换网站,我们通过终端口令curl进行请求,并提取网站的标题,便于区分。

curl -s "47.93.62.70" | grep -o "<title>.*</title>" | sed -e 's/<[^>]*>//g'

下面是本次测试结果:

图片

5、结论

通过上面的访问,我们可以看到每次访问都会请求不同的网站,已经实现我们的目的,流量也得到了分流,达到了我们的期望。

6、其他说明

会话一致性问题:有同学可能已经发现,如果每次请求都频繁的切换主机服务器,会话如何保持一致呢?这个在负载均衡可以设置,我们可以启用会话保持功能,可以设置一段时间,例如30分钟,在30分钟内,始终由这台服务器为用户提供服务,在30分钟后,此用户再来访问时,才会重新选择服务器,保证了用户体验的一致性。

单点故障问题负载均衡时刻对后端服务器做健康检查,一旦机器出现故障,会直接剔除,将流量转移到正常运行的服务器上,等到服务恢复正常,会再次添加,可以有效避免因单点故障造成的服务中断问题。

4、最后

最终确定该方案是我们需要的方案后,剩下就是迁移我们主网站,我们只需要将主网站迁移到每台服务器上,数据库我们可以放到资源更大的那台服务器,两台服务器同时链接,当然,为了避免再次出现单点故障问题,我们也可以将数据库单独管理,放到云数据库RDS上,这样也是最稳妥的,但有一定的成本。最后,将我们的域名DNS解析指向弹性公网IP,一套简单的高可用架构就完成了。

做一个总结:

该架构设计中我们通过弹性公网IP,实现了域名与服务器资源的接耦,不需要在关注后端服务器的变更,每一次都需要重新做域名的DNS解析,这样保证了用户访问的稳定性,同时也有利于网站SEO优化。

而负载均衡为我们提供了统一的访问入口,并在后端绑定多台服务器,也易于扩展,根据不同的调度算法,我们实现了流量动态分发,确保了后端均衡的承载流量。

好了,就分享到这里,希望该套架构设计对你有所帮助。有什么问题大家可以留言交流。

没玩过云服务器的,可以点击「原文阅读」,免费试用阿里云云服务ECS。

参考:https://edu.aliyun.com/course/3113500/lesson/341054074

这篇关于网站又挂了,一招搞定~的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1124260

相关文章

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

速盾高防cdn是怎么解决网站攻击的?

速盾高防CDN是一种基于云计算技术的网络安全解决方案,可以有效地保护网站免受各种网络攻击的威胁。它通过在全球多个节点部署服务器,将网站内容缓存到这些服务器上,并通过智能路由技术将用户的请求引导到最近的服务器上,以提供更快的访问速度和更好的网络性能。 速盾高防CDN主要采用以下几种方式来解决网站攻击: 分布式拒绝服务攻击(DDoS)防护:DDoS攻击是一种常见的网络攻击手段,攻击者通过向目标网

分享5款免费录屏的工具,搞定网课不怕错过!

虽然现在学生们不怎么上网课, 但是对于上班族或者是没有办法到学校参加课程的人来说,网课还是很重要的,今天,我就来跟大家分享一下我用过的几款录屏软件=,看看它们在录制网课时的表现如何。 福昕录屏大师 网址:https://www.foxitsoftware.cn/REC/ 这款软件给我的第一印象就是界面简洁,操作起来很直观。它支持全屏录制,也支持区域录制,这对于我这种需要同时录制PPT和老师讲

49个权威的网上学习资源网站

艺术与音乐 Dave Conservatoire — 一个完全免费的音乐学习网站,口号是“让每一个人都可以接受世界级的音乐教育”,有视频,有练习。 Drawspace — 如果你想学习绘画,或者提高自己的绘画技能,就来Drawspace吧。 Justin Guitar — 超过800节免费的吉他课程,有自己的app,还有电子书、DVD等实用内容。 数学,数据科学与工程 Codecad

BT天堂网站挂马事件后续:“大灰狼”远控木马分析及幕后真凶调查

9月初安全团队披露bt天堂网站挂马事件,该网站被利用IE神洞CVE-2014-6332挂马,如果用户没有打补丁或开启安全软件防护,电脑会自动下载执行大灰狼远控木马程序。 鉴于bt天堂电影下载网站访问量巨大,此次挂马事件受害者甚众,安全团队专门针对该木马进行严密监控,并对其幕后真凶进行了深入调查。 一、“大灰狼”的伪装 以下是10月30日一天内大灰狼远控的木马样本截图,可以看到该木马变种数量不

PHP抓取网站图片脚本

方法一: <?phpheader("Content-type:image/jpeg"); class download_image{function read_url($str) { $file=fopen($str,"r");$result = ''; while(!feof($file)) { $result.=fgets($file,9999); } fclose($file); re

使用WebP解决网站加载速度问题,这些细节你需要了解

说到网页的图片格式,大家最常想到的可能是JPEG、PNG,毕竟这些老牌格式陪伴我们这么多年。然而,近几年,有一个格式悄悄崭露头角,那就是WebP。很多人可能听说过,但到底它好在哪?你的网站或者项目是不是也应该用WebP呢?别着急,今天咱们就来好好聊聊WebP这个图片格式的前世今生,以及它值不值得你花时间去用。 为什么会有WebP? 你有没有遇到过这样的情况?网页加载特别慢,尤其是那

黑客为什么不黑赌博网站来搞米?

攻击了,只是你不知道而已! 同样,对方也不会通知你,告诉你他黑了赌博网站。 攻击赌博网站的不一定是正义的黑客,也可能是因赌博输钱而误入歧途的法外狂徒。之前看过一个警方破获的真实案件:28岁小伙因赌博无法提款自学成为黑客,攻击境外博彩网站日进万元,最终因涉嫌非法控制计算机信息系统罪被捕。 我见过很多因赌博输钱想请黑客帮忙渗透网站的人,在被拒后,同样也有人生出极端心理,问我怎么学习黑客,想学成之

提升PrestaShop外贸电商网站安全的几款行业必备工具

提升PrestaShop外贸电商网站安全的几款行业必备工具 PrestaShop发展历程 PrestaShop是一款优秀且强大的外贸开源电商软件,我们开始使用PrestaShop始于2009年,那时PrestaShop还是0.9版本:界面清新,性能强悍,扩展友好等特性,既没有Magento的笨重,也没有ZenCart的古老,更没有OpenCart的脆弱,因此PrestaShop如雨后春笋,迅速

推荐练习键盘盲打的网站

对于初学者来说,以下是一些推荐的在线打字练习网站: 打字侠:这是一个专业的在线打字练习平台,提供科学合理的课程设置和个性化学习计划,适合各个水平的用户。它还提供实时反馈和数据分析,帮助你提升打字速度和准确度。 dazidazi.com:这个网站提供了基础的打字练习,适合初学者从零开始学习打字。 Type.fun打字星球:提供了丰富的盲打课程和科学的打字课程设计,还有诗词歌赋、经典名著等多样