过去几周,我正在阅读不同的文章,出版物,博客文章等关于基于云的应用程序的通用软件架构模型;我也非常有兴趣了解你对此的想法。
通过我的阅读,我发现以下三种类型的软件架构在当前行业焦点中用于不同类型的基于Web的分布式应用程序。
MVC - 现在有很多基于它的框架,如Spring,Struts2,JBoos Seam,JSF,ASP.net MVC,Ruby-on-Rails,CakePHP,Zend,Django等等。微软的云计算平台Azure也为云中基于MVC的应用程序提供了良好的集成和迁移途径。
3层 - 架构模型代表了不同层和分布层的良好分离,因此从基于Web的应用程序的出现,它为软件架构师设计满足其需求的强大平台起到了关键作用。然而,随着MVC框架的出现以及它们的易用性使得3层架构成为许多人的第二选择。令人惊讶的是,Google的云平台AppEngine以这样的方式提供了他们的迁移策略,这些策略主要是传达“无状态计算层”和“有状态存储层”的清晰分离的信息,从而支持基于3层架构的主要基础。我发现像MS Azure这样的语句支持通用计算而不是像GAE支持的特定类型的应用程序。
基于SOA和REST的应用程序现在正以极快的速度出现,这主要归功于移动计算平台,面向服务的产品以及与分布式计算(如HTTP,XML,UDDI)中的通信的标准Internet协议的良好相似性。 WSDL和SOAP。 Facebook,Twitter和其他社交网络炒作等新兴应用程序大多使用RESTful架构模型用于他们的移动平台,未来的趋势也随着JAX-WS / RS,Jersey,Restlet,RestEeasy,微软WCF的增强使用而显示出稳定的焦点, Apache CXF和Axis2。现在,如果我们按照云计算原则来看,许多互联网编写者都在展示它是如何从SOA和SaaS发展出来的,但是没有明确提到这两个概念是如何相互集成和互操作的。同样,基于SOA和SaaS的应用程序如何能够迁移到云平台仍然不完全清晰可见。 “移动云计算”现在似乎出现在许多互联网页面中,但它实际上如何根据基于SaaS和Utility的计算工作,从软件架构师的角度来看,它仍然是未知的。
为此,我们现在有三种不同类型的建筑模型,它们都有一些相似之处,许多差异以及其他关键的大脑推理事实,但这些可以互操作以及如何将它们迁移到互联网巨人(如同Azure,GAE或AWS)云产品仍然不完全明显,并表明在这个资本研究领域热衷于将业务和技术整合在一起的更多头脑风暴。
在这方面听到你的声音有更多的例子,评论和解释以及批评:)真是太好了,因为我只是这个舞台上的新手,还在学习。
非常感谢....
答案 0 :(得分:5)
您的分类不公平。云应用程序中有许多架构需要更多调查。您可以查看this resource及其参考资料以获取更多信息。有关云的更多主题,请查看this page。它可能有所帮助。