gydtep 发表于 2021-10-25 08:18:17

“Software architecture refers to the fundamental structures of a software system and the discipline of creating such structures and systems. ” - 维基百科。

gydtep 发表于 2021-10-25 14:10:57

API 应该具备 SLA :API 作为服务间的集成界面,与系统的稳定性息息相关。SLA 应该作为 API 设计的一部分,而不是部署后再考虑。在分布式系统中,稳定性风险无处不在,通过 API 优先的设计模式,我们对独立的服务进行稳定性架构设计、容量规划;我们还可以对独立的 API 进行故障注入、稳定性演练,来消除系统性的稳定性风险。

gydtep 发表于 2021-10-25 18:53:00

互操作性。在现实世界中,事件无处不在,然而不同生产者对事件的描述却不尽相同。开发者希望无论事件是从哪里发出,都能够以一致的方式构建事件驱动的应用程序。

gydtep 发表于 2021-10-26 12:26:19

Logging – 日志(事件流):用于记录离散的事件,包含程序执行到某一点或某一阶段的详细信息。不但包括应用、 OS 执行过程的日志,还应包含运维过程中的日志信息,如操作审计等。

gydtep 发表于 2021-10-26 14:56:08

还是倾向于出现问题后,可以通过简单抛弃和替代进行恢复(Cattle)。云原生架构的建议是:允许失败发生,确保每个服务器,每个组件都能够在不影响系统的情况下发生故障并且具备自愈和可替代能力。

gydtep 发表于 2021-10-27 07:48:17

Kubernetes 作为容器的分布式编排调度系统,进一步提升了容器应用的可移植性。K8s通过一系列抽象如 Loadbalance Service, Ingress, CNI, CSI,帮助业务应用可以屏蔽底层基础设施的实现差异,灵活迁移。通过这样的能力,我们可以实现工作负载在数据中心、边缘计算和云环境的动态迁移。

gydtep 发表于 2021-10-27 10:53:44

云原生架构的建议是:允许失败发生,确保每个服务器,每个组件都能够在不影响系统的情况下发生故障并且具备自愈和可替代能力。这个设计原则的基础是应用配置和持久化状态与具体运行环境的解耦。Kubernetes 的自动化运维体系让服务器的可替换性变得更加简单。

gydtep 发表于 2021-10-27 16:58:38

在架构上,Java EE 是一个大的单体应用平台,拖慢了自身架构迭代的速度,跟不上时代的变化。由于Java EE过于复杂、沉重,在微服务兴起之后已经被大多数开发者所遗忘。

gydtep 发表于 2021-10-28 09:39:38

在软件架构层面中, FaaS 将复杂的业务逻辑拆解成一系列细粒度的函数,并通过事件驱动的方式触发调用。函数之间是松耦合的,可以通过如下两种典型的模式进行协同、组合。

gydtep 发表于 2021-10-28 16:45:58

上图是架构图,可以看到对外的服务提供了一个统一的SDK,然后集成到所有的外部服务里。在服务端,提供的服务可以大概分为API层和执行层。API层有两个集群 Frontend集群会负责控制流的介入,Tunnel集群负责数据。在执行层分为控制集群和计算集群,控制集群会负责资源管控,meta的管理,和权限管理这些功能,计算集群就负责实际的计算和存储。
页: 86 87 88 89 90 91 92 93 94 95 [96] 97 98
查看完整版本: 阿里云服务器1核2G低至76元/年