我正在设计一个高度可扩展的应用程序,它必须存储大量数据.例如,它会存储很多关于用户的内容,然后是很多他们的消息,评论等.我以前一直使用MySQL,但现在我很想尝试像couchdb或类似的新东西,而不是SQL.
有没有人对此有任何想法或指导?
我最近第一次使用MongoDB,发现它非常易于使用且性能卓越.这引出了我的问题 - 为什么不是MongoDB?
让我们说我正在实施一个问答应用程序.我的方法是在MySQL数据库中实现用户数据,然后使用MongoDB进行问答存储 - 一个存储问题和所有响应的集合.
这种方法有什么问题吗?
我正在使用GSON将JSON解码为类型为T的对象,例如
public T decode(String json) {
Gson gson = new Gson();
return gson.fromJson(json, new TypeToken<T>() {}.getType());
}
Run Code Online (Sandbox Code Playgroud)
然而,这会返回一个例外 -
java.lang.AssertionError:意外类型.预期的一个:java.lang.reflect.ParameterizedType,java.lang.reflect.GenericArrayType,但得到:sun.reflect.generics.reflectiveObjects.TypeVariableImpl,用于类型标记:T
我认为通过使用TypeToken,我避免使用Type Erasure.
我错了吗?
谢谢
我和我的团队正在开发一个需要能够处理相当繁忙的流量的应用程序.不是Facebook级别,但在未来我希望能够扩展到没有大量代码重写.
我的想法是通过自己的界面将所有内容模块化为单独的服务.因此,例如,消息传递将具有可能具有send和getMessages()作为方法的消息传递接口,然后PHP Web应用程序将通过soap或curl或类似的东西简单地查询该接口.然后,消息传递应用程序可以是任何类型的应用程序,因此Java应用程序或Python或任何适合于具有其自己的单独数据库分片的特定功能的应用程序.
这是一个好方法吗?
我想知道是否存在GWT不适合的特定情况?例如,使用GWT重新开发Stack Overflow是否合适?
我正在开发一个具有Java Restlet API的应用程序,我正计划使用GWT(以前我只使用bog标准HTML/CSS和后端PHP代码调用API).我想知道是否有理由不选择这样做?
我正在构建一个当前使用PHP的应用程序,我正在尝试决定是否使用预先存在的框架,如codeigniter或构建我自己的框架.应用程序需要真正可扩展,我想完全控制它,这让我觉得我应该建立自己的,但同时我不想重新发明轮子,如果我不需要.
任何建议都非常感谢.
谢谢
我是在建立一个新的应用程序,它会具有非常相似的功能,以Facebook和,但是,显然不会曾经有对付它仍然会通过大量的用户群使用,其中大部分将需要4亿个亿用户的喜欢中间它运行得非常快.
我对MySQL有丰富的经验,但社交应用程序提供了MySQL不太适合的复杂性.我知道Facebook,Twitter等已经向Cassandra转移了很多他们的数据,但我不确定它会走多远.
例如,你会在Cassandra中存储用户数据 - 用户名,密码,地址等内容吗?你会在Cassandra中存储电子邮件,评论,状态更新等吗?我还读过很多像neo4j这样的东西更能代表社交应用程序使用的朋友关系,因为它是一个图形数据库.我只是刚开始使用NoSQL路线,所以非常感谢任何指导.
有人能告诉我这个吗?我希望我不是太一般!
我正在尝试使用以下代码从MySQL
表中提取Experience对象列表.每个体验都有一个from datetime
列和一个datetime
列,我只想拉出今天日期落在from和to之间的行.
我正在使用JPA 2.0运行Hibernate.
Date currentDate = new Date();
CriteriaBuilder builder = entityManager.getCriteriaBuilder();
CriteriaQuery<Experience> query = builder.createQuery(Experience.class);
Root<Experience> root = query.from(Experience.class);
builder.between(currentDate, root.get("from"), root.get("to"));
return entityManager.createQuery(query).getResultList();
Run Code Online (Sandbox Code Playgroud)
我的问题是,builder.between()
显然不允许我传递Date对象.
我的问题有更好的解决方案吗?
当我需要调用也可注入的父构造函数时,如何处理Guice?例如,我有一个抽象的父类,它有一个构造函数,它注入了一个由所有派生子共享的对象,每个子代也有一个注入构造函数.
调用super()不会工作,因为Java希望我将对象作为参数传递而不是让Guice注入.
谢谢
编辑:我想知道我是否需要使用方法注入?
我有一个userID列表,我想从一个与这些用户ID之一相关联的集合中提取每个文档(自然排序).是否有一个等同于SQL WHERE IN的MongoDB?