问题标签 [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 回答
4282 浏览

scala - 在 scala 中使用 scrooge 和客户端在 python 或 ruby​​ 中编写一个节俭服务器

我想在 Scala 中编写一个节俭服务实现(使用 Scrooge),但不使用 Finagle,因为我无法为 Finagle 服务器编写一个 ruby​​/python 客户端。问题是使用 scrooge 服务似乎没有实现“处理器”类。

假设我有一个这样的节俭定义:

当我尝试使用 thrift for scala 的标准实现来运行服务器时,我使用 scrooge 生成了 scala 文件:

生成的 TestService 对象似乎没有 Processor 内部类。知道如何在没有 Finagle 的情况下做到这一点吗?或者作为另一种解决方案,如何编写一个 python 或 ruby​​ 客户端来finagle thrift 服务器?

0 投票
2 回答
2802 浏览

scala - Finagle 中服务、过滤器和编解码器之间的边界

Finagle 中使用的 Netty 使用“处理程序”管道来顺序处理输入和输出数据。Netty 示例和包含的库显示了用于身份验证、协议编解码器和服务的实际业务逻辑等各种处理程序。

Finagle 似乎采用了处理程序的概念,而是直接为 API 用户提供编解码器、过滤器和服务。虽然这些具有不同的签名,但 Finagle 的新用户需要决定使用哪个来实现其整个服务器的每个部分。他们现在需要决定哪个部分应该是编解码器的一部分,而不是任何过滤器,还是链末端的单一服务,而不是仅仅决定在哪里将链分解为各种 Netty 处理程序。总而言之,虽然 Finagle 是一个比 Netty 更高级别的库,并且应该使构建服务的任务更容易,但 API 用户可能有更多的选择。

将处理流的特定部分放入编解码器与过滤器与单一服务的关键决策点和优点/缺点是什么?如果管道有可能进一步扩展,是否应该将服务逻辑放入过滤器中,在管道末端使用“noop”服务?鉴于排序过滤器(作为管道中的处理程序)的灵活性,而不是一端的单一编解码器和另一端的服务,为什么“一切”不应该是一个过滤器?

0 投票
2 回答
1357 浏览

scala - finagle 5.0 是否发布在我可以添加到我的 sbt.build (sbt11) 的 Maven 存储库中?

我正在尝试在 Scala 项目中使用 finagle,我想知道是否有一个包含 jar 的 Maven 存储库。我想将它添加为依赖项,而不是在本地编译所有东西。

0 投票
1 回答
1731 浏览

memcached - Finagle Memcached set 方法中的标志 arg 是什么

com.twitter.finagle.memcached.Client将 set 方法定义为

旗帜应该是什么?是否有任何可用的文档?

0 投票
2 回答
538 浏览

serialization - 使用 Finagle memcached 客户端将对象保存到 memcached

com/twitter/finagle/memcached/客户端扩展 BaseClient[ChannelBuffer]

所以集合定义为

set(key: String, flags: Int, expiry: Time, value: ChannelBuffer): Future[Unit]

我的问题是如何将我的 java 对象转换为 netty ChannelBuffer,或者我有其他方法来设置 String 以外的对象?

谢谢

0 投票
1 回答
865 浏览

memcached - 使用 Finagle 的 Memcached 集群

如何构建 memcached 服务器集群并使用 finagle 访问它。ct 貌似ServerSet和ZooKeeper可以用来搭建集群。但我有几个问题。

1 将密钥分发到集群中的 memcached 服务器的算法是什么。我可以改变它吗?2 finagle如何检测memcached服务器故障以及故障转移是如何完成的。看起来一切都是从客户端完成的。在服务器端不需要做任何事情。

谢谢

0 投票
1 回答
1163 浏览

finagle - Finagle 红隼集群如何工作

它说我们可以使用 finagle ServerSet 和 Zookeeper 来创建一个集群。

  1. 我应该使用 finagle 服务器构建器来启动 kestrel 集群吗?或者集群可以仅使用 finagle 客户端构建。
  2. 在集群中分配队列的算法是什么?
0 投票
3 回答
2263 浏览

java - Finagle 未来的对象,它们是可重用的吗?

我是 Finagle 的新手。我现在正在阅读某人的代码,发现 Future 对象在不同的​​连接操作中被重用。我的问题是这会导致 Future 对象被执行多次(在每个连接中),还是只会执行一次并存储结果以供以后连接?

例子:

那么 b 会被执行两次,还是只执行一次?

0 投票
1 回答
708 浏览

scala - 使用 finagle 进行持久身份验证

我正在开发回合制策略游戏,并且正在尝试进行多人游戏。我从未做过类似的事情,但我收到了使用 rpc 的强烈建议。我的多人游戏将托管在主服务器上,基本上玩家发送他所做的事情并接收游戏的新状态。如果我理解正确,使用 rpc 架构,服务器只能回复他收到的请求。

所以我认为玩家首先登录服务器,发送凭据,他通过 rpc 发送他所做的事情,并且每 x 毫秒他尝试刷新他当前的游戏(通过发送请求“刷新”)。我不明白的是,我如何才能记住认证。我是否需要为每个请求每次重新登录(并发送凭据)(这似乎需要发送大量信息)。如何识别来自我当前已授予身份验证的人的请求?如何处理连贯但分离的请求之间的逻辑?

0 投票
2 回答
985 浏览

java - java的finagle节俭生成器

我见过两种工具来生成与 finagle 兼容的节俭。

  1. thrift-0.5.0-finagle是不是太旧了?最新的是 thrift 0.9。我还能用吗?

  2. 或者我应该使用Scrooge吗?它在 Scala 上生成 Java 绑定。