2

我正在尝试开发一个由两部分组成的应用程序:Web 服务和 android 应用程序。我打算用 java play 框架和 cassandra noSQL 数据库来实现我的 web 服务。

我一直在寻找它2天,我仍然不知道我该怎么做。我需要集成一个java客户端(hector)作为应用程序层(Play2.0)和数据库层之间的桥梁,但我不清楚如何去做。

现在,我无法从 play 连接 cassandra;我无法进行我的应用程序需要的查询,我不知道我是否可以像以前的版本一样使用 play2.x(没有 scala 语言,只有 java 和 groovy 模板)。

好吧,我正在尝试开发一种可以轻松横向扩展的 Web 服务。因为会有很多请求,可能大部分同时来自手机。这就是为什么我选择与 cassandra 一起玩的原因(上学期我在拼贴中获得了足够的关于玩关系数据库的知识)。我的网络服务将根据客户端的位置信息向客户端返回一些数据。这就是为什么从数据库中搜索时间必须尽可能短的原因。实际上我已经为 cassandra 设计了我的数据库模型,因为我已经定义了我的应用程序需要什么样的查询,并且我获得了有关 cassandra 数据模型的足够信息。我认为我为我的应用程序选择的工具是正确的并且可以维护它。很快,我就不能像在游戏中使用 MySQL 一样使用 cassandra 了:(

4

3 回答 3

2

没有什么能阻止您将 Cassandra 与 Play 一起使用,就像您可以将它与 Jetty 或 Tomcat 或任何其他前端一起使用一样。Play 有一些工具可用于抽象流行关系数据库的使用,但这些工具不是 Play 的核心,因此您不必使用它们。您将需要创建您的 DAL 以使用您选择的库(Hector、Astyanax 等)与 Cassandra 对话,然后像在任何其他应用程序中一样使用该 DAL。也许您正在尝试做一些不同的事情?如果是这样,请非常具体地说明您需要了解的内容。

此外,Play2 与第一个版本完全不同,因此您在旧版 Play 中所做的任何事情都需要重新审视。它仍然支持 Java,所以这不是问题。

于 2013-01-31T18:34:07.357 回答
2

此外,Cassandra 的 PlayOrm 有一个 1.2 和 2.0 的 playframework 插件,并在 playframework 重新加载时自动重新加载,因此注释在开发中立即生效。最后,它还具有内存中的 nosql db 实现,因此您可以在没有 cassandra 的情况下启动 playframework 并有效地工作并在 QA 和生产中连接到 cassandra。

于 2013-02-02T16:22:58.483 回答
1

看看它是否有帮助,一个托管在 github 上的示例应用程序: https ://github.com/firekat/play-kundera

-维维克

于 2013-01-31T18:34:35.437 回答