当前位置:  开发笔记 > 编程语言 > 正文

Haskell是一个高度并发的服务器

如何解决《Haskell是一个高度并发的服务器》经验,为你挑选了1个好方法。

假设我想在Haskell中编写服务器.具有高并发性和简单处理的那种.对故障具有鲁棒性并提供高可用性的那种.Erlang将会有所帮助.

什么是一套好的工具,无论是框架还是一组基元,从哪里开始?



1> Don Stewart..:

这正是Haskell擅长的.它具有出色的多核并行支持,因此当您使用更多线程时,您可以轻松利用额外的核心.但请记住,Haskell的目标是在多核上有很好的表现,Erlang有点不同,更强调分布式系统,而不是原始性能(例如参见基准游戏,http://benchmarksgame.alioth.debian.org/u64q/compare. php?lang = ghc&lang2 = hipe Haskell的速度几乎总是快得多,内存也少得多.

现在,开始:

您可以从Real World Haskell中的示例开始,了解forkIO和Haskell的轻量级线程,http://book.realworldhaskell.org/read/concurrent-and-multicore-programming.html

GHC关于并发工具的文档,http://haskell.org/haskellwiki/GHC/Concurrency

要查看大规模,可扩展的网络代码的库是事件库:http://github.com/tibbe/event,这使得使用epoll作为接受来自网络的事件的方法变得容易.这是一个简单的例子:http://donsbot.wordpress.com/2010/01/17/playing-with-the-new-haskell-epoll-event-library/

有关回归基础知识,请参阅Simon Marlow关于构建并发Web服务器的教程:http://www.haskell.org/~simonmar/bib/webserverjfp_abstract.html

你会发现这个任务相对简单,有趣!

推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有