建立反向代理

问题描述

| 我正在从头开始构建反向代理。要求是: 1)超级可扩展。它必须处理许多并发请求(对于我来说,每秒1000个请求也是流的,这是一个很好的性能) 2)超快速(无阻塞)。 3)没有C / C ++或Erlang 4)易于维护-即使可以,也不能选择组装:) 经过研究,大多数人建议使用
node.js
Scala
-您认为这种工作的最佳解决方案是什么?您将使用哪些技术来构建这种代理? 谢谢     

解决方法

        我个人会先尝试这个家伙。 稍微说明一下,那些说“尝试使用node.js或Scala”的人被误导了,因为Scala(像Java)只是一种编程语言,而node.js则是大多数平台。除了其一般优势之外,Scala为此类项目带来的主要优势还包括: 语法多汁,可以更轻松地将actor系统编写为库,即PartialFunction \“ literals \”: 特质NeedsAPF {   def pf:PartialFunction [Any,Unit] } PFHaver对象扩展了NeedsAPF {   def pf = {     情况一:Int => println(\“我有一个int,它是\” + i)   } } 当您准备好使用它时,可以使用continuations插件,该插件可以让您编写看起来是同步的代码,但在幕后可以是异步的。     ,        我来看一下:https://github.com/nodejitsu/node-http-proxy,因为它可以满足您的所有要求。我不确定为什么需要从头开始构建它,但是我想如果您决定在节点中构建它,那么您至少可以从中得到启发。     ,        Scala应该足够好,但是您将需要大量使用NIO,这意味着您可能会与Java的NIO库保持密切联系。我不知道Scala中提供的任何库是否可以帮助您解决此问题,但是,再次查找它是您的工作,而不是我的。 :-)