2019云计算开源产业大会丨杨欣捷:浦发银行开源技术治理体系和实践
杨欣捷:大家好!我最早毕业时做的是数据库,当时是一个很美好的时代,用小型机、Oracle、F5等,没有开源软件时代,那时候做系统前后设计也不会想到开源软件,后来到了浦发银行以后往架构方面做,尤其是最近三年五年,发现要作出一个好的架构、一个可扩展的架构、一个处理大数据量的架构,怎么都避不开开源软件,大数据处理怎么都会碰到Hadoop这些东西,做一些高并发处理,怎么都会碰到一些容器云或微服务框架,开源软件成为一个绕不过去的问题。我行在去年成立了创新实验室,领导很重视开源方面研究工作,从去年开始我做开源治理方面的研究。 下面我详细介绍一下开源治理体系和经验。 因为我们是开源治理白皮书主要编制单位,我分享开源治理体系很多已经在中国信通院白皮书中有所体现,再加上之前赖总也介绍了他们的开源治理体系,我想把更多篇幅放到我对开源的理解上,治理体系讲得稍微快一点。 开源技术近二十年来,我们对它的认知发生了很大的转变,二十年前我还没工作,那个时候想到开源软件,总觉得是山寨商业软件,很自然的想法就是便宜没好货,免费的东西更是垃圾的。没想到现在说到开源软件,已经引领了技术创新,很多创新的领域都是开源在主导的基础软件架构。 二十年前说到开源软件,大家觉得是一种生产方式,是一种有别于封闭的立项,大家一起开发的方式,多通过互联网合作的软件生产方式。到今天,已经更多的是大家通过开源这种方式来完成这个市场抢夺的一种生态竞争的模式。 二十年前做开源软件更多是个人兴趣,很多大拿没什么事情做,纯兴趣做这个东西,现在比较大的公司,尤其是互联网公司、提供云服务的公司,从他们企业角度都花了大量精力做开源软件。 如图,整个基础软件栈从上到下,从云架构到操作系统、数据库、容器、中间件一系列东西,开源软件都已经占满了,开源软件在吞食世界。现在对银行来说已经不是用不用开源软件的问题了,这是肯定的回答,而是怎么用好开源软件。 RedHat的报告,开源软件在企业战略中的重要性,有40%的企业说开源软件是非常重要的,在企业市场份额逐步在上升,商业软件份额现在看起来比较多,很大程度是因为是存量系统。现在尖端的一些领域,如云计算、AI、大数据、区块链,开源生态已经是主流的生态。 开源软件对商业软件的优势(技术角度)。 这一块不是我自己想出来的观点,是从一本书里摘出来的观点,这本书也李建盛老师推荐了,大家有兴趣可以看一下。 开源软件对于商业软件优势,书中分了几个方面: 1.生态。云服务市场越来越大,一般基于开展软件构建的,MangoDB在修改协议,亚马逊为代表的云服务公司在吸他们血,正是如此也让这个市场起到促进的作用。 2.开源软件很多源于大型互联网公司,这些公司比商业软件公司更懂得客户需求,他们自己就有最好的客户场景。Oracle每年都开CAB客户大会,通过这种方式来反馈需求是比较慢的,开源软件是自己用,自己的需求最清楚,可以更快按照特殊的需求把这个东西做出来,所以他们有一个先发优势。 3.技术高速发展,快速适应市场的大背景下,架构选型中开发人员的话语权越来越大,一般情况下,预算不在开发人员手里,所以倾向于选择开源免费的软件。从技术的角度印证了为什么开源软件在近期相对于商业软件表现出那么大的优势和好的势态。 一开始做开源软件时,我自己会有一些内心的疑问,概括成两个悖论:分工悖论、分享悖论。 分工悖论:市场分工推动经济发展,经济发展的结果也必然是市场分工的细化;为何开源业态中,非软件公司为何投入大量资源研究和开发基础软件? 分享悖论:人类本性是追求个人利益最大化。为何开源业态中,大量的个人无偿分享其劳动成果? 我当时也被这两个困惑了,最普适的想法,开源也是人类经济活动的一部分,不可能脱离经济学的基本规律。这两个悖论有两个解释,一个是经济学大厦即将坍塌,还有一种是我对开源的理解不对。 分工悖论的解释。 在信息充分流动的条件下,市场最终会达到供需平衡(达到稳定态)。“最终”很重要,我们目前所处的时代远没有到最终平衡的时代,还在过程中,所以产品更新的速度跟不上市场需求的变化。这个不违背分工悖论,只是时间没有到。 软件生产方式利用互联网直接打通了需求和供给,产品能够在第一时间捕捉到市场的实际需求,利用各种社区资源迅速实现需求。 社会分工原则并未打破,只是市场模型并未处于稳定态。 我们更应该思考一个问题,市场什么时候到稳定态?我觉得永远不会到。“最终”是很泛泛的词,凯恩斯以前也说过我们都死了就是最终。所以我们不用考虑最终的问题,肯定是在我们活的时候还不会到最终。所以没有顶级IT实力的传统企业,拥抱开源,实际就是在自身有限的IT资源和力求快速应对市场需求的一个妥协。 相对而言,如果一切东西都自主开发,应对速度比开源更快,当然也是快于商业产品的模式。但IT人员的投入也是这么一个顺序,自主开发,什么都重新去造,投入很大。所以是市场需求和成本上的妥协。一般大家觉得用开源是省成本,我得出的结论,用开源至少对我们这种传统企业,并不是IT本身就投入很大的企业来说,并不省成本。 分享悖论的解释。 从开源项目角度来说,仅靠自身力量不足以维持产品长期的竞争力。 引入社区力量降低开发成本。 用极低的成本迅速占领市场,提供商业化订阅和支持服务来实现盈利。 相比于商业软件许可方式,这是一种低投入低营收的商业模式。 个人通过软件许可方式获利运作成本高,前期投入大,周期长。 开源工作成果有利于快速提升个人知名度和“身价”。可能不会自己把这个软件做出来去卖,最后演变成一个几百亿美元的企业,但至少个人知名度提升了,自己身价也提升的,对我自己来说也是获利的。 从这个角度来讲,开源并没有打破经济学的理性人假设,只是改变了软件的获利模式。 总结: 1.由此可见,开源业态特点能够解释分工悖论和分享悖论。不仅如此,正是这些特点,决定了即便是传统行业,要想快速应对互联网时代瞬息万变的市场需求,必须积极拥抱开源技术。 2.对于传统企业,拥抱开源获得更快速灵活的应对需求能力的同时,意味着整体IT投入的加大,开源的价值更多体现在“开源”上,而非“节流”上。 以上说的内容不排除在座有各位在公众号会看到,我没有剽窃别人的内容,那是我个人公众号,不一定能跟我联系得起来。后面可以咨询一下毕老师,公众号是否也搞一个许可证。 开源与风险。 在使用开源时,也会遇到很多使用开源中的风险,这些风险包括专利、著作权、许可证、收费、维护、服务、质量、安全等风险。 开源使用风险案例。 软件来源:非可靠来源的开源软件,被植入后门,造成重大数据泄露。关于putty、WinSCP等软件被植入后门的案例。 生命周期管理问题,用了开源软件以后,用了就用了,没有持续的管理流程,导致安全漏洞没有办法修复,导致数据丢失等等。告诉我们开源软件很好,我们要用,但是要好好地用,需要一套治理体系来把控。 浦发银行做这个事情挺早,在去年年底把完整的治理体系建起来了,而且我们治理体系不仅有这个体系,把相应平台都建出来了。我们认为治理体系主要包括以下五个内容: 1.开源治理的配套组织架构。没有组织架构,什么都做不出来。 2.开源治理配套流程制度。 3.软件的评估评价方法。 4.开源软件治理支撑平台。 5.开源金融行业技术应用社区。 开源治理四个维度就是四种风险的类,软件来源、合法合规、生命周期和漏洞管理。 组织架构。 (编辑:应用网_阳江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |