专注培养泛IT高端人才

陕西新榜样官方网站

您的位置: 主页 > 新闻动态 > IT资讯 >

JAVA服务器资源的分配

来源:西安JAVA培训 发布时间:2018-06-21 浏览量:

  对于一个JAVA服务器来说,资源是恒定的,但是线程是无数的,无序的争抢资源会给JAVA服务器带来麻烦,资源分配不合理会影响整体效率,那么该如何处理JAVA服务器中生产数据与消费数据的缓冲问题?

西安JAVA培训

  先了解一下基本的术语概念:

  1、临界资源:并发环境中有着固定数量的资源。

  2、互斥:对资源的访问是排他式的。

  3、饥饿:一个或一组线程长时间或永远无法取得进展。

  4、死锁:两个或多个线程相互等待对方结束。

  5、活锁:想要执行的线程总是发现其他的线程正在执行以至于长时间或永远无法执行。

  可以看到,一个或多个生产者创建某些工作并将其置于缓冲区或队列中,一个或多个消费者会从队列中获得这些工作并完成之。这里的缓冲区或队列是临界资源。当缓冲区或队列放满的时候,生产这会被阻塞;而缓冲区或队列为空的时候,消费者会被阻塞。生产者和消费者的调度是通过二者相互交换信号完成的。

  当存在一个主要为读者提供信息的共享资源,它偶尔会被写者更新,但是需要考虑系统的吞吐量,又要防止饥饿和陈旧资源得不到更新的问题。在这种并发模型中,如何平衡读者和写者是最困难的,当然这个问题至今还是一个被热议的问题,恐怕必须根据具体的场景来提供合适的解决方案而没有那种放之四海而皆准的方法(不像在国内的科研文献中看到的那样)。

  陕西新榜样软件科技有限公司是一家西安软件培训的龙头企业,拥有众多的师资力量与良好的教学环境,致力于打造西安最权威最专业的IT培训平台。陕西新榜样会定期发布西安软件培训等相关资料文章,包括:西安JAVA培训西安UI培训WEB开发培训网络营销工程师培训等领域,敬请关注!

  西安JAVA培训热线:029-63326555

  西安软件培训网址:www.xinbangyang.com

  联系地址:陕西省西安市碑林区东大街端履门云龙大厦9楼

IT培训 服务