问题标签 [finagle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
13970 浏览

scala - Is there a simple way to specify a global dependency exclude in SBT

How would you exclude a transitive dependency globally? My project depends on a lot of the Twitter libraries or on libraries that depend on the Twitter libraries. I don't want slf4j-jdk14 in my classpath, no matter what (I use logback as slf4j binding).

Currently I do this:

but every time someone adds another dependency that uses slf4j-jdk14 I might get it back into the classpath.

0 投票
1 回答
727 浏览

java - 异步库的优势

我正在浏览 twitter finagle库,它是 scala 中的一个异步服务框架,我对一般的异步库有一些疑问。

据我了解,使用回调的同步库的优点是应用程序线程获得空闲,并且一旦通过网络完成请求,库就会调用回调。通常,应用程序线程可能没有与库线程的 1:1 映射。

  1. 库线程中的服务调用阻塞对吗?
  2. 如果是这种情况,那么我们只是在其他线程中进行阻塞调用。这使应用程序线程自由,但其他一些线程正在做同样的工作。我们不能仅仅增加应用程序线程的数量来获得这个优势吗?

我可能误解了异步库通常是如何在 Java/Scala 或 JVM 中实现的。谁能帮我理解这是如何工作的?

0 投票
2 回答
2270 浏览

scala - Twitter Finagle 客户端:如何进行外部 REST api 调用?

我正在尝试在我的 finagle 代码中发出一个外部(到 finagle 服务器)REST GET 请求,URI 是:http ://service.site-dev.com/subservices/list

我正在使用示例中的客户端代码:https ://twitter.github.io/scala_school/finagle.html#client

我的代码(用 Scala 编写)如下所示,但即使我设置了超时限制,它也会挂起:

我怀疑我的主机参数是错误的?但是我想在里面放什么,这是对外部 REST 服务的调用?

0 投票
1 回答
895 浏览

scala - Twitter-Finagle 的并发请求数限制

我像这样使用 Finagle 创建一个节俭服务器

但是,我发现并发请求的最大数量是 5(为什么是 5?当超过 5 时,服务器会忽略超出的请求。)我真的很难通过 Finagle 的文档(http://twitter.github.io /finagle/guide/Protocols.html#thrift-and-scrooge),但找不到配置最大请求限制的提示。如何配置 Finagle 的最大并发请求数?谢谢

0 投票
1 回答
253 浏览

scala - Finatra - 无法更新 cookie

我正在尝试像这样更新 finatra 中的 cookie:

但它不工作。我在以下请求中获得的 cookie 值始终是旧的。有谁知道我做错了什么?

0 投票
1 回答
416 浏览

scala - Twitter Finagle 打开太多文件

我使用 Twitter-Finagle 创建一个服务器。在服务端的每一个 RPC 函数中,只要使用一个 Finagle 客户端来调用另一个服务端的 RPC。像这样:

但是,不会太久,就会发生错误:

而且,我使用lsof -p并发现与另一台服务器的连接太多(大约 5000 个连接!)。我想知道它是怎么发生的?有什么我错过的吗。

================问题解决=============

请参考Scala:为什么 mapValues 会产生一个视图,是否有任何稳定的替代方案?, Map 的 mapValue 方法可能比较棘手

mapFunction每次使用结果视图时都会重新评估该函数resultIsAView

0 投票
1 回答
426 浏览

java - 启动时在 Finagle 服务器中运行异步线程的最佳方式

我开始使用 Java 中的 Finagle 库,并尝试建立几个以 JSON 进行通信的基本 HTTP 服务。
让它成为主服务和从服务。

主服务有以下逻辑:

  • 它在启动时运行一个线程,向从属设备发送命令请求
  • 它侦听来自从站的错误/成功报告

从服务器的逻辑是这样的:

  • 对于它收到的命令,它立即发送一个 ack。
  • 然后它启动一个线程来执行命令指定的任务。
  • 它将作业(或错误)的结果以 JSON 格式发送回 master。

我有以下代码:

我的问题是:
现在,理想情况下,这项工作可能需要几秒钟才能完成。但如果出现错误,它几乎可以立即向主控发送一条带有错误报告的消息。一旦我打电话sendCommands(),任何时候我都可以期待奴隶尝试联系主人。

服务器是否启动并仅通过调用来监听Http.serve()?或者这是否发生在Await.ready()通话中?
我假设后者,并将 aThread.sleep()放入由sendCommands(). 这是必需的吗?
另外,有没有更好的方法来干净地在主服务器上启动这个命令发布线程?

0 投票
1 回答
1413 浏览

scala - 刷新 twitter finagle 库中的 DNS 缓存

twitter finagle 库是否自己进行 DNS 缓存?我问这个是因为我们删除了 vip 后面的一些主机,但他们仍然收到我们客户的请求。

如果有这样的缓存,我该如何设置它的超时时间?

0 投票
1 回答
3467 浏览

scala - 如何使用来自 finagle 客户端的参数发出请求?

我开始使用 Finagle 服务器 (twitter/finagle):

客户(推特/finagle):

如何将数据Map("data_id" -> 5)从客户端发送到服务器?我在服务器的哪个位置收到它?我必须向服务器添加回调吗?

我通过搜索没有找到它。如果你能给我一个例子的链接,那就足够了。

0 投票
1 回答
595 浏览

scala - Scala Play 控制器中的 Finagle 客户端

我在我的控制器中使用 Finagle 客户端的方法(FinagleClient.longRunningComputation)

我需要在我的游戏控制器中获得 com.twitter.util.Future 的结果

我尝试使用Returning futures,但编译器返回以下错误:

我需要在我的游戏控制器中使用 com.twitter.util.Future

我怎样才能做到这一点?