课程
/后端开发
/PHP
/PHP+MySQL分页原理实现
老师,你这个代码的话我点一次下一页,他就会读一次数据库。一个网站不止一个人用,如果很多人(几万、几十万)同时点击,那么就会同时访问数据库。数据库这样下去不就挂了?有什么更好的方法解决这个问题吗?
2016-01-11
源自:PHP+MySQL分页原理实现
正在回答
分页可以这样做,你一下子缓存把所有数据缓存下来也不靠谱。 你缓存10页到20页的数据。当点击到21页往后的数据时候再去请求数据库。请求和缓存两不误。
Begined 提问者
上面说的CDN,使用redis或者memcached,设计服务器集群等等方案这些也可以做,但是这些都是要运维去搞得了,如果你想自己从代码层去优化不防试下刚说的方法。
嗯呢,这个就涉及到并发性的问题啊!当一个网站达到一定规模后就需要考虑这些问题,最常见的解决方案,主从服务器配置,使用CDN,使用redis或者memcached,设计服务器集群等等方案。你可以在网上搜索一下,如何解决高并发。
读取数据库是必然的,因为你需要从中取数据更新数据就必须与它建立连接,至于如何处理大批量,现在有种机制叫做缓存,所以当大批量的访问发生时并不是一次性都遇数据库连接的。
举报
引导大家完成一个PHP+MySQL分页功能,由简入繁的剖析原理
1 回答关于数据库建表操作
1 回答导不出数据库的数据
1 回答数据库里的表和数据是要自己写进去吗
1 回答关于获取数据库表格数据总条数的方法有疑问,麻烦老师同学帮忙解答下
1 回答有个Mysql数据库问题不懂,就是为什么不用mysql_num_rows()???