问题标签 [thrift]

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 投票
1 回答
2563 浏览

.net - Thrift,.NET,Cassandra - 这是正确的组合吗?

我一直在评估用于开发基于社交网络的应用程序的技术堆栈。以下是我认为非常适合这种应用程序类型的应用程序的堆栈:

图形用户界面——ASP.NET MVC、Flash (Flex)

业务服务——基于 Thrift 的服务 使用Thrift的优势之一是可以解决将来用户群迅速增加时会出现的扩展问题。所有业务逻辑都可以使用 REST、JSON 等公开为服务,这也允许我们在需要时使用基于 C++ 或 Erlang 的服务。

数据库——mySQL 、CasSandara mySQL 可用于存储需要持久化的数据。Cassandara 将用于将全局标识符存储到持久化数据中。由于 Cassandara 也非常擅长通过引入更多节点来进行扩展,这也将利用基于 Thrift 的服务。Cassandara 和 Thrift 之间也有原生支持

缓存服务器——Memcached

如果需要任何非脏数据,来自业务服务的任何请求都只会与 Memcached 对话,否则会有一些后台作业会使数据库中的缓存无效。

问题是:

  1. 开源的 Thrift 是否可以投入生产?
  2. 当应用程序(GUI)主要是在 ASP.NET 中开发而 DB 是 mysql 时,服务层选择的堆栈是否正确?
  3. 这里的任何人都经历过其他警告吗?

这个堆栈背后的主要目标之一是轻松扩展更多节点,这也有助于我们使用 Linux 机器,它将显着降低我们的成本

请思想..

0 投票
3 回答
568 浏览

perl - 为什么在使用 Net::Cassandra::Easy 和 Cassandra 0.5x 插入行时会出错?

当使用 Perl 模块Net::Cassandra::Easy与 Cassandra 交互时,我使用以下代码从column-family 中的col[123]行中读取列:row[123]Standard1

这按预期工作。

但是,当尝试row1使用 ..插入行时

.. 我收到错误消息Can't use string ("0") as a SCALAR ref while "strict refs" in use at .../Net/GenThrift/Thrift/BinaryProtocol.pm line 376

我究竟做错了什么?

0 投票
1 回答
815 浏览

perl - 如何使用 Perl 的 Net::Cassandra::Easy 检索所有匹配行的所有列?

使用 Perl 时Net::Cassandra::Easy,以下代码col[1-3]将从 rows检索列row[1-3]

相应的 SQL 将是:

假设我想检索所有列。在 SQL 术语中,这将是:

要获取我当前使用的所有列:

只要列数不超过一百万,此方法就可以工作。虽然这可行,但我认为有一种更清洁的方法可以做到这一点。有没有更简洁的方法可以向 Cassandra 指定我要检索匹配行的所有列?

0 投票
2 回答
2878 浏览

c++ - Thrift 客户端-服务器多重角色

这是我的第一个问题,如果表格有误,请见谅!

我正在尝试制作节俭的服务器(python)和客户端(c++)。但是我需要双向交换消息。客户端应注册(调用服务器的功能并等待),服务器应在同一端口上侦听 N(N-> 100k)个传入连接(客户端)。在满足某些条件后,服务器需要调用每个客户端上的函数并收集结果并解释它们。

我有点困惑,第一个问题是“这可以在 Thrift 中完成”吗?第二个问题与允许我进行双向通信的机制有关。我想我需要两项服务。一种具有客户端功能,另一种具有服务器功能。但我对调用代码感到困惑。我了解一种通信方式(从服务器调用函数),但是从客户端调用函数时我遇到了问题。

有什么建议么???

谢谢!

0 投票
2 回答
2104 浏览

rpc - 一个传输上的多个 Thrift 服务

只是在这里寻求确认:apache Thrift 协议似乎不支持在一个传输端点上运行多个服务?(一个套接字,文件,不管)

我似乎无法弄清楚如何在 Thrift 中做这样的事情:

似乎没有任何传入和传出服务句柄的概念,最终受协议限制。看起来您不能在一个传输管道上运行两项服务。正确的 ?

0 投票
4 回答
10523 浏览

php - Thrift 异步函数中的回调?

Thrift中,可以使用oneway修饰符将调用指定为异步

显然,不可能定义一个回调,但是,在函数执行完成时执行。

看来我唯一的可能是给我的 Thrift 客户端(PHP)一些“服务器”功能,这样,当服务器端完成繁重的计算时,我可以向它发送通知。这意味着我应该有一个新的 .thrift 文件,其中包含新定义、新服务和所有其他内容,并且我应该使用 Thrift 生成 php-server 端代码。

即使这是可行的,对我来说这似乎有点过头了,我想知道是否有更聪明的方法来实现回调。

期待你们的一些反馈,伙计们。

0 投票
1 回答
1063 浏览

python - Cassandra数据库,哪个python接口?

我将使用 Cassandra 数据库编写 Web 门户。你能告诉我使用哪个python接口吗?thrift、lazygal 还是 pycassa?使用更复杂的节俭然后更清洁的 pycassa 有什么好处吗?性能怎么样 - 是一样的(所有这些都只是层)?

感谢您的任何建议。

0 投票
1 回答
322 浏览

php - 使用 Thrift 混合开发语言

我目前正在开发一个需要多种不同开发语言的应用程序。我想使用 PHP 作为拼图的最后一块 - 物理网页构建。这个 PHP Web 应用程序需要联系多个 Web 服务,这些 Web 服务可以用 Java、Erlang 和 Python 等任何语言进行编码。这些 Web 服务中的每一个都将使用 API 来实现。我的计划是使用 Thrift 来让这种组合发挥作用。这是正确的方法还是我混淆了 Thrift 的全部意义?

0 投票
2 回答
5075 浏览

java - 在 PHP 和 Java 中使用 Thrift

我让自己对如何去做这件事有点困惑。我的计划是使用 PHP 来执行最终的页面构建,这个 PHP Web 应用程序将联系多个服务,我也将开发这些服务来获取数据。可以说其中一项服务是用 Java 完成的。我将定义一个由具体类实现的 Java 接口。这就是我感到困惑的地方 - Thrift 如何将 PHP Web 应用程序与 Java 服务链接起来,还是我完全搞混了?

谢谢

0 投票
4 回答
7595 浏览

maven - Maven Thrift 存储库

有谁知道 Thrift 库是否在任何 Maven 存储库中?