高并发服务器访问时的首页优化方法

糖衣_是公司_的吸引力。它是由一家负责红包6天的公司发起的。官方账号的粉丝从2000多万增加到40万。但是对于我们的技术发展来说,这么多的用户,还有大量的并发访问,服务器的压力可想而知。为了减轻服务器的压力,作为前端开发,笔者在与同事讨论后,提出了以下前端优化措施,在服务器的帮助下,有效地降低了服务器的压力。

本项目主要开发了三个页面:活动规则页面、红包页面和获奖名单页面。_种解决方案是通过请求API从服务器获取活动规则页面的活动规则,这是一种常见的做法。其优点是开发完成后,不需要技术人员修改代码,操作人员可以在后台通过修改富文本编辑器直接更新页面,非常灵活,适用于活动发生变化的长期现有项目。但对于红包抢购项目,你可以在6天的活动时间后下线。为了保证安全性和防止大量用户同时访问服务器,删除了从服务器获取活动规则的贷款,并将数据直接写入页面。

在开发获奖名单页面时,也是如此,但这有点复杂。因为抢红包页面的方式是静默授权,服务器数据库中只存储用户的openid,赢单页面需要显示用户的微信头像和微信昵称,这样才有可信度,否则只显示一个openid,用户会怀疑动作的真实性。

方案已经确定。获胜列表的数据仍然是写死的数据,无法访问API。所以对我来说,开发方法有点改变。我需要在3月31日从服务器上获得前100名的获奖名单,然后遍历100天数据的openid。在使用access_token和openid获得用户的化身和昵称之后,我将它们以数组的形式存储在一个数组中。加载页面时,它实际上每次在此数组中获取10条数据。我为具体的实现方法编写了demo,有时间我会添加它。

做最坏的计划。为了防止服务器瘫痪,用户打开页面显示404或503,我将JS、CSS、图片等资源放在秦牛服务器的前端静态文件中。为了防止跨域,HTML文件和api仍然在同一服务器上。这样,即使我们自己的服务器关闭了,用户仍然可以正常打开页面。

在整个项目中,红包抓取API是访问量_的接口之一。为了减轻服务器的压力,我做了分时处理。当用户点击“继续抓取”按钮时,我随机抽取了1到15秒,然后启动了API请求,使得所有的请求平均分为15秒,在一定程度上减少了并发访问。

在高并发请求的API接口之前添加访问限制接口,只允许部分用户通过

这主要是服务器的逻辑。作为前端,它用于添加接口。如果超过超时,将重新初始化。

当天抓取红包的用户不再发起抓取红包的API请求,屏蔽时间为1小时

因为活动时间是6天,如果用户已经收到红包,他就不会请求API,如果没有,他可以继续请求。具体实现如下:如果用户已经抓取了红包,则将中奖令牌存储在cookie中,有效期为1小时。这样,在获奖当天就不会请求API,但第二天的活动仍然可以请求API,达到减少API请求的目的。

上一篇: 如何通过友好链接优化网站
下一篇: 影响网站关键词排名的因素有哪些
返回顶部