我知道分页有两种,一种是数据库分页,比如Oracle的rownum伪劣,先分页再取数据。
第二种是取出数据后再通过代码进行分页。
请问这两种有什么优缺点?我感觉第二种把数据都取出来会很影响内存和性能啊。论坛一般都用什么方法呢?比如说贴吧?
天蓬老师2017-04-10 16:45:51
这个根据你当前总数据的大小来决定,
场景一:
前提条件:数据量很大
方案:建议采用数据库分页来,假如一次性取出大量的数据,需要很长的时间,这样用户体验不好。
场景二:
前提条件:数据量不大
方案:建议采用前端分页,优点是可以减少http请求,减轻服务器压力,因为数据量不大,在客户端所做的存储和计算其实也不会消耗多少性能。
高洛峰2017-04-10 16:45:51
一般都是采用数据库分页,这样获取多少数据由用户决定,当用户想要加载更多数据时,则再从数据库中获取,这种做法得劣势就是需要多次发起请求,从数据库获取数据!
而一次性取出数据,在本地分页的做法虽然可以避免多次请求,然而这需要本地做存储,然后各种计算,非常浪费性能。而且可扩展性和定制化非常差!