对于此模型,应该明确一下几点:
1、生产者仅仅在仓储未满时候生产,仓满则停止生产。
2、消费者仅仅在仓储有产品时候才能消费,仓空则等待。
3、当消费者发现仓储没产品可消费时候会通知生产者生产。
4、生产者在生产出可消费产品时候,应该通知等待的消费者去消费。
推技术:
功能 提供后台往前台的数据推送功能,前台数据提取时无需进行不间断的刷新,降低客户端资源占用,提高信息更新的及时性。
设计模式 生产者和消费者设计模式
涉及技术 AJAX
描述 现系统中需要数据实时更新时大多通过JS不断的轮询,这种方式在客户端资源占用和信息更新的及时性上都要打折扣,现可采用长轮训的方式对这种方式进行改进。
步骤如下:
1:前台通过AJAX异步方式往后台请求数据
2:后台建立相应的静态容器,容器中存在信息更新标志,前台作为消费者往容器中进行请求,当信息未进行改变时线程休眠,当信息更新时由生产者对容器内标志进行更新,并唤起等待的线程,将新数据返回。
使用 部分系统报警展示界面可通过这种方式实现,及时性可大大提高。