我们正在开发一个使用Libgdx/Netty的2D MMORPG空间射手,我们面临着一个数据无法解决的问题。
我们被困住了,请帮我们做决定。
发布于 2013-03-26 23:32:17
你不能通过谈论技术和猜测来决定性能问题。唯一的方法是对它们进行基准测试,并为您真正关心的事务获取一些真实的数据。
编写基于接口的DAO,使用每种候选技术实现,并测量实际结果.这就是如何决定使用哪种持久性技术。
你熟悉哪一个?如果没有人知道NoSQL,就不要使用它。如果你不懂JPA,就不要用它。Spring模板允许您使用事务编写自定义SQL。如果您已经很了解关系数据库和Spring,为什么不直接使用它呢?
发布于 2013-03-26 23:30:06
我们被困住了,请帮我们做决定。
这当然取决于需求。现在我是怎么想的。如果主要目标是性能,我建议您实现自己的ORM,因为您将获得对查询的完全控制,主要是可以根据特定需求优化所有查询。
我并不是说JPA、EclipseLink或其他框架是错误的,但大多数ORM框架主要是为了在数据库层上独立目标而指定的,所以应用程序是独立于数据源类型的,但是可以通过实现合适的数据源设计模式(如AbstractDAOFactory、Mappers等)来实现。
我还必须指出,自己的ORM的主要缺点是实现需要大量时间,但如果您想要创建良好、高效和工作的项目,则必须花费一些时间。
由于这是许多视图,有人建议您使用JPA、Spring或JDBC(其中JDBC肯定比JPA更快),并且有人更喜欢自己的ORM。我认为从更多的开发人员那里获得的经验应该足够了。
如果你想使用技术,就用你知道的技术。
https://stackoverflow.com/questions/15649084
复制相似问题