当前位置: 首页 > news >正文

漯河市建设局网站盐城营销型网站

漯河市建设局网站,盐城营销型网站,广西桂林学院,长沙网站托管quasar 异步回调“ Arien看到了我们运行的parallelStreams和ForkJoin基准测试的结果后#xff0c;在Twitter上与我们联系。 这激起了他的兴趣#xff0c;因此他进行了一些自己的测试#xff0c;将Quasar纤维加入了混合物。 这是他的结果和结论。” –塔基皮#xff08;Taki… quasar 异步回调 “ Arien看到了我们运行的parallelStreams和ForkJoin基准测试的结果后在Twitter上与我们联系。 这激起了他的兴趣因此他进行了一些自己的测试将Quasar纤维加入了混合物。 这是他的结果和结论。” –塔基皮TakipiAlex Zhitnitsky Arien Kock是Java软件工程师。 他喜欢单口喜剧并且曾经是街头霸王的竞争者。 异步ForkJoinPoolmanagedBlock和Quasar在IO方案中如何执行 我认为Quarar有很大的潜力。 除了允许更多数量的并行操作之外Quasar的光纤还允许OS线程不是一对一的映射还允许程序员以同步方式使用continuation 编写代码。 这比普通的异步风格的代码往往会带来回调的痕迹使解释和推理代码更加容易。 对于轻量级线程的性能优势我考虑暂停绿色线程的性能的提高/纤维与停车操作系统线程非常成熟 。 在这篇Takipi博客文章的激发下 我对Quasar在IO场景中的性能和替代方法感到好奇。 所以我做了一个基准。 新话题Java的IO基准类星体与异步ForkJoinPool与managedBlock http://t.co/2eoi4th2ZO pic.twitter.com/IDDGYPYvfI — Takipitakipid 2015年3月9日 设置 我使用JMH来避免重新发明测试轮的不良版本。 我首先找到了Caliper但随后在Stackoverflow上的某个地方读到JMH“更好”。 这是我第一次使用它但这是一次非常积极的经历。 它带有事件探查器和自动参数排列以及许多其他用于编写微基准测试的出色功能。 我的基准比较了IO的三种样式。 直接使用AsynchronousFileChannel带有回调使用常规的阻塞FileChannel但使用ForkJoinPool的managedBlock工具最后Quasar在AsynchronousFileChannel周围使用包装器对象使您可以编写同步样式代码。 我使用IO操作之间的一些计算工作来运行测试以从Quasar获得大量上下文切换。 您可以在我的Github存储库中找到基准代码。 该基准测试在Windows 8笔记本电脑上以安全模式我知道避免干扰的最佳方式在SSD驱动器上运行。 结果 通过5次热身迭代和15个真实样本我相信这是非常准确的。 差异远在误差范围之内我相信可以肯定地说它们是相等的。 运行堆栈分析器仅显示托管阻塞和非阻塞Quasar和Async FJP类型之间的差异这会产生非常不同的调用堆栈。 我创建了一个使用Socket进行相同操作的基准但是我很确定实现中存在错误。 如果有人想看一下代码请放心。 我预计托管块会变慢因为当无法保证FJP上的并行运算能力时它将分配额外的线程使用计算任务确实如此。 在运行该基准测试时我什至无法正常启动VisualVM。 大量的线程使其加载极其缓慢。 尽管频繁分配线程但没有区别。 类星体也是如此。 暂挂光纤的开销保留执行进程的当前状态以释放CPU内核的操作不会引起任何明显的延迟。 在“引人注目的”是关键的地方…… 结论 面对IO这三种实现的速度差异不明显。 如果我实现了一个灭火器软管CPU是瓶颈那也没关系因为在所有三种实现中常规非IO代码都将以相同的速度和相同的并行度执行。 那是因为Quasar不会进行任何上下文切换除非光纤实际阻塞了。 如果光纤花费太长时间执行而没有光纤阻塞类星体甚至会发出警告。 似乎三种处理IO的性能均相同这意味着对于这种类型的应用程序在这三种类型之间进行选择将是一个问题。 但是我认为这只是部分正确。 在回调样式和阻止样式之间如果我要做的是同时处理8个文件则可以清楚地选择阻止样式。 容易掌握。 接下来在托管块创建更多线程和光纤块之间进行选择托管块的工作量最少。 案件尚未完全结案但是…… 潜伏 在客户端连接可以长时间保持打开的Web服务器中例如当我们等待缓慢的客户端和/或正在从数据库中获取数据时在事务期间阻塞线程可能会导致线程饥饿。 这是Quasar真正发挥作用的地方这要归功于将许多用户空间线程复用到少量OS线程上。 然后有... 使用Quasar的当前“困难” 截至目前使用quasar意味着使用Java代理这仅需要一点努力。 现有代码也标记为Suspendable以便Quasar可以检测并阻止随后运行代码的光纤。 在pom.xml中查找执行发现/标记的maven-antrun-plugin。 如果您使用的是具有回调样式异步性的框架那么您需要编写的自定义代码并不那么复杂但是您仍然必须编写它。 看看Pulsar的现成集成。 IO光纤是或否 当您要做的只是具有高吞吐量和低并行度的连续IO时基准测试不会显示使用光纤的任何代价。 使用Quasar的额外工作就额外的编码和配置而言是一系列一次性任务我认为这可以忽略不计。 Pulsar提供了一组很好的集成尽管JDBC有点不足。 使用这些和您自己的应用程序您可以创建一个IO繁重的应用程序例如Web应用程序该应用程序具有一个用于接受连接的池和一个或多个用于处理后端调用的池。 您最终得到的是线程池这些线程在后台将任务相互传递而您的逻辑仍然以同步的方式从上到下读取最后是return语句。 如果像大多数小型应用程序一样您最多只能为数百名同时进行的用户做点事情该技术值得一试但没有好处。 但是如果您的应用程序需要处理大量并行请求我说去吧。 翻译自: https://www.javacodegeeks.com/2015/03/java-io-benchmark-quasar-vs-async-forkjoinpool-vs-managedblock.htmlquasar 异步回调
http://www.zqtcl.cn/news/766762/

相关文章:

  • 专门做家居的网站国内企业网站设计
  • 做网站时怎么取消鼠标悬停性价比最高网站建设
  • 三网合一网站模板网站上内容列表怎么做
  • 鲜花商城网站建设西安房产网站大全
  • 家庭宽带做网站空间一个数据库可以做几个网站
  • 环境设计公司排名搜索引擎seo是什么意思
  • 北京网站建设策划排名长春市建设集团股份有限公司
  • 网站建设项目怎么跟进客户安阳哪里有做网站的
  • 重庆定制网站建设公司郑州网站模板
  • 网站 建设 领导小组wordpress下拉 友情链接
  • 做网站用php广州最新新闻
  • 福州市住房和城乡建设局网站18款禁用观看黄入口
  • 西安网站制作工作室网页怎么做成网站
  • 做h5网站公司百度知道网页入口
  • 网站建设 中企动力上海在线设计房屋效果图
  • 河南宝盈建设集团有限公司网站代理二级分销系统
  • 青岛高级网站建设价格对外宣传及网站建设文件稿
  • 网络营销中自建网站建设局是干嘛的单位
  • 做网站的公司 贵阳流媒体网站建设
  • 北京建网站重庆安全建设工程信息网
  • 做公司网站的尺寸一般是多大无障碍浏览网站怎么做
  • 网站登陆界面psd手机一元云购网站建设
  • 网站规范化建设wordpress iis7.5 伪静态
  • 济南网站设计建设公司深圳seo外包公司
  • 重庆信息网站推广网站做推广如何设计二维码
  • 学历低的人不适合学编程小红书seo关键词优化多少钱
  • pc网站制作公司企业邮箱格式模板
  • 河南5G网站基站建设信息wordpress自定义文章页面模板下载
  • 宁波三优互动网站建设公司怎么样手机app商城
  • 散热器 东莞网站建设php模板源码