有任何使用Terracotta开源的经验吗?

时间:2008-11-11 00:37:00

标签: java load-balancing terracotta

是否有人使用Terracotta的开源产品而不是企业产品?具体来说,我感兴趣的是,如果没有企业工具来管理您的集群,是否值得努力使用陶土?

过度简化的使用摘要:我们是一家预算有限的小型创业公司,需要处理数百万条记录,并且每天可以扩展数十万页面浏览量。

4 个答案:

答案 0 :(得分:8)

我正在将Terracotta与我的项目(传感器节点网络模拟器)集成。大约三个星期前,我从一位同事那里了解到了兵马俑。现在我的应用程序利用Terracotta的网格计算。下面我总结了我对兵马俑的一些基本要点。

  • Terracotta网站包含非常详细的文档。对于开发人员Concept and Architecture Guide
  • 而言,本文可能是一个很好的起点
  • 当您遇到问题并且在文档中找不到答案时,Terracotta community forum是提问的好地方。似乎Terracotta开发人员定期检查它并且非常敏感。
  • 尽管Terracotta是在JVM下运行的,并且宣传只是让配置文件在集群中运行只是一个配置问题,但您应该准备好在应用程序中引入一些严重的更改来实现它表现得相当好。例如。我必须完全重写我的应用程序的同步逻辑。
  • 与Eclipse良好集成。
  • 管理控制台是一个很棒的工具,它帮我调整了我的应用程序,以便在Terracotta下正常运行。它从您只能想到的服务器和客户端收集所有性能指标。它肯定有一些与GUI相关的问题,但谁没有: - )
  • 首选java.util.concurrent。* citizen上的标准Java同步原语(synchronized / wait / notify)。我发现标准基元提供了更高的灵活性(可以配置为读或写集群锁,甚至根本不是锁),更容易在管理控制台中跟踪(你看到对象的类名被锁定了然后是一些ReentrantLock)。

希望有所帮助。

答案 1 :(得分:5)

目前,Terracotta企业工具仅提供开源版本之外的一些功能,例如可视化和管理(例如将客户端踢出群集的能力)。这将继续存在分歧,企业工具可能会在管理和监控等方面拥有更多运营商级别的功能,但即使使用开源工具,您也可以管理和调整应用程序。

企业许可证还为您提供支持,赔偿等内容,这些内容可能与工具一样重要,也可能不重要。

我会劝你为自己尝试一下。如果你想看一个使用Terracotta的真实应用程序的例子,你应该看一下刚刚发布的这个参考网络应用程序:

The Examinator

答案 2 :(得分:1)

您可能需要查看JBossCache / PojoCache,它是一种内存分布式缓存解决方案。不同之处在于它使用一个简单的API在缓存的“集群”中传播对象,其中Terracotta在classloading / jvm级别工作。

(它们实际上没有自己的JVM,但它们在加载类时会修改类,以允许它们是“可群集的”)

我们公司在JBossCache上有很多运气,我建议你查看一下。

答案 3 :(得分:-8)

<强>更新

我在OP消息中看到的是“好吧,我真的不知道我们需要什么(因此缺乏详细的要求),但可能是一些有趣的工具会神奇地解决我们所有的问题,已知和无法预料?将是 awesome !“

采用这样的架构方法,它不会飞。没有Teracotta的成功故事会改变这一点。

当它周围的社区可以取代商业支持时,OSS是有益的。假设那个人在生产中遇到问题。社区无法帮助 - 对于像这样的模糊产品来说太小了。服务器停机,业务处于危险之中。你看?您需要预先获得商业许可。没钱?好吧,那么你不是一个企业,可能不会成为一个(如果没有人愿意投资它)。

抱歉打扰你的白日梦。

<强> IMHO:

Terracotta是一种集群解决方案。大型企业级应用程序需要群集。大型应用程序意味着大预算。大预算意味着您可以从Terracotta获得商业许可。

换句话说:如果你没有预算购买它,它可能对你的项目没有好处。