首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏小白晋级大师

    分布式系统架构2:服务发现

    1.概念服务发现指的是分布式系统中,服务实例动态注册自己的信息到注册中心,其他服务能发现这些实例的位置,实现服务间通信。为什么需要服务发现?对于分布式应用来说,服务发现不是可选项,而是必须的。 主要目的是让服务实例能相互识别和通信,确保系统在动态扩容、缩容和故障恢复时仍能正常运行。 2.组成由注册中心和消费者组成注册中心Service Registry:服务实例将自己的元数据(IP、端口、健康状态等)注册到注册中心。 适用场景:微服务架构中,服务实例与注册中心直接交互示例:Eureka:Spring Cloud中,服务通过 @EnableEurekaClient 注解实现主动注册。

    44110编辑于 2024-12-16
  • 来自专栏JavaEdge

    高可用系统架构(2)-Hystrix分布式系统高可用

    1 是什么 在分布式系统中有时候某些服务出现故障很正常。 Hystrix可以让我们在分布式系统中对服务间的调用进行控制,加入一些调用延迟或者依赖故障的容错机制。 通过这些方法帮助我们提升分布式系统的可用性和稳定性。 2 发展史 NetflixAPI团队从2011年开始做一些提升系统可用性和稳定性的工作,Hystrix就是从那时候开始发展出来的。 3 设计哲学 Hystrix是为了保证分布式系统的高可用性: 对依赖服务调用时出现的调用网络延迟和调用接口失败提供控制和容错保护 在复杂的分布式系统中,阻止某一个依赖服务的故障在整个系统蔓延 提供fail-fast 和快速恢复 提供fallback降级 支持近监控、报警以及运维 (1)阻止任何一个依赖服务耗尽所有的资源,比如tomcat中的所有线程资源 (2)避免请求排队和积压,采用限流和fail fast来控制故障

    41630编辑于 2022-11-30
  • 来自专栏EdisonTalk

    5分钟了解系统架构设计(2

    本质论 架构设计的主要目的是为了解决复杂度带来的问题。 从功能复杂度来看,主要解决的是业务发展带来的系统耦合、开发效率缓慢问题。 从非功能性复杂度来看,主要解决的是高性能、高可用、高扩展性等需求。 下定义 软件架构指软件系统的顶层(Rank)结构,它定义了系统由哪些角色(Role)组成,角色之间的关系(Relation)和运作规则(Rule)。 Relation 关系: 指软件系统的角色之间的关系,对应到架构图中其实就是连接线,角色之间的关系不能乱连,任何关系最后都需要代码来实现,包括连接方式(HTTP、TCP、UDP 和串口等)、数据协议(JSON 实际工作中,Rank、Role 和 Relation 都是通过业务架构图 和 系统架构图来展示的,如下所示:  业务架构图  系统架构图 Rule 规则: 指软件系统角色之间如何协作来完成系统功能, 一般通过系统序列图来展示: 打比方 软件架构设计类似于大自然“设计”一个生物,通过演化让生物适应环境,逐步变得更加强大。

    52610编辑于 2022-12-16
  • 来自专栏DDD

    架构架构2

    对于这两个问题,之前也总结过一篇《架构架构师》[1],再结合他的专栏文章和视频,补充一下 架构 李运华给架构的定义:软件架构指软件系统的顶层结构,缩句成架构指结构,而结构的修饰语蕴含了太多东西,抽象不够直白 这个定义里面蕴含了作者介绍的系统和子系统、模块与组件、框架与架构三组常见的概念 系统泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独完成的工作的群体。 从逻辑的角度来拆分系统后,得到的单元就是“模块”;从物理的角度来拆分系统后,得到的单元就是“组件”。 划分模块的主要目的是职责分离;划分组件的主要目的是单元复用。 ,得行多少路,抽象了多少回,才有的认知,所以我也不打算靠记忆了,不过对于模块和组件的认知很独到 虽然架构定义众家纷说,但对于如何描述架构还是有共识的,那就是“4+1视图”,在《架构架构师》[2]也描述了 这个过程,回顾最近几个系统设计的确是这样的 1.业务方提出一个业务,刚开始可能只是个目标,轮廓2.与业务方、产品不停的交流,交流得越深入,需求就越明确3.理解业务并明确需求后,划分模块,不管是传统画ER

    56210发布于 2021-03-23
  • 来自专栏架构之家

    B2C电商系统产品架构:全局分析系统定义与职责

    本人在过去七八年的职业经历中,从事的都是复杂业务的解决方案,更多聚焦在电商系统上下游,所以电商系统产品架构也算我的产品领域之一。 在接下来的时间内,我单独开启一个系列文章来讲整个电商系统的各种系统架构,核心目的还是总结提升自己。 刚开始写,我也定几个原则或目标,这样会比较有意思(写不了会丢人……)。 【原则1:一图一文】即每篇文章的讲解,会核心围绕一个架构图来讲解,文章篇幅较短,只描述核心。 【原则2:写满100篇】就暂定我要用100篇文章描述整个电商系统的各个系统,每个系统会在不同结构化层次展开写一些重点设计; 正文 第一篇文章,我就先来描述下B2C电商(还有更多其他电商形态后续再说)的全局系统组成 ); 【供应链体系】 供应链局限在B2C交易更多是指采购系统(APS)、订单管理系统(OMS)、仓储管理系统(WMS)、配送系统(3PL/TMS),往大了说就需要跟进销存拉齐来整体对资金和货物进行调度和管理

    1.2K40编辑于 2022-07-12
  • 来自专栏AI系统

    【AI系统】推理系统架构

    推理系统架构是 AI 领域中的一个关键组成部分,它负责将训练好的模型应用于实际问题,从而实现智能决策和自动化。 在本文中,我们将主要以 NVIDIA Triton Inference Server 为基础深入探讨推理系统架构的各个方面。 本文将以 Triton 为例,介绍推理系统架构和实现原理。Triton 接入层Triton 通过提供多种接入方式,支持不同场景下的模型推理需求。Ⅰ. HTTP/REST 协议支持HTTP/REST 是一种广泛使用的网络通信协议,它基于 HTTP 协议,使用 RESTful 架构风格。 资源高效利用:多后端架构使得 Triton 能够根据模型特性和硬件资源情况智能选择最合适的推理引擎。

    1.6K10编辑于 2024-12-02
  • 来自专栏ADAS性能优化

    Android 系统架构

    Big picture GFX 架构 Video playback Drm video Camera Audio APP vs windows Binder Message Normal Unix tasks ○SCHED_BATCH: Batch (non-interactive) tasks ○ SCHED_IDLE: Low prioritytasks EAS 中断系统

    76620编辑于 2022-05-13
  • 来自专栏知识图谱

    JanusGraph系统架构

    JanusGraph的模块化架构使其能够与各种存储,索引和客户端技术进行互操作; 这也使得JanusGraph升级对应的组件过程变得更加简单。 JanusGraph标配以下适配器,但JanusGraph的模块化架构支持第三方适配器。 高层JanusGraph架构和上下文

    1.7K10发布于 2018-11-24
  • 来自专栏云计算linux

    Hbase系统架构

    3.1 系统架构 HBase 系统遵循 Master/Salve 架构,由三种不同类型的组件组成: Zookeeper 保证任何时候,集群中只有一个 Master; 存贮所有 Region 的寻址入口;

    37010编辑于 2024-12-19
  • 来自专栏微服务

    支付系统架构

    大部分公司,只要想赚钱,就得上支付系统,让用户或者客户有地方交钱。 当然,公司发展的不同阶段,对支付系统的定位和架构也不同。 一般来说,这个系统仅限于为公司内部的业务提供支付支持,并且和业务紧密耦合。   2、支付服务:支付作为一个开发的系统,为公司内外部系统、各种业务提供支付服务。 支付的典型架构 所以支付的坑还不少,我们先看看互联网的头牌们是如何设计支付系统的? 先看看某团的: ? 再看某Q旅游公司的的: ? 对比下某东金融的: ? 最后看看业界最强的某金服金融的: ? 2、接口层:和各相关系统对接的接口,其中最重要的是和支付渠道对接的支付网关。   3、引擎层: 包括统计分析、风控、反洗钱、信用评估等在后台运行的各个系统。    这其实也是普通互联网应用系统架构,没有什么特别之处。比如微服务如何体现,如何满足性能需求等,在这个视图中无法体现出来。

    2.4K12发布于 2018-08-01
  • 来自专栏program

    Android 系统架构

    首语 由于工作内容的转变,使得我向Android系统方向转变,对于一个Android系统工程师,了解Android整个系统架构是必然的。 推荐Android系统干货博主:Gityuan 系统架构 Android系统架构分为五层。从上往下依次是应用层、应用框架层、系统运行库层、硬件抽象层和Linux内核层。 支持多种常用的音频、视频格式录制和回放 SQLite 轻型的关系型数据引擎 SGL 底层的2D图形渲染引擎 SSL 安全套接层,是一种为网络通信提供安全及数据完整性的安全协议 Free Type 可移植的字体引擎 native 本地库 nfc-extras NFC相关 obex 蓝牙传输 omapi OMADP(Open Mobile Alliance Device Provider)的API接口和类库 opengl 2D AOSP 系统架构

    1.5K61编辑于 2023-11-06
  • 来自专栏个人分享

    Hadoop系统架构

    一、Hadoop系统架构图 ? Hadoop1.0与hadoop2.0架构对比图 ? YARN架构: ResourceManager –处理客户端请求 –启动/监控ApplicationMaster –监控NodeManager –资源分配与调度 NodeManager –单个节点上的资源管理 步骤2 ResourceManager 为该应用程序分配第一个Container, 并与对应的NodeManager 通信,要求它在这个Container 中启动应用程序的ApplicationMaster

    2.1K30发布于 2018-09-06
  • 来自专栏Android 进阶

    Android 系统架构

    Android 系统架构分为五层 从上到下依次为应用层、应用框架层、系统运行库层、硬件抽象层与Linux内核层。 应用层 应用层:系统内置的应用程序与非系统的应用程序,负责与用户的直接交互。 Surface Manager - 对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。 Apple Safari背后的引擎就是WebkitSGL - 底层的2D图形引擎 SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。 硬件抽象层 位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化,保证硬件厂商的知识产权,隐藏特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台进行移植。 系统安全性、内存管理、进程管理、网络协议栈和驱动模型等都依赖与该内核。

    1.2K10发布于 2019-12-26
  • 来自专栏Java后端开发博客

    HBase系统架构

    # HBase系统架构 客户端 ZooKeeper HMaster RegionServer Hbase相关概念 逻辑模型 物理模型 实际存储方式 HBase是一个高可靠、高性能、面向列、可伸缩的分布式数据库 HBase的系统架构包括客户端、Zookeeper服务器、HMaster服务器、和RegionServer服务器这些组件。 # 客户端 HBase系统的入口 客户端是任务的发起者;它是整个储与管理HBase系统的入口,使用者直接通过客户 端来操作Hbase。 系统容错:每个RegionServer在加入集群时都需要到Zookeeper中进行注册,创 建一个状态节点,Zookeeper会实时监控每个RegionServer的状态。

    1.4K30编辑于 2022-12-25
  • 来自专栏全栈程序员必看

    业务架构浅谈_业务架构系统架构

    商品发布是一个业务属性很重的系统,承载了诸多业务(业务多的围起来可以绕地球一圈)的商品发布功能。 业务需要的组件 = 业务定制组件 + 需要的平台通用组件 2. 使用微内核设计,对系统进行升级,只要用新模块替换旧模块,不需要改变整个操作系统。 微内核技术源于操作系统,但是在互联网产品“平台化”的大浪潮之下,这个技术得到了广泛的应用。    系统启动时,程序扫描出所有实现了SPI接口的插件,并集成到系统中对外提供服务。当新业务需要接入时,定义好一个业务身份,同时实现需要的SPI接口,即可完成业务的接入,同时做到业务的隔离。 六、 结语   架构不是设计出来的,是演进而来的。演进式架构才有顽强的生命力。从Xsell 到 XPF1 XPF2 XPF3, 每个版本我们都解决了前一个版本的痛点同时往前看半步。

    1.4K41编辑于 2022-11-07
  • 来自专栏扯编程的淡

    搞定基于go-zero微服务架构的博客系统(2)

    Go-Zero是一个基于Go语言的微服务框架,它提供了许多功能和工具,包括代码生成器。使用Go-Zero的代码生成器可以快速生成接口的定义和实现。

    36500编辑于 2023-12-16
  • 来自专栏迁移内容

    Ambari系统架构

    一、Ambari系统架构 Ambari框架采用的是Server/Client的模式,主要由两部分组成:ambari-agent和ambari-server。 二、Ambari-agent内部架构 Ambari-agent是一个无状态的,其功能分两部分: 采集所在节点的信息并且汇总发送心跳发送汇报给ambari-server。 四、Ambari-web内部架构 Ambari-web使用了一个流行的前端Embar.js MVC框架实现,Embar.js是一个TodoMVC框架,它涵盖了现今典型的单页面应用(single page (2)、将脚本和模板封装进common.js/AMD模块里,链接脚本和样式。 (3)、为链接文件生成源地图,复制资源和静态文件。 (4)、通过缩减代码和优化图片来收缩输出,看管你的文件更改。 (5)、并通过控制台和系统提示通知你错误。

    2.3K10编辑于 2022-12-01
  • 来自专栏Java技术进阶

    系统架构】-如何评估软件架构

    ,它充分利用系统相关人员的经验和知识,获得对架构的评估,其缺点是很大程度上依赖于评估人员的主观推断。 基于度量 该方式建立在软件架构度量的基础上,首先要建立质量属性和度量之间的映射原则,即确定怎么样从度量结果推出系统具有什么样的质量属性;然后从软件架构文档中获取度量信息;最后根据映射原则分析推到出系统的质量属性 基于场景 该方式由SEI首先提出并应用在架构权衡分析法(ATAM)和软件架构分析法(SAAM)中,它是通过分析软件架构对场景(也就是对系统的使用或修改活动)的支持程度,从而判断该架构对这一场景所代表的质量需求的满足程度 架构权衡分析法-ATAM ATAM在SAAM的基础上发展起来,主要针对性能、实用性、安全性和可修改性,在系统开发之前,对这些质量属性进行评价和折中。 1、整理场景 2、对场景进行求精 3、确定场景的优先级 4、分配效用 5、形成策略-场景-响应级别的对应关系 6、使用“内插法”确定期望的质量属性响应级别的效用 7、计算架构策略的总收益

    1.5K30编辑于 2022-12-02
  • 来自专栏【程序员Aion】带你去考证

    系统架构设计师|关于系统架构(上)

    前言从本篇开始,梳理关于软考的「系统架构设计师」的文章,如果不对,还望指出。1.1 系统架构系统架构系统的一种整体的高层次的结构表示,是系统的骨架和根基,其决定了系统的健壮性和生命周期的长短。 系统架构设计的目的是对需要开发的系统进行一系列相关的抽象,用于指导系统各个方面的设计与实现,架构设计在系统开发过程中起着关键性作用,架构设计的优劣决定了系统的健壮性和生命周期的长短。 2、随着软件系统的规模越来越大、越来越复杂,整个系统的结构和规格说明就显得越来越重要。3、对于大规模的复杂软件系统,相较于对计算算法和数据结构的选择,系统的整体结构设计和规格说明已经变得明显重要得多。 2、微服务架构 (Microservices Architecture) 是服务导向架构 (Service-Oriented Architecture,SOA)的升级。 ,通过网络连接构成系统;平台/插件风格:适用于具有插件扩展功能的应用程序; MVC 风格:被广泛地应用于用户交互程序的设计; SOA 风格:应用在企业集成等方面;C2风格:适用于GUI 软件开发,用以构建灵活和可扩展的应用系统

    1.7K31编辑于 2024-08-19
  • 来自专栏ops技术分享

    Angular 2 架构(上)

    Angular 2 应用程序应用主要由以下 8 个部分组成: 1、模块 (Modules) 2、组件 (Components) 3、模板 (Templates) 4、元数据 (Metadata) 5、数据绑定 Angular 应用是由模块化的,它有自己的模块系统:NgModules。 每个 Angular 应该至少要有一个模块(根模块),一般可以命名为:AppModule。 实例 @Component({ selector : 'mylist', template : '<h2>菜鸟教程</h2>' directives : [ComponentDetails

    2.2K10发布于 2021-07-26
领券