• 唯美
    2019-05-14
    快速解决,就只能改jvm内存配置,增大jvm新生代的大小,长期解决,引入NIO或AIO,netty 就是这么干的

    作者回复: 👍

    
     34
  • QQ怪
    2019-05-14
    之前一直听别人说go语言很容易抗并发,原来是有个这么牛逼的轻量级线程在啊,并且理解了基本原理,感谢老师分享,为自己扩充了眼界了,为老师打call👍

    作者回复: 客气了😂😂

    
     14
  • 韦
    2019-05-24
    每次创建一个线程高并发肯定OOM,1引入线程池控制创建线程的大小,通过压测得到比较合理的线程数量配置,2 需要在请求端增加一个限流模块,自我保护

    作者回复: 👍

    
     11
  • ~Wade
    2019-06-21
    有一个java库叫Quasar Fiber ,通过javaagent技术可以实现轻量级线程
    官网:http://www.paralleluniverse.co/quasar/
    
     10
  • echo_陈
    2019-05-14
    go语言的协程是语言级别的支持……java写个库就能支持轻量级线程了,很好奇库级别是如何支持的,原理是什么
     1
     10
  • 右耳听海
    2019-05-18
    不清楚老师讲这个模式的意义在什么地方,既然目前普遍的方案是使用基于nio的netty,并没发现这个模式在具体应用场景中的普遍应用,除了你说的调度场景,在高并发的情况下也没使用fiber,使用的是netty,为何不讲讲netty的思路
     2
     4
  • cricket1981
    2019-05-17
    网上查资料说java中的线程是内核空间的,轻量级线程属于用户空间的,是这样吗?另外轻量级线程是如何调度的?

    作者回复: 是的,如何调度我就说不清楚了

    
     3
  • 245864982
    2019-11-28
    老师,那tomcat也是一个请求一个线程的吧?它是怎么解决的。是用线程池吗?

    作者回复: 是的

    
     2
  • Sam
    2019-08-01
    老师,请问Java不支持轻量级线程,但是有Fibe,那是不是就可以用Fibe在实际项目中,然后相当于Java也支持轻量级线程了?

    作者回复: 实际项目还是不建议用,等官方正式发布吧

    
     2
  • JackJin
    2019-05-15
    这节课涨知识的
    
     2
  • Sharry
    2019-09-30
    Kotlin 支持协程, 并且实现了完善的调度策略, 可以考虑使用 Kotlin 作为替代方案

    作者回复: 👍就因为这个原因对kotlin好感倍增

    
     1
  • 疯狂咸鱼
    2019-07-21
    宝令老师的买别墅比喻简直了
    
     1
  • 张三
    2019-05-14
    打卡
    
     1
  • 赤城
    2019-11-06
    go中的轻量级线程就是协程吧?

    作者回复: 是的

    
    
  • 陌臣
    2019-10-18
    打卡,越到后面人越少了
     2
    
  • ly
    2019-10-09
    老师,能不能提供一个编译openjdk的方法,我在网上搜索了好多博客,按照他们说的步骤,都出现各种各样的问题,难道编译openjdk这么难?主要是长期用window系统,搞起好麻烦!

    作者回复: 那就搞linux吧,在linux上太简单了,按照官方文档来就没问题

    
    
  • DFighting
    2019-09-29
    快速解决就是碓资源,调整jvm新生代的大小,具体解决可以从两个方面考虑:
    1、把线程的创建模块独立出来,比如可以用类似队列的方式存储要执行的任务,并由具体执行程序进行线程调度和执行。
    2、具体执行模块可以进一步细化,比如将网络/磁盘IO等操作和程序执行操作独立开来,以提升并行化的程度等。
    总的来看就是把各种通用的操作按照相关性的大小和能否并行化把串行改为并行,当然就Java本身来说,线程还是一个重量级的资源,真正编写感觉还是需要池化的思想,不然代价太大,感觉性能上怕是不能太好
    
    
  • 疯狂咸鱼
    2019-07-21
    老师,轻量级线程语言层次实现的,该怎么理解

    作者回复: 相对于用类库方式实现而言的

    
    
  • Jxin
    2019-06-16
    18年底kt发布的最新版本就提到支持协程。我在想是不是就拿老师这里提的这个openjdk的开源项目实现的?毕竟kt无脑衔接java社区的依赖库。
    
    
  • tdytaylor
    2019-05-27
    老师的问题其实就在于并发量太大,创建大量的线程导致内存不够用,最直接的方式就是减少线程的创建:看到老师写的这个demo用的nio类库,直接改成多路复用,减少线程的创建。我另外一个想法是采用消费者和生产者模式,主线程负责处理连接请求,拿到连接之后放到消费队列里面,让线程池的线程去消费。
    
    
我们在线,来聊聊吧