您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

网站开发过程中一个页面多个模块 如何才能高效的使用SQL查询

2023/12/7 20:15:20发布38次查看
小编在开发实际过程中遇到这么一个问题,开发的是一个电商系统,那么在首页确定模块的情况下如何更高效的查询数据并绑定呢?
一、首页模块
假定首页模块已经固定,有:热门推荐商品、热门推荐文章、热门问答等
我们需要确定这些模块固定的code或id值
现确定对应的值如下:热门推荐商品(1)、热门推荐文章(2)、热门问答(3)
页面结构图二、正常在asp.net mvc中要查询这么一个页面的数据通常有两种情况
1)定义一个viewmodel 包含了这个页面所有的数据类型
2)ajax多次请求加载不同模块的数据
那么来说说以上两种情况的优点和缺点
使用viewmodel 一次性加载数据,一次请求的服务端的业务操作比较多,用户等待时间可能比较长
使用ajax多次请求存在一个问题,用户访问一旦多了之后,每次请求都会请求多次服务端接口,同样web服务和数据库服务端压力都将增加
那么就需要按照实际需求去选择应该选择那种方式了,两者都可以。
以下我们就来讲下,如果选择viewmodel一次性绑定数据的查询优化可以参考下面的方案
本次涉及到首页的数据库有两个:
a)recommend表,用于存储推送到首页的数据 热门推荐商品(1)、热门推荐文章(2)、热门问答(3) 这些数据都存储在这个表,对应的1,2,3就是对应module这个字段
数据结构如下:
recommend表结构b)links表,用于存储友情链接
links表结构通常的方案就是每次查询一次数据库 保存到内存中,然后查询数据库后一次返回数据,但是这样会有一个弊端,不停的open和close数据库,可谓浪费了很多资源,因此今天介绍的就是一次查询出所有的数据,然后到service 业务层去进行拆分数据,随后再返回。
语句如下(这样做,即使两个表不同数据结构,也是可以一次查出来的,只要梳理出共同的,页面需要的数据结构即可):
(语句写的并不全,意思到了 o(∩_∩)o)
具体查询范例语句见:
技术无边界,这里是落雨小编,每天分享asp.net小知识,希望大家能够喜欢!
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product