Javascript 需要关于设计系统的建议吗
我正试图设计一个页面,使其工作最快,同时也试图避免重复 基本上,我将加载3组用户的联系人。业务联系人、个人联系人和特殊联系人,可以是业务/个人联系人的混合体。所以本质上,我会做以下三个查询:Javascript 需要关于设计系统的建议吗,javascript,mysql,performance,Javascript,Mysql,Performance,我正试图设计一个页面,使其工作最快,同时也试图避免重复 基本上,我将加载3组用户的联系人。业务联系人、个人联系人和特殊联系人,可以是业务/个人联系人的混合体。所以本质上,我会做以下三个查询: SELECT stuff FROM contacts WHERE userId = '$userId' AND type = 'business' SELECT stuff FROM contacts WHERE userId = '$userId' AND type = 'personal' SELE
SELECT stuff FROM contacts WHERE userId = '$userId' AND type = 'business'
SELECT stuff FROM contacts WHERE userId = '$userId' AND type = 'personal'
SELECT stuff FROM contacts WHERE userId = '$userId' and isSpecial = 1
javascript将使用这些联系人来填充页面上的某些s
,并用于搜索页面上的联系人
如果只加载业务和个人联系人,然后通过javascript循环访问,并使用javascript构建第三个特殊联系人列表(本质上是isSpecial
设置为1),是否更有意义
或者最好使用MySQL查询分别获取这3个集合,并将它们作为3个单独的集合从一开始传递给javascript
或者我应该只从MySQL获取一组联系人,只要userId='$currentUser'
,并在页面加载时通过javascript将其排序到单独的列表中?(无论如何,我都会在页面加载上循环浏览所有联系人,以填充他们各自的
,也许我也可以在循环浏览时将他们分成3个单独的列表?)
还是其他方法是最好的
我在这里关心的是尽可能快地为用户提供一切,同时最大限度地减少数据库服务器的压力。只执行一个查询,在该查询中同时加载“业务”和“个人”,然后查找“特殊”查询。(假设没有其他类型的问题。)只执行一个查询,在该查询中同时加载“业务”和“个人”,然后查找“特殊”查询。(假设没有其他类型的问题需要担心。)您不能: 从联系人中选择内容,其中userId='$userId'和type='business'或type='personal'或isSpecial=1 那么您只有一次对数据库的调用 您还可以将“选择内容”更改为仅选择所需的字段。此外,更改sql查询以获取数据库,以便根据需要对联系人进行排序 更新 好的,只是一个想法,在页面加载时,首先选择20个联系人(最多),然后运行javascript来显示他们或其他什么,然后当您收到页面已完全加载的事件时,对其余行执行SELECT语句(如果有)。您不能: 从联系人中选择内容,其中userId='$userId'和type='business'或type='personal'或isSpecial=1 那么您只有一次对数据库的调用 您还可以将“选择内容”更改为仅选择所需的字段。此外,更改sql查询以获取数据库,以便根据需要对联系人进行排序 更新
好的,只是一个想法,在页面加载时,首先选择20个联系人(最多),然后运行javascript来显示他们或其他什么,然后当您收到页面已完全加载的事件时,对其余行执行SELECT语句(如果有).在我看来,使用MySQL单独获取联系人会更好,因为MySQL相对更快。另外,如果用户浏览器中的javascript被关闭,或者他正在使用移动浏览器,那么您将无法隔离联系人 编辑
正如您所指出的,javascript是您的站点的最低要求,那么最好的方法是使用一个go和一个查询来获取数据,并使用js进行隔离。IMO如果您使用MySQL本身来单独获取联系人会更好,因为MySQL相对更快。另外,如果用户浏览器中的javascript被关闭,或者他正在使用移动浏览器,那么您将无法隔离联系人 编辑
正如您所指出的,javascript是您的站点的最低要求,那么最好的方法就是使用一个go和一个查询来获取数据,并使用js进行隔离。我建议使用一个大列表,并基于数据绑定进行呈现(可能是淘汰?@Raynos这些术语是什么意思?(数据绑定和敲除)用于将数据绑定到DOM的库。我推荐一个基于数据绑定的大列表和呈现(可能是敲除?)@Raynos这些术语是什么意思?(数据绑定和敲除)用于将数据绑定到DOM的库。有什么理由这样做吗?有什么理由这样做吗?他想分别显示它们。因此,问题不仅在于获取,还在于根据类型对它们进行分离。我可以做到这一点,但我担心当我在页面加载时通过javscript将它们排序到单独的列表中时,用户需要等待多长时间。(可能有100-200个商业和个人联系人)他希望分别显示这些联系人。因此,问题不仅在于获取,还在于根据类型对它们进行分离。我可以做到这一点,但我担心当我在页面加载时通过javscript将它们排序到单独的列表中时,用户需要等待多长时间。(可能有100-200个商业和个人联系人)移动浏览器这件事不值得关注,因为该页面主要基于javascript,如果有人禁用了它,我们将不支持它。移动浏览器这件事不值得关注,因为该页面主要基于javascript,如果有人禁用了它,那么我们不支持它。