论坛首页 Java企业应用论坛

充分利用多核优势,高效并行渲染页面--改造nutz使其成为支持并行计算的MVC框架

浏览 14027 次
精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-07-06  
看到这个异步IO我就立马想起了nodejs
0 请登录后投票
   发表时间:2012-07-06  
key232323 写道
缓存 + 静态化

不是解决此类问题的主要途径么?

楼主可以做些数据出来对比下

赞同,思路不错,选的场景不好
0 请登录后投票
   发表时间:2012-07-06  
whiletrue 写道
key232323 写道
缓存 + 静态化

不是解决此类问题的主要途径么?

楼主可以做些数据出来对比下

赞同,思路不错,选的场景不好



同意。那些网站都是有后台数据库的,然后将动态页面生成静态页面并缓存,定时更新缓存。
最终的用户都是直接取出缓存的表态页面而已。
0 请登录后投票
   发表时间:2012-07-06  
xj753277 写道
楼主知道 freemarker吗, 这些不同的版块是定时生成的静态 html文件,而不是实时查询数据库

正解,门户都是这样做的,不可能会去实时的查询。不过你这个思路感觉还是不错的,有空再仔细看看
0 请登录后投票
   发表时间:2012-07-06  
public String index() {  
        //从缓存中获取新闻  
        newsList = service.queryNewsListFromCache();  
        //从缓存中获取体育  
        sportsList = service.querySportsListFromCache();  
        //从缓存中获取视频  
        videoList = service.queryVideoListFromCache();  
        return SUCCESS;  
    }  
....
后台线程更新缓存




并行计算个P 楼主啥设计理念,考虑的场景不好
0 请登录后投票
   发表时间:2012-07-07  
thorlst 写道
public String index() {  
        //从缓存中获取新闻  
        newsList = service.queryNewsListFromCache();  
        //从缓存中获取体育  
        sportsList = service.querySportsListFromCache();  
        //从缓存中获取视频  
        videoList = service.queryVideoListFromCache();  
        return SUCCESS;  
    }  
....
后台线程更新缓存




并行计算个P 楼主啥设计理念,考虑的场景不好

其实,事实上也不是你想的这样....
0 请登录后投票
   发表时间:2012-07-07  
这里有两个问题:

1. 加速比的问题,理论上说,整个请求的时间应该是Max(“子请求”)即最长的那个子请求的消耗时间。但是这个只是理论上而已,我做过尝试,实际情况会糟糕一些,最主要的是——并发部分在整个逻辑中的比例。很多情况下我们是花费大量的精力去优化整个操作20%甚至10%的那部分逻辑。

2. 众人说的会增加CPU竞争其实是可以很好的避免的,其一是使用线程池来做限制,这种方法当然简单咯,其二引入actor。这话就长了。

3. 这种特性其实在servlet 3.0中就有(我无法理解。。这儿特性是实际意义)
0 请登录后投票
   发表时间:2012-07-08  
fireflyc 写道
这里有两个问题:

3. 这种特性其实在servlet 3.0中就有(我无法理解。。这儿特性是实际意义)


这个特性就是io打开,但是线程共享,和netty的理念差不多。用来做long get的操作可以节约资源。Spring MVC 3.2会正式开始利用Servlet 3.0的这个特性。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics