17

文 / 黄亮 王立杰


持续集成作为一种敏捷软件开发实践,已经被越来越多的开发者所接受。持续集成倡导开发团队频繁地进行系统集成——通常一天一次到数次,每次集成都能被自动编译和测试验证,从而能在最短的时间内发现问题,缩短开发周期,提高软件质量。

笔者面对的是具有十多年开发维护历史,的5个相互依赖产品,每个产品均超过百万行代码的复杂系统。集成本身涉及很多烦琐的手工操作,很难实现过程自动化。在实施过程中,受困于软件系统的历史遗留问题,而通常市面上的持续集成工具又不能满足系统的需求,让我们不得不着手开发自己的集成系统。经过近一年的持续努力,终于完成了系统集成的自动化,将集成频度从数周甚至数月集成提高到日集成,大大提高了生产效率。


集成的困境

OSS系统是我们一个具有十多年生命历程的复杂系统,多年来一直处于不断的开发和维护中,子产品的数目和系统的代码量也随着时间日益增长,集成的周期、发布周期也随之逐渐增长。OSS系统包含有5个需要集成的产品:ComLIB DB-ComData BrokerDataGenDataAgent,每个产品均有上百万行源代码和庞大的测试用例,产品可以单独构建,但运行时有相互依赖关系。OSS产品栈如图1所示,上层产品对下层产品具有依赖,部分产品栈亦可以组成一个应用系统,如DataGen+CommonLib可以组成一个应用系统,DataBroker+ DBCom+CommonLib也可以组成一个应用系统。 阅读全文 »

标签:
阅读:4,388 次
06

2010年8月5日,在《程序员》杂志记者应邀出席的“IBM智慧系统巡展”北京站活动中,IBM信息管理软件首次深入解读了IBM“智慧系统(Smarter Systems)”战略,发布了一系列针对不同工作负载而定制的工作负载优化系统,来帮助用户更加迅速地从海量数据中析取重要信息,预测新兴商业趋势,抓住机遇并避免风险。此外,IBM还发布了与北京嘉和美康信息技术有限公司基于IBM“智慧系统”开发的一体化电子心电图管理系统。这是继IBM发布“智慧系统”战略、IBM信息管理软件发布IBM pureScale应用系统和IBM智慧分析系统两大工作负载优化系统之后,IBM再次针对工作负载优化(Workload Optimization)市场的发力之作。 阅读全文 »

标签:
阅读:1,072 次
20

记者 / 司洋


几乎每个月,迈奔灵动科技有限公司创始人谈毅,都要在洛杉矶和北京之间来回奔波。这种空中飞人式的生活看起来真让人难以承受,但是谈毅却乐在其中。因为他体验到了成功的喜悦,迈奔灵动开发的客户端、视频播放和即时通讯等几款软件,已经被来自美国、加拿大和澳大利亚等国的数十万用户下载使用。他创办的Android中文论坛——机锋网目前有注册用户23万,日发帖量1万帖,发展势头良好。

《程序员》记者第一时间采访了迈奔灵动的CEO谈毅先生,让我们一起去了解迈奔灵动创业背后的故事。


iPhone中窥见的商机

20076月,iPhone在无数人的引颈企盼中在美国地区正式上市,正在美国读MBA的谈毅成为了排队买iPhone的第一批人。谈毅说:“iPhone给我带来了前所未有的手机使用体验,使我意识到手机也可以具有像PC一样的功能,移动互联网发展空间巨大,商机无限。

谈毅在出国前一直从事网游方面的工作,堪称网游方面元老级的开发者,他早在2006年的时候就断言网游已经发展到了红牌产业,很难再有新的机会出现。而且网游行业是高投入、大规模、高风险、高产出的产业,很难再有创业公司上市,这对于有创业想法的谈毅来说,绝对不是一个好的选择。

面对iPhone的上市,谈毅敏锐地察觉到,在未来,将是移动设备和互联网合二为一共同发展的天下。自此,谈毅开始密切关注移动互联网的发展。 阅读全文 »

标签:
阅读:4,634 次
20

/熊军


移动应用泛指面向各种移动终端设备的嵌入式系统应用软件,这里的移动终端主要包括PDA、功能手机(Future Phone)、智能手机(Smart Phone)MID(Mobile Internet Device)等。


Palm OS曾经的独步天下

Palm V和同步底座

Palm V和同步底座

移动应用的开发,虽然早在上世纪八十年代就有PsionEPOCAppleNewton试图打开这一独特市场,但真正成功的,却是3comPalm OSPalm OS在上世纪九十年代曾经有高达90%以上的市场占有率,拥有数十万的开发者队伍,并有数万款应用软件,采用其作为操作系统的PDA一度总销量达到数千万,而Palm IIIPalm V以及Treo系列都堪称移动终端的经典之作。但Palm OS命运坎坷,其所有权短短几年数度易手,最后被日本的浏览器厂商爱可信收购,而爱可信新推出的Web OS则很难看到Palm OS的影子,Palm OS也很难再现昔日雄风。

Palm OS盛极一时的年代,作为中国的开发者,比较知名的有杜永涛(外挂中文系统CJK OS的开发者)、UGLEE(巨硬输入法的开发者),但由于拥有Palm OS的公司都不是太重视中国市场,Palm OS的中文应用没有形成规模。 阅读全文 »

标签:
阅读:6,930 次
20

文/ 刘铁锋


从2008年底开始,我就在Android上进行程序开发探索。随着时间的推移,我越来越不敢妄自预测或者假设程序创意一定会成功,更多地发现用户的期望以及需求和事先预想很难一致。在一年半的开发过程中,尝试了各种不同的方法和思路来进行程序创意规划和试错。至今,依然失败的教训居多,侥幸成功的很少。因此,我将在本文中分享所经历的创意过滤经验以及失败教训。


思路转换的失败

在转入Android开发时,我的相关工作经验都是在大型基础平台上做程序开发。针对的用户群体动辄就是全球目标用户,在商业判断和分析上,最基础的一个考量就是用户群体和业务模式的总量的收益是否足够大,对用户群体的研究和商业判断分析完全根据市场分析报告和数据来做判断。因此,不可避免地在程序创意思路上会沿用以前的工作思路和分析方法。

在考虑Android上的创意的同时,不自觉地就考虑和分析了如下几个方面的问题:

1. 是否为用户所必需?

2. 技术上是否领先?

3. 程序的粘性是否足够?

4. 用户群体是否足够大? 阅读全文 »

标签:
阅读:17,459 次
16

——专访汤森路透集团企业架构师刘晓晖


记者 / 郑柯

汤森路透集团企业架构师刘晓晖

汤森路透集团企业架构师刘晓晖

说起来路透,很多人知道世界四大通讯社之一路透社,却并不知道它背后的路透集团在2008年4月与加拿大媒体巨头汤姆森集团合并,成为汤森路透集团,英文名Thomson Reuters,一跃成为全世界占有市场份额最多的金融信息服务提供商。

2006年,路透集团在中国北京中关村软件园成立了软件研发中心,目前已有700余人的研发队伍,负责研制、开发、维护汤森路透全球金融系统的数据采集、处理、发送任务,完成了纽约证交所,纳斯达克等交易所的升级与软件移植,欧共体多市场的金融报价系统。除了金融市场战略事业部,集团还拥有法律事业部,税务财务事业部,科学研究事业部,医疗健康事业部,汤森路透集团为全球上百万的专业人士提供高质量和智能化的信息服务,北京的软件研发中心现致力于为集团旗舰产品的研发做出贡献。

刘晓晖,是汤森路透软件研发中心内资深的企业架构师。1991年开始进入IT行业,多年来扮演过程序员、团队主管、经理等各种角色,最后成为架构师,也有六七年的时间了。


什么是架构?

在整个采访过程中,刘晓晖多次提到“架构的基本元素”。我们的谈话,也就先从“什么是架构”开始。刘晓晖指出:“虽然不同公司对架构会有不同的定义,但是说起来架构,总是会有一些共同的元素,总是要涉及到结构、各个组成部分之间的交互关系,以及这些组成部分跟外界的交互关系。除此之外,还有一些相对来说不太明显的东西,比如一些设计标准,应该遵循的各种规范等等,它们也属于架构的元素,就像我们这栋办公楼的装修,就非常有Thomson Reuters的一贯风格。只要是Thomson Reuters的办公室,不管是在伦敦、新加坡,还是总部,装修风格都非常像。架构最终是要服务于具体的业务要求。” 阅读全文 »

标签:
阅读:7,230 次
07

/简朝阳


随着信息量飞涨,信息的存储成为了这个时代至关重要的一项技术。如何来保证数据存储技术能够适应信息量的增长速度和我们对信息的高度依赖,成为一个非常重要的课题。本文将从数据库架构的层面,通过以开源的数据存储软件来构建分布式数据层的思路,期望实现一个低成本的高可用可扩展的数据层架构。


传统数据库架构

纵观各传统商业数据库软件,多以集中式架构为主,鲜有以分布式为设计理念的架构。这些传统数据库软件的最大特点就是将所有的数据都集中在一个数据库中,依靠大型高端设备来提供高处理能力和扩展性。

集中式数据库架构在扩展性方面主要依赖于主机和存放数据的存储设备的扩展能力,也就是说依赖硬件本身的纵向扩展能力,很难做到较好的横向扩展。而其可靠性也同样是以硬件设备为依托,主要通过Share Storage的方式来实现。如大家所熟知的传统商业数据库代表厂商Oracle的RAC,就是一个非常典型的Share Everything 的集中式架构。

我们可以通过图1来简单地描绘一下传统数据库的典型架构:传统架构在主机端大多通过两台主机共享存储设备,平时其中一台主机使用存储通过数据库软件来管理。这样的架构只能有一台主机(RAC除外)上的数据库能够提供服务,另一台主机只能是作为热备冗余,不能启动数据库实例提供服务。所以,其处理能力就完全取决于这台主机的最大扩展能力,很难通过增加主机数量来增加处理能力。而单台主机的扩展能力毕竟是有限的,即使是某些厂商的大型机,同样也有其扩展限制。此外,传统架构对高端设备的依赖,无疑将直接导致系统成本的大幅度增加,甚至可能会导致系统被主机和硬件厂商所“绑架”,不得不持续增加投入成本。 阅读全文 »

标签:
阅读:6,308 次
13

文 / 褚诚云


在这篇文章中,我们将着重探讨云计算中与安全相关的各类问题,例如云计算供应商采用的安全模式,企业在使用云计算平台中应该考虑的安全风险和采取的安全策略等。

需要强调的一点是:本文涉及的“云安全”并非是目前国内反病毒业界中非常热门的“云安全”、“云查杀”这类反病毒技术。“云安全”反病毒技术只是将云端的计算和商用模式应用到反病毒领域。换句话说,是云计算在一个特定领域的应用。

本文讨论的是通用意义上的云安全(Cloud Security)。它的影响范围和对象要比“云安全”反病毒技术广泛得多。云安全涉及的不仅仅是云计算中的相关技术,如虚拟化技术等的安全问题,而且还需要全面考虑和评估云计算所带来的潜在的技术、政策、法律、商业等各方面的安全风险。


云计算中的安全风险

云计算的服务和计算分配模式

按通用的理解,云计算是基于网络,特别是基于互联网的计算模式。在云计算模式下,软件、硬件、数据等资源均可以根据客户端的动态需求按需提供(on-demand)。某种意义上,云计算的运营模式类似于电力、供水等公用设施,只不过它所提供的服务是计算资源。 阅读全文 »

标签:
阅读:3,014 次
04

文 / 柯博文


2010年最热门的电子产品是什么?目前记录看来就是第一天销售30万台的Apple iPad。因为太超过预期的热卖了,让苹果电脑临时决定将出货到其他国家的时间延后一到五个月。这个商品到底有何特殊的地方?让我们历史退到2000年10月 Comdex展览,当时Microsoft比尔•盖茨的在演说中举起Table PC,于是所有的目光便集中在这一个高科技的板子:可以用笔在板子上画画,并写下文章,如此一个神奇的板子。虽然这样的创新想法由在HP制造成真,却因为大尺寸的触屏不便宜,加上不到2小时的电池、价格比笔记本电脑高……后面的事实大家都知道。


iPad 的硬件特征

没想到在2010年,以iPad为标志,这样的想法又卷土重来了 。从硬件的角度来看,它主要有如下功能设备:

  • 机器角度器
  • GPS位置
  • 外加设备装置
  • 点对点的蓝牙无线连接
  • Wi-Fi或 Wi-Fi加3G 阅读全文 »
标签:
阅读:3,531 次
02

文 / 胡振波


产品是为业务而定制的,一个Web应用是对一个业务模型的Web实现。更详细一点的描述就是:Web应用是业务模型在Web—基于HTTP的—技术平台上的实现。这句话有两个要点:一是基于HTTP的Web技术平台,二是业务模型的实现。

我认为,一个高质量的Web应用设计至少应该满足两点:第一,应用设计遵循Web技术平台的特点;第二,应用设计“吻合”业务模型。

只有符合以上这两点,Web应用才可能是可用的、可靠的和安全的,Web应用才可能具备良好的扩展性和可维护性。

下面分别来谈谈这两点。


遵循Web技术平台的特点

HTTP的无连接无状态性

HTTP协议产生于互联网。互联网应用往往面对数量巨大的用户,所以保持连接对服务器来说是不能承受之重。加上互联网应用具有“间歇性”的特点,所以HTTP被设计成“短连接”:即发出请求时进行连接,完成响应后立即释放连接。

但是商业需求需要Web应用具有“连接性”和能够“维护状态”。比如一个客户购买保险单的流程:填写基本信息页面→选择产品页面→填写具体信息页面→付款页面→确认页面。从用户的角度来说,整个流程是一个“保持连接,状态变迁”的过程。HTTP是无状态的,所以Web应用会通过很多辅助的技术来完成“有连接有状态”的模拟,这其中有服务器端的Session和客户端的Cookie、URL等。

但这个跟我们要谈的Web应用质量有什么关系呢?关系很重大,因为HTTP的无状态性决定了状态维护的重要性。状态需要具备有效性、一致性、完整性和安全性,失去其中任何一点,Web应用都是“不可用”的。 阅读全文 »

标签:
阅读:8,691 次
preload preload preload
京ICP备06065162