Java 云托管与托管托管

Java 云托管与托管托管,java,hosting,cloud,Java,Hosting,Cloud,关于云计算的大肆宣传似乎无法避免,但向新平台的实际过渡还需要许多讨论 从理论上讲,可以这样说: 云: 架构更改(您可能不安装任何您想要的内容) 学习曲线(由于上述原因) 无故障转移(因为故障已得到处理) 颗粒成本(每千兆赫或千兆字节支付) 即时可伸缩性(不是那么即时,但至少是透明的?)?低延迟 管理: 故障转移(取决于提供程序) 手动可扩展性(需要维护) 静态成本(无论您是否充分使用软件包,都由您支付) 更低的成本(仅适用于入门级软件包) 数据所有权(您可以) 自由(你有)?较低的延迟(取

关于云计算的大肆宣传似乎无法避免,但向新平台的实际过渡还需要许多讨论

从理论上讲,可以这样说:

云:

  • 架构更改(您可能不安装任何您想要的内容)
  • 学习曲线(由于上述原因)
  • 无故障转移(因为故障已得到处理)
  • 颗粒成本(每千兆赫或千兆字节支付)
  • 即时可伸缩性(不是那么即时,但至少是透明的?)?低延迟
管理:

  • 故障转移(取决于提供程序)
  • 手动可扩展性(需要维护)
  • 静态成本(无论您是否充分使用软件包,都由您支付)
  • 更低的成本(仅适用于入门级软件包)
  • 数据所有权(您可以)
  • 自由(你有)?较低的延迟(取决于提供程序)
假设上述内容正确与否;然而,逻辑上的立场是“视情况而定……”。。关于应用程序本身。 现在出现了一个隐藏的问题:您将如何评测您的j2ee应用程序,以确定它是否是云计算的候选应用程序;知道它是

  • 服务/功能数量相当大的应用程序(即servlet)
  • 依赖于一个复杂的数据库(即num.tables)
  • 不需要太多的媒体资源,主要是基于文本的

你在谈论什么样的云服务,DaaS?

架构更改(您可能不安装任何您想要的内容)

取决于:从“托管服务器”移动到平台(如GAE)可能是一种选择

学习曲线(由于上述原因)

如果您习惯于运行自己的服务器,那么AmazonEC2可能不是一个很大的学习曲线

无故障转移(因为故障已得到处理)

取决于:EC2->您必须自己滚动

即时可伸缩性(不是那么即时,但至少是透明的?)?低延迟 取决于:EC2->您必须为此计划/使用附属服务

“现在出现了一个隐藏的问题:您将如何分析您的j2ee应用程序,以确定它是否是云计算的候选应用程序;知道它是云计算的应用程序”

作为旁白,把这个问题明确化。把它作为这个问题的标题。把它放在问题的开头。如果可能的话,删除你所有的假设,把注意力集中在问题上

这就是我们要做的

  • 为您的“云”或“托管服务”安排致电一些供应商。不太多。一个或两个

  • 问他们支持什么。更重要的是,他们不支持什么

  • 然后,给出一个不受支持的特性的简短列表,查看这些特性的代码。如果它们不支持您需要的东西,那么您需要做一些架构工作。或者将它们从首选供应商列表中划掉

  • 对于优秀的供应商,编写一份试验性合同,让您在几个月内免费(或廉价)访问安装和测试。如果它不起作用,你就没付多少钱

  • “但是,当它可能不起作用的时候,为什么还要花那么多钱来主办呢?”


    什么费用?你可以花几个月的时间“研究”你的代码。或者你可以试着主持它。通常,“尝试主持”会在几天内找到答案。只需做这件事就可以省力。

    有很多云提供商,就我所见,主要有两种类型:

    • 支持云计算平台的公司(如亚马逊E2C、微软Azure)
    • 虚拟实例提供程序使您能够创建多个运行实例(例如RightScale)
    至于平台,请注意,关系数据库支持仍然很差,学习曲线也很长

    至于虚拟实例提供者,学习曲线非常小(您只需启动实例),但实例需要某种同步方式。。。对于复杂的应用程序,这可能不起作用


    至于你最初的问题:我不认为有任何标准的方法可以描述应用程序是否应该/可以移动到云端。您可能需要熟悉这些选项,将范围缩小到几个提供商,看看您从这些提供商那里获得的好处是否会对托管主机(您目前可能正在这样做)产生重大影响。

    我认为您必须关注以下几点:

     granular cost (pay per Ghz or Gbyte)
     instantaneous scalability (not so instantaneous, but at least transparent?) ? lower latency
    
    将应用程序更改为在云上运行将花费大量时间,但如果云不降低您的成本和/或您真的不需要即时/快速的可扩展性(典型的例子是电子商务应用程序),这并不重要


    在考虑了这两点之后。在我看来,你应该考虑的是
    依赖于一个复杂的数据库(即num.tables)
    ,因为根据它的“复杂性”,改变到云环境可能会非常麻烦。

    在某些方面,比较谷歌应用引擎(gae)和亚马逊ec2就像比较苹果和橙子

    使用ec2,您可以获得一个操作系统,无论是否安装了服务器软件(tomcat、数据库等;您的选择取决于您选择的ami)。有了ec2,您需要一个(或成为)系统管理员来保持系统的平稳运行。ec2上的负载平衡是您必须解决和实现的问题;我从来没有做过那部分。ec2的最大优势在于,您可以通过编程方式启动和关闭新实例,与常规web服务器提供商相比,只有在实例启动并运行时才需要付费。您可以使用此“自动旋转向上/向下”来实现负载平衡和故障切换。但是您必须执行(同样,我对这一部分没有经验)

    有了谷歌应用程序引擎(gae),所有的系统管理都会为您服务。是艾尔斯