仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3079|回复: 20
打印 上一主题 下一主题

[学习教程] PHP网站制作之数据库中排序的对照及利用前提详解

[复制链接]
跳转到指定楼层
楼主
发表于 2015-2-3 23:32:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
培训的第一阶段,学习的是HTML/CSS/JavaScript基础。      PHP与MySQL数据库中排序的对照及利用前提是本文咱们次要要引见的内容,凡是来讲,履行效力需求思索CPU、内存和硬盘等的负载情形,假定MySQL办事器和PHP办事器都已依照最合适的体例来设置装备摆设,那末体系的可伸缩性(Scalability)和用户感知功能(User-perceived Performance)是咱们寻求的次要方针。在实践运转中,MYSQL 中数据常常以 HASH tables、BTREE 等体例存贮于内存,操作速度很快;同时INDEX 已停止了一些预排序;良多使用中,MySQL 排序是首选。
    PHP与MySQL比拟具有以下优势:
    1、思索全部网站的可伸缩性和全体功能,在使用层(PHP)中排序分明会下降数据库的负载,从而提拔全部网站的扩大才能。而数据库的排序,实践上本钱长短常高的,损耗内存、CPU,假如并发的排序良多,DB 很轻易到瓶颈。
    2、假如在使用层(PHP)和MYSQL之间还存在数据两头层,公道使用,PHP会有更好的收益。
    3、PHP在内存中的数据布局专门针对详细使用来设计,比数据库更加简约、高效;
    4、PHP不必思索数据灾害恢复成绩,可以削减这局部的操作消耗;
    5、PHP不存在表的锁定成绩;
    6、MySQL中排序,恳求和了局前往还需求经由过程收集毗连来停止,而PHP中排序以后就能够直接前往了,削减了收集IO。
    至于履行速度,差别应当不会很大,除非使用设计有成绩,形成大批不用要的收集IO。别的,使用层要注重PHP 的 Cache 设置,假如超越会呈报外部毛病;此时要依据使用做好评价,或调剂Cache。详细选择,将取决于详细的使用。
    列出一些PHP中履行排序更优的情形:
    1、数据源不在MySQL 中,存在硬盘、内存或来自收集的恳求等;
    2、数据存在 MySQL 中,量不大,并且没有响应的索引,此时把数据掏出来用PHP排序更快;
    3、数据源来自于多个MySQL 办事器,此时从多个 MySQL 中掏出数据,然后在PHP中排序更快;
    4、除MySQL 以外,存在其他数据源,好比硬盘、内存或来自收集的恳求等,此时不合适把这些数据存入MySQL 后再排序;
    列出一些必需在MySQL中排序的实例:
    1、MySQL中已存在这个排序的索引;
    2、MySQL中数据量较大,而了局集需求个中很小的一个子集;好比 1000000 行数据,取TOP 10;
    3、关于一次排序、屡次挪用的情形,好比统计聚合的情况,可以供应给分歧的办事利用,那末在MySQL 中排序是首选的。别的,关于数据深度发掘,凡是做法是在使用层做完排序等庞杂操作,把了局存入MySQL便可,便于屡次利用。
    4、不管数据源来自哪里,当数据量大到必定的范围后,因为占用内存/Cache 的关系,不再合适PHP中排序了;此时把数据复制、导入或存在MySQL ,并用INDEX 优化,是优于PHP 的。不外,用 Java,乃至 C++ 来处置这类操作会更好。 有些相似大数据会聚合或汇总的数据,在客户端排序得失相当。固然,也有效相似搜刮引擎的思绪来处理相似使用的情形。
    从网站全体思索,就必需到场人力和本钱的思索。假设网站范围和负载较小,而人力无限(人数和才能都能够无限),此时在使用层(PHP)做排序要做很多开辟和调试任务,消耗工夫,得失相当;不如在DB 中处置,复杂疾速。关于大范围的网站,电力、办事器的费用很高,在体系架构上一丝不苟,可以勤俭大批的费用,是公司延续开展之需要;此时假如能在使用层(PHP) 停止排序并知足营业需求,尽可能在使用层停止。
    关于PHP中履行排序与MySQL中履行排序的相干常识就引见到这里了,但愿本次的引见可以对您有所播种!
接触MYSQL,开始设计数据库程序
冷月葬花魂 该用户已被删除
沙发
发表于 2015-2-4 02:00:36 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
板凳
 楼主| 发表于 2015-2-9 09:45:20 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
若相依 该用户已被删除
地板
发表于 2015-2-27 05:24:49 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
透明 该用户已被删除
5#
发表于 2015-3-8 22:15:25 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
因胸联盟 该用户已被删除
6#
发表于 2015-3-15 18:12:35 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
山那边是海 该用户已被删除
7#
发表于 2015-3-20 20:46:47 | 只看该作者
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
活着的死人 该用户已被删除
8#
发表于 2015-3-21 10:29:03 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
柔情似水 该用户已被删除
9#
发表于 2015-3-26 11:50:26 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
只想知道 该用户已被删除
10#
发表于 2015-3-29 10:50:27 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
若天明 该用户已被删除
11#
发表于 2015-4-1 08:53:42 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
爱飞 该用户已被删除
12#
发表于 2015-4-9 09:53:02 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
第二个灵魂 该用户已被删除
13#
发表于 2015-4-10 10:36:55 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
深爱那片海 该用户已被删除
14#
发表于 2015-4-13 03:43:35 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
蒙在股里 该用户已被删除
15#
发表于 2015-4-15 19:06:29 | 只看该作者
做为1门年轻的语言,php一直很努力。
再现理想 该用户已被删除
16#
发表于 2015-6-13 21:29:29 | 只看该作者
当然这种网站的会员费就几十块钱。
不帅 该用户已被删除
17#
发表于 2015-7-7 21:40:36 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
小妖女 该用户已被删除
18#
发表于 2015-7-19 01:04:03 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
再见西城 该用户已被删除
19#
发表于 2015-7-22 21:51:12 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
老尸 该用户已被删除
20#
发表于 2015-7-28 17:48:38 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 03:05

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表