2009年10个必须知道的软件架构主题

开发 架构
在过去一年多,经过长时间的平静以后,企业软件架构领域终于又开始令人振奋,我们看到很多重要的新主题出现在潜在游戏修改者的早期主流部分,同时已经进入行业的边缘的一些创新正在开始创造一条新的道路。

主要变化是,架构师面对新的应用需求,比如可以重复使用的平台,开放API,可以即时支持全球分布,处理数百TB海量数据,以及数以千万用户的挑战的时候,在寻找新的解决办法。这些创新尤其在今天***的系统上得到验证,其运行面对独特的挑战:规模,性能,或者特性设置。这些软件的进步,跨过日常软件,企业系统,到互联网应用,新的移动设备和新兴的社会化网络应用。

应用架构的支柱类似关系型数据库模型,单块运行时run-times,和确定的行为,已经被非关系型系统,云计算,和新的以拉式为基础的pull-based 系统所挑战,一致性和数据完整性的重要性有时让位于正常运行时间和效率。

让我们不要忘记web 2.0方法,和在线应用和企业架构的设计模式已经越来越稳定。社会化架构,群众外包crowdsourcing,开放供应链open supply chains 已经在***的软件系统众成为规范,速度比预期快的多。

另外,SaaS的迅速发展,超越了传统商业应用的领域,大幅度进入云计算领域;移动网络的普及,无线技术的发展,虚拟化和便携能力的增强,让存储和应用发生了巨大的变化。Web 2.0网络提供的工具和协作性也将进入主流的企业应用,提供富有创意的沟通交互方式。

下面是2009年10个必须知道的软件架构主题列表:

1。云计算:这个概念目前非常火爆,但是概念不是那么清楚,涉及面从常规的主机到平台作为服务Platform-as-a-service (PaaS)。我在DZNET上详细定义了云计算,并对厂商进行了分类,云计算就是下一代的操作系统之战!

2。非关系型数据库:Tony Bain写一篇文章“关系型数据库已死?”虽然得出这个结论可能为时过早,但是很多数据库应用一开始更改使用非关系型数据库,尤其是文本的资源为中心的存储需求。新数据库,比如:CouchDB,Amazon SimpleDB,Drizzle(来自MySQL),Mongo,以及Scalaris 现在越来越成熟。

3。下一代分布式计算:JavaEye新闻以前曾报道过“Yahoo! 启动了世界上***的Hadoop生产应用”,分布式计算能够处理大量的超乎想象的数据能力。同时商业软件GridGain 和开源的 Disco 也在分布式运算领域发展强劲。

4。Web-Oriented Architecture (WOA):REST架构应用更加广泛,在此基础上包括数据代表,安全,完整,组合和分布,这样的应用更加自然,富有效率的建设基于互联网的应用。

5。Mashups:mashup是糅合,是当今网络上新出现的一种网络现象,将两种以上使用公共或者私有数据库的web应用,加在一起,形成一个整合应用。一般使用源应用的api接口,或者是一些rss输出(含atom)作为内容源,合并的web应用。Mashup概念已经融入SOA,为企业架构带来价值。我认为Mashup是下一个最主要的新应用开发模式.

6。Open Supply Chains via APIs:有越来越多的企业开始开放API,将填平传统IT应用和互联网应用之间的鸿沟。通过提供API开放供应链系统。

7。动态语言:动态语言类似Javascript, Perl, Erlang,以及动态语言框架Rails,CakePHP,Grails等都发展非常迅速。

8。Social computing:通过社会化开发的软件比非社会化开发的软件更加优秀,比如很多开源项目,Wiki等。

9:群众外包crowdsourcing 和 平行生产架构 peer production architectures:很适合部署到互联网的业务模式,通过互联网聚合群体的智慧和力量。

10。新的应用模式:随着Facebook和下一代移动应用的出现,widget流行,软件原子化趋势预示者微型应用的时代必将到来。不同的微型应用将嵌入到其他应用中,能够快速平行扩展。

 

【编辑推荐】

  1. Java之父点评热门技术趋势 Java使云计算更简单
  2. 详谈云计算时代DBA角色的转变
  3. 亚马逊云计算平台怎样改变传统软件开发
责任编辑:彭凡 来源: javaeye
相关推荐

2023-12-27 18:10:05

PyTorch工具框架

2017-08-21 17:25:57

数据科学家深度学习计算机视觉

2019-01-08 10:29:12

BeautifulSoPython第三库

2020-09-23 09:55:15

算法TensorFlowGithub

2020-04-14 09:26:43

开发工具Chrome

2012-06-27 09:36:37

软件开发软件开发

2014-03-14 09:13:35

Linux终端进程管理终端命令

2016-05-12 15:47:08

IBM大型机 LinuxONE

2021-08-13 22:42:14

微服务架构开发

2015-07-23 10:37:13

Linux命令

2016-11-02 08:47:07

DevOps技术IT

2009-03-26 09:12:30

软件架构师领域云计算

2020-03-19 15:30:08

JavaScript数组字符串

2011-05-11 15:28:05

2012-06-27 16:02:42

软件工程师开发

2015-04-15 10:50:06

综合布线

2020-04-28 10:03:12

前端开发Mac

2023-12-21 14:43:30

Python字典

2010-07-28 14:21:43

Flex

2021-01-29 10:07:31

大数据大数据技术
点赞
收藏

51CTO技术栈公众号