91 Matching Annotations
  1. Dec 2022
  2. Nov 2022
    1. 01 业务架构是什么?业务架构是一个整体性的视角,它描述业务做什么What?如何交付利益相关者价值?如何沟通,以及如何组织的?换言之,业务架构是使用标准化视图对业务进行的抽象,它改进了各种计划和执行计划的结果。这些标准化视图包括一些核心元素:能力 Capabilities:企业做什么?信息 Information:使用什么词汇?组织 Organization:企业如何组织?价值流 Value Streams:企业如何向关键利益相关者提供价值?四个核心元素作为业务架构的基础,如果再加上扩展的几个元素,将为业务提供了更大的洞察力,包括:战略 Strategies:企业应如何竞争和发展?政策 Policies:什么决定了战略、投资和行动?利益相关者 Stakeholders:谁是内部和外部参与者?举措 Initiatives:如何实现目标和目的?产品 Products:为客户提供什么?度量 Metrics:业务表现如何?这几个核心元素独立存在的,每个视角都是以特定关注点来构建的,都有其各自的价值。但是当综合来看时,整个生态系统为企业提供了一组丰富的视角,它们向参与问题分析和解决的各种利益相关者提供显著的透明度。如果企业采用业务架构,组织最终会将会有越来越多的计划、影响分析、运营交付和解决方案部署活动转向依赖这些标准化的领域视角。

      这个业务架构的定义还是比较清晰的 借用番茄炒蛋图中的能力、组织、信息、价值链 4 个核心元素(视角)来综合定义什么是业务架构

  3. Jul 2022
  4. Jun 2022
    1. 回顾过去十年,数字化转型驱动着技术创新和商业元素的不断融合和重构,可以说,现在已经不是由商业模式决定采用何种技术架构,而是由技术架构决定企业的商业模式。

      现在已经不是由商业模式决定采用何种技术架构,而是由技术架构决定企业的商业模式。

    1. 业务架构包括企业的组织架构、业务域划分、业务能力地图、业务流程等内容。业务架构的核心是定义清楚整个企业是如何运作的,在运作过程中有哪些痛点问题,为不同的问题域划分清晰的边界,梳理出每个问题域的业务需求,并最终提炼出产品需求,为后续系统建设提供清晰明确的指导。
      • 业务架构,包括企业的组织架构、业务域划分、业务能力地图、业务流程等内容。

      • 业务架构的核心是定义清楚整个企业是如何运作的,在运作过程中有哪些痛点问题,为不同的问题域划分清晰的边界,梳理出每个问题域的业务需求,并最终提炼出产品需求,为后续系统建设提供清晰明确的指导。

  5. May 2022
  6. Apr 2022
    1. 微服务与单体架构最显著的区别在于,单体应用程序只是单个应用程序,而微服务则是许多小的应用程序协同工作;

      微服务与单体结构,最显著的区别在于:单体应用程序只是单个应用程序,而微服务则是许多小的应用程序协同工作。

      单体应用程序是单个应用程序; 微服务则是许多小的应用程序协同工作;

    1. 使用了消息队列的方案(具体实现见 comm/messagequeue 目录),把绝大多数非阻塞操作放到消息队列里执行。并且规定,基础组件与调用方之间的交互必须1. 尽快完成,不进行任何阻塞操作;2. 单向调用,避免形成环状的复杂时序。消息队列的引入很好的改善了死锁问题,但消息队列的线程模型中,我们还是不能避免存在需要阻塞的调用,例如网络操作。在未来的尝试中,我们计划引入协程的方式,将线程模型尽可能的简化。

      线程模型、 消息队列、 非阻塞操作、 基础组件、 调用方、 单向调用、 环状的复杂时序。

      消息队列的线程模型。

      阻塞的调用,如:网络操作。

      阻塞,与非阻塞的区分,是在于哪里?

    1. 以服务构建应用。 因为服务可以独立部署、独立扩展,服务也可以提供模块化的边界,并且不同的使用也可以使用不同的开发语言。服还可以以不同的周期进行管理。

      整体风格的系列原因,导致了微服务架构风格的出现——以服务构建应用。

      服务可以独立部署、独立扩展。 服务也可提供模块化的边界。(模块化的边界) 不同的服务,可使用不同的开发语言。 不同的服务可以不同的周期进行管理。

    2. “微服务架构”一词在过去几年里广泛的传播,它用于描述一种让分布式的应用软件系统进行独立演进的特别的设计方法。

      微服务架构,用于描述一种让分布式的应用软件系统进行独立演进的特别的设计方法。 它并没有非常准确的定义,但在业务模块、自动部署、端对端的整合、多语言支持和数据管理的分布式控制上,有着显著特征。

  7. Mar 2022
    1. "仅仅崩溃"软件(Crash-only software)指的是仅通过重新启动进行故障恢复的计算机程序,这样可以避免任何复杂的修复。

      维基百科

      现实世界总有问题的, 即使没有 bug 也会因为某些不知名的原因而崩溃, 这时候重启是最好的.

      Erlang 中的 let it crash

  8. Feb 2022
    1. NoSQL 数据库的问题在于,随着时间的流逝,你的简单模型不可避免地变得越来越复杂,然后它不再起作用。在过去的十年中,我已经意识到使用 RDBMS 数据库基本上是100%的正确选择

      Hacker News 读者

      当没想清楚的时候尽量选择 RDBMS, 之后根据去调整.

  9. Jan 2022