今天是新年的第一天,祝大家元旦快乐。从6月下旬自己开始在头条上进行写作,到今天已经半年时间,基本也保持每天一篇文章的节奏。在整个过程中也收获了一些粉丝,认识了一些朋友,参与了一些活动和讨论。在整个过程中也更加让我相信长期主义所带来的价值,在自己专注的领域持续的学习和实践,不断的思考和总结复盘,持续改进。 最近经常会收到一些私信,询问一些技术类问题,而实际上很多内容在我前面的文章都已经详细做过阐述,但是现在文章接近200篇,要快速的查找并不太容易。因此有必要对文章进行归类和整理,以方便大家查找和阅读。 经常看我头条号文章的应该比较清楚,整体技术类的文章还是围绕企业架构和信息化规划,SOA,云原生技术解决方案,数字化转型和中台建设等方面展开。同时也兼顾会写一些关于个人知识管理和思维方面的文章。坚持和专注长期主义者 有人会经常问我为何能够坚持和保持每天一篇的文章输出从不间断,在头条你看到的是我最近半年的文章写作。而实际上我从16年就开始在新浪博客写作,在知乎也有思维专栏,整个写作周期已经超过15年。任何事情都不会是一蹴而就的,是一个长期坚持和专注的过程。 要对我个人有所了解,可以先看以下几篇文章。 01我眼中的长期主义者孤独的行者 02无法变现但一直在路上个人十五年长期写作感悟 03长周期和持续积累三年来跑步带给自己的成长感悟 04职场年过四十被裁员无法破的学习曲线,可以破的成长定律 人在职场,我始终想强调一点就是持续不断的学习和成长,而且你要意识到你是在为你自己的将来学习和实践,不仅仅是得到应有的工作报酬,更加重要的是提升自己的技能和经验。 活着还是忙着等死?而真正的活着就是要不甘寂寞,打破熵增定律,突破自己的舒适区,而不是作茧自缚和画地为牢。思维和个人知识管理 思维和个人知识管理实际上是在非技术领域我思考最多的一个小领域。从10多年前关注个人知识管理,到最近几年对思维和问题分析解决层面的关注和总结。 作为个体成长,可以看到始终就是一个不断的学习实践,认识和理解事物,分析和解决问题的持续迭代过程,在这个过程中我们不断的积累自己的知识库,做事情的方法和模式。而以上这些都属于思维方面的内容。 既然类似创新都有TRIZ等科学的方法论和框架作为指导。那么思维同样也可以,研究思维首先就是要梳理清楚思维整体的框架逻辑,其次才是从上向下的展开各个子项的研究,最后再融合为一个整体。 因此在我发布的思维类文章实际都是围绕整体框架展开,即:主线:包括思维框架和思维逻辑两大方面内容分支:包括了学习方法实践,知识库积累,事物认知和决策,问题分析解决 以上即是我重点关注和归纳整理的思维方面的内容。 整个思维框架分解展开后我要阐述的内容就在上面部分。其中包括了学习方法模式,知识经验库积累,事物认知和决策,问题分析和诊断,最终解决和呈现逻辑几个方面的内容。进一步的延伸阅读指引如下: 01三层六阶段学习金字塔学习方法和模式 02思维究竟是什么思维的整体框架和逻辑 03思维究竟是什么思维的逻辑和模式匹配 04我是如此思考的思维整体框架和逻辑 05技术人员如果跳出盒子,实现思维和认知升级 06如何全面认识和分析事物从简单归纳到多维思考能力培养 07问题分析和解决逻辑麦肯锡七步成诗仅是开始 08个人知识管理培训分享 09个人知识管理培训总结和分享 10从表象到根源一个软件系统JVM内存溢出问题分析解决全过程 11碎片化工作和时间如何构建体系化知识库提升系统思维 数字化转型整体思考 对于企业数字化转型,关键词和热点太多,从消费互联到产业互联网,从智能制造到数字孪生,从信息化到数字化。因此要了解数字化转型首先要建立对其核心要素和框架的模型,比如上图,核心业务价值链还是体现在连接数据智能上,底层支撑又体现在技术平台业务中台建设上。 要理解数字化转型,建议先阅读我整理的核心要素和能力框架构建思考这篇文章,建立对整个数字化转型完整的知识框架结构。 00企业数字化转型核心要素和能力框架构建思考 01企业数字化转型传统架构到中台微服务 02传统企业数字化转型从消费互联到产业互联 03谈SAFe规模化敏捷框架助力企业数字化转型 04传统企业IT架构转型不是简单去追逐中台,微服务等热点 云原生整体解决方案 对于云原生,是我整个文章输出里面比重最大的部分,常说的微服务,DevOps,容器云等都可以纳入到云原生技术实践体现中。如上图,我们也构建了覆盖整个软件生命周期的云原生解决方案技术中台。在该图中可以更加清楚的看到各个技术组件所处的位置。 从阿里达摩院发布的2020年10大科技趋势中将云原生纳入,到华为最近发布了云原生2。0端到端解决方案,再到各大云服务厂商持续贡献到CNCF基金会开源项目,整个云原生发展如火如荼。 那么企业如何理解云原生,如何逐步迁移系统上云,如何构建一个私有云和公有云的混合云管理平台才是关键需要思考和总结的内容。 01云原生不是简单的微服务DevOps容器云集成 02对企业IT系统全部迁移公有云的演进路线思考 03读红帽Redhat云原生应用的构建之路白皮书 04对基于云原生解决方案的技术中台产品规划和架构思考 05你应该了解的Serverless无服务器架构和应用场景 06传统IT架构转型从SOA和微服务到云原生解决方案实践 07阿里华为腾讯三大主流公有云平台云原生解决方案对比分析 08从公有云到混合云青云,灵雀云提供云原生解决方案解析 09云计算和云原生服务商从云原生技术到云原生开源生态竞争 10对网易轻舟云原生软件平台的分析和思考 11构建从云原生到多云环境下的能力适配和支撑平台 12一文了解我国贡献给CNCF云原生基金会开源项目 13云原生技术实践关键要素和原则 14对阿里重磅发布的云原生架构白皮书的初步解读 15三大运营商联合华为等发布的《电信行业云原生白皮书》解读 企业架构和微服务规划咨询 对于传统企业架构规划,我们在多个大项目中均有实践,而今年的一个重要输出即是围绕中台建设和传统IT架构微服务化,对已有的企业架构规划方法进行了优化和重构,形成了新的微服务架构规划咨询方法论。 其核心点仍然体现在微服务如何拆分,API接口如何识别上。在这部分输出中,强烈建议大家阅读业务中台建设方法论对传统企业架构规划方法的改进一文。 01从企业架构到信息化规划,从现状调研到架构设计的核心逻辑 02业务中台建设方法论对传统企业架构规划方法的改进 03企业架构规划SOA服务架构设计和服务目录库规划实践 04SOA规划ESB服务总线体系架构和演进路线设计 05从微服务架构咨询到技术中台建设方案 06企业信息化规划核心逻辑和详细案例分享 07企业信息化规划建设和IT治理管控能力提升思路分享 08从埃森哲IT规划咨询方法论里究竟可以学习什么 09企业中台规划咨询和微服务架构建设实施方案分享 中台和微服务 我们对中台建设的整体知识体系重新进行梳理。即从动态生命周期和静态维度拆分两个方面来构建一个完整的知识体系架构图。 对于该图,很多地方还不是很完善,后续我对中台架构和建设的知识体系将基于该图进一步做细化和调整。比如横向分层,可以进一步拆分为资源层,中台服务层,应用层。对于业务层面也需要进一步拆分为组织,管理,业务流程几个方面。 但是从上面我们也基本可以看到完成一个中台建设所涉及到的业务规划,架构设计,开发实施,过程支撑方面的关键内容。这个关键内容仍然是围绕我前面提到的,即: 企业中台构建》业务规划设计(业务层面)云原生架构(技术层面) 对于业务规划设计方面,核心的知识体系仍然是结合SOA和云计算,微服务架构思想的企业架构规划和领域模型设计。在云原生架构层面,重点仍然是微服务架构,DevOps和容器云。 01从SOA架构思想到中台和微服务,太多的基础概念需要澄清 02从微服务基本概念到核心组件通过一个实例来讲解和分析 03传统企业应以业务驱动构建中台,最大化保留IT遗留资产 04数据中台核心概念理解了吗?我试着从最简单模型开始讲解 05中台规划中微服务粒度究竟应该如何划分?你可以从以下几点考虑 06微服务架构下如何解耦,对于已经紧耦合下如何重构? 07微服务下产品集成和集成测试框架流程 08传统企业微服务架构转型从问题分析到规划实施 09互联网中台思想和建设方法到传统企业为何水土不服? 10参加华南CIO大会:平台应用传统IT架构的微服务化改造 11企业IT架构转型中微服务架构实践中常见问题总结 12谈基于平台应用思想下的企业微服务架构转型 13单体应用到微服务架构转型实践过程总结 14企业中台建设成熟度和关键指标分析 15基于企业自建电商平台来思考中台和微服务架构演进 16微服务架构下的API接口驱动开发,设计和集成 DevOps持续集成和交付 对于DevOps属于云原生的一个关键要素,但是在云原生里面更多的是将其作为敏捷研发,持续集成和交付,团队和组织文化的改进。在我输出的DevOps文章中,一方面是对整个DevOps成熟度模型的学习和总结,另外一个方面是结合我们自己的DevOps支撑平台产品的研发和实践总结,其中又包括了敏捷研发,持续集成和交付,流水线设计,自动化测试,自动化运维等内容。 01DevOps最佳实践处理好敏捷研发,持续集成和容器云三者集成 02从敏捷开发到持续交付DevOps成熟度模型解析 03企业DevOps实施收益价值和难点解析 04企业DevOps过程实践中若干问题的思考总结 05对DevOps过程实践的一些思考和总结 06对DevOps流水线设计的优化和改进实践 07北京DevOps大会资料学习整理 08企业微服务转型和DevOps研发运维一体化方案思考 09谈AIOps基础从自动化运维到智能化运维 10GOPS2020全球运维大会深圳站DevOps相关材料学习 11自动化功能测试和接口测试工具整理 12从用户故事地图到Scrum敏捷研发管理 SOA参考架构和ESB总线 现在谈中台,微服务很多,但是可以看到核心还是SOA架构思想,云集中化思想。因此对于SOA架构思想,SOA规划方法,服务架构规划进一步理解是很有必要的。 具体在我今年出版的《SOA与大数据实战企业私有云平台规划和建设》一书中有详细说明可以参考,该书虽然成书时间比较早,当时还没有微服务的概述,但是里面谈到的平台应用的开发模式,组件化开发方法在当前仍然适用。 其次,虽然当前谈微服务比较多,但是企业传统IT转型到微服务会有相当漫长的一个时间周期,包括有些内部IT本身也不适合转为微服务架构,因此对于SOA集成平台和ESB总线,和微服务架构下的API网关,本身也会共存相当长一段时间。 01一文详细讲解从接口集成到SOA架构思想 02业务和流程驱动的SOA服务识别方法总结 03SOA服务架构规划从方法论到实践分享 04谈SOA和云计算关系和相互演进融合 05SOA和云计算企业私有云PaaS平台建设实践 06SOA和云计算企业私有云平台规划和建设实践 07IT系统和应用集成从SOA架构思想到服务架构规划设计 08技术咨询应该遵循什么方法?从SOA到EDA事件驱动架构研究 09ESB企业服务总线功能,需求和核心架构分析 10开源ESB服务总线产品试用和对比分析 11大型ESB服务总线平台服务运行分析和监控预警实践 12ESB总线接口服务运行日志存储和查询优化实践 13对ESB服务总线和API网关产品集成和融合分析 14大型集团ESB服务总线平台建设项目高可用性实践总结 15聊聊消息中间件的关键特性和问题总结 API网关和能力开放平台 对于API网关是整个微服务架构体系里面的一个关键技术组件内容,当前基本都是以开源API网关来构建自己的解决方案和能力开放平台。 API网关本身也是中心化的架构模式,但是这种架构模式可以很方面的通过各种自定义和可配置的插件来实现安全,流控,日志等服务治理能力。在ServiceMesh没有大面积采用的情况下,通过API网关来实现服务治理管控仍然是最佳的一种选择。 01一文详细讲解API网关核心功能和API管理扩展 02从能力开放平台到能力中台构建思考 03能力开放平台最大化体现企业中台对外价值 04开源API网关APISIX安装和初步验证 05对API网关注册和接入的接口安全管理总结 06微服务和API网关限流熔断实现关键逻辑思路 07开源API网关Kong基本介绍和安装验证 08微服务去中心化架构下为何还要用API网关? 09开源API网关Kong的管理平台Konga安装验证 10开源API网关Goku简介和简单安装验证 11通过API网关实现微服务管控限流,熔断和降级 SOA治理和微服务治理 对于微服务治理在前面已经谈到了实际上包括了微服务模块本书和微服务API接口治理两个方面的内容,而不能简单理解为API接口的治理。因此微服务治理应该进一步融入IT治理和SOA治理两个部分的内容。 如果重新给微服务治理一个定义,应该如下: 微服务治理是针对企业组织和业务目标,制订一套标准的管理,业务,技术,过程规范体系,实现微服务从需求,设计,开发上线,运行,下线的全生命周期管理能力。同时构建一套完整的度量指标体系,通过实时的日志和性能数据采集,持续的监控服务运行监控状态,并执行相应的限流,预警等管控策略,以确保微服务的持续健康,可靠和高效运行。 微服务治理概括来说,实际上关键包括两个部分。 即在微服务需求和设计期是如何进行微服务拆分,接口颗粒度设计;在运行期是如何基于度量体系进行监控并形成闭环持续优化改进。 01从传统服务链监控到端到端流程监控技术实现 02大型ESB服务总线平台服务运行分析和监控预警实践 03基于ESB和API网关的服务运行监控分析和实践 04通过API网关实现微服务管控限流,熔断和降级 05微服务架构下的高可用和高性能设计 06从ESB服务组合编排到NetflixConductor微服务编排 07微服务架构下分布式事务处理方案选择和对比 08从API网关的去中心化到ServiceMesh分布式服务治理 09从SOA治理到微服务治理,对整体框架构建的再思考 10谈ServiceMesh微服务治理在云原生解决方案中作用 数据治理和主数据 对于数据治理这块,主要是重新梳理了数据治理整体框架结构,数据治理体系本身应该包括数据管理体系和数据价值体系两个方面内容。 对于数据管理体系本身又应该围绕静态和动态两个维度来思考,在静态维度重点是数据对象和数据架构,而在动态维度重点是数据全生命周期管理。数据管理最终是将数据沉淀为资产开放和共性,让数据产生价值。 01从数据治理到数据资产管理数据治理框架再思考 02主数据管理平台解决方案和建设重点 03谈MDM主数据管理系统设计和实现关键点 04数据质量管理中的数据稽核平台建设 05谈智慧城市顶层设计和结合SOA和大数据的平台层建设规划 06集团大数据平台和用户系统建设方案总结和分享 07数据可视化监控大屏呈现和拓扑图绘制工具总结 08从商用报表谈自定义报表和可视化监控大屏设计 软件架构和软件工程 架构设计包括了功能性架构和技术架构设计两个部分的内容,功能性架构解决业务流程和功能问题,而技术架构解决非功能性需求等问题。两种架构都包括了动态和静态两个方面的内容,对于功能性架构中动态部分为业务流程驱动全局用例,用例驱动的用例实现等;对于技术架构中动态部分为架构运行机制,而静态部分为框架,分层等方面的内容。 当前在敏捷研发和微服务架构下,往往很多人都忽视了整体架构设计。 在这里我再次强调对于全新系统的构建不适合敏捷研发,其前提仍然首先要进行完整的业务建模和软件架构设计,确定微服务划分和关键API接口,然后才能够开始后续迭代开发工作。架构完整性,领域模型等将在微服务开发中越来越受到应有的重视。 01软件架构设计分层模型和构图思考 02一文讲解业务系统软件架构设计核心内容和逻辑 03软件架构师应走出技术狂热误区,锻炼核心全局思维能力 04对一个软件项目架构设计研发管理过程的评估和优化 05谈DDD领域驱动设计和建模 06对领域模型和上下文边界分析来划分微服务的再思考 07微服务架构设计实践总结和思考 08微服务架构下的高可用和高性能设计 09对高可用集群构建的思考 10业务系统非功能性架构和高可用性设计 再次祝大家元旦快乐,如果你在日常中台建设,微服务架构实践中有什么疑问也欢迎关注我后,私信给我留言,详细说明问题,我会选择有针对性的问题详细解答。 对于2021年的分享仍然将集中在云原生解决方案方面,同时更多会分享我们项目实际研发和实践的一些内容,供大家参考。