前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >电商网站主站(首页)怎么做

电商网站主站(首页)怎么做

作者头像
普通程序员
发布2019-10-23 11:35:15
1.7K0
发布2019-10-23 11:35:15
举报
文章被收录于专栏:普通程序员普通程序员

一个常见的网站结构如下图。用户请求网站URL,nginx服务器负责负载均衡,将请求路由到具体的业务服务器tomcat;根据具体的业务需求,请求后端的相关服务(service1、service2)。系统数据由缓存(catch)和数据库(DB)支撑;客户端得到页面后,再从就近的CDN拉取需要的图片、js等静态资源;最后浏览器渲染,展现给用户。如下图所示

主站首页的基本做法思路跟上边描述的一样。但是由于首页非常重要,在性能及可靠性方面要求极高(几乎见不到哪个知名点的网站首页不能访问的),因此,首页的建设还需要考虑其他一些方面。

1、动静分离

主站首页往往会有大量的固定内容(根据地域等可枚举条件发生变化的内容也属于固定内容),这部分内容可以提前生成好,放到缓存中;同时根据用户不同,会显示一些跟用户相关的信息(如积分、等级等),这类动态信息需要通过相关服务拉取。

2、完全配置化

首页核心功能是展示商品或栏目,展示哪些栏目,展示哪些商品,连接跳转什么地方,显示什么图片,banner推广什么活动……等等内容,都要能够通过后台配置系统进行配置。

3、分屏加载

电商类首页恨不得把所有东西都放进去,内容很多。如果一次全部加载,加载速度慢,而且费流量。需要将首页切分成若干部分,用户访问时,先迅速返回第一屏显示的内容,之后再根据策略逐步加载其他屏的内容。

4、本地缓存

文章开始结构图的缓存是Redis等独立缓存,需要通过网路访问。首页中动态内容通过服务拉取的信息采用此类缓存比较合适;对于固定内容,采用本地缓存更加合适,不通过网络访问,速度更快,风险更小。58到家采用的guava本地缓存。

5、AB Test

这里的AB测,主要指首页界面的AB测(推荐算法的对比不在此讨论)。首页肩负着提升二跳率的重任,界面风格,按钮形状,背景颜色等要素极为重要,需要通过积累试验数据,逐步优化,因此首页需要支持在线AB测试。我们一般根据用户画像、地域等条件来划分对照组。

6、千人千面

如果有用户历史行为数据或其他标签(画像)数据,可根据用户特征,优先展示用户感兴趣的商品或栏目。瓜子二手车的首页会根据用户购买力,浏览历史等向用户展示可能感兴趣的车辆。

7、多渠道投放

如果是H5形式的首页,还需要支持多渠道投放。比如到今日头条上打个广告,能够迅速跳转到具体产品页或首页(此时首页运行在头条App中)。

8、柔性降级设计

柔性设计尤为重要。首页依赖的后台服务,不可能百分之百不出问题,绝对不能因为某个服务出现故障,首页的主体显示内容就出现问题(第4点采用本地缓存,也有这层意思)。比如:passport出现异常,只能影响到用户登录,但是用户依然能够看到首页展示的商品;内部网络异常,动态数据可能获取不到,但是固定信息需要能够正常展示给用户。

以上是我做主站项目的一些心得体会,具体实施起来可以讨论的内容还很多。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 普通程序员 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档