首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

服务信的架构实践

作者|许家滔 编辑|田光 微服务的理念与腾讯一直倡导的“大系统小做”有很多相通之处,本文将分享信后台架构服务发现、通信机制、集群管理等基础能力与其上层服务划分原则、代码管理规则等。...过去几年,信都是很敏捷地在开发一些业务。所以我们的底层架构需要支撑业务的快速发展,会有一些特殊的需求。 另外,目前整个信团队已经有一千多人了,开发人员也有好几百。...三、高并发 基础架构 接下来看看我们的基础架构。 ? 整个微服务架构上,我们通常分成这些部分: 服务布局 服务之间怎么做一些远程调用 容错(主要讲一下过载保护) 部署管理 服务布局 ?...早年我们 QQ 邮箱、信、图像压缩、反垃圾都是一个 web 服务,只有存储层会独立到后面去,甚至用 web 直连 MySQL。因为它早期比较小,后来变大之后就用微服务架构。...2011 年起负责信后台基础架构,包括分布式存储平台和后台服务框架等,覆盖信账号 / 消息 / 朋友圈核心存储等,并为公众号 / 信支付 / 信企业号等等业务提供组件支持,近两年专注于后台服务质量提升和高性能架构

3.6K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    前端学习笔记(1):前端总体架构概述,从微服务

    ,反观java 世界,学好 Spring MyBatis ,一路无忧,哎……微服务为了解决庞大的一整块后端服务带来的变更与扩展方面的限制,出现了微服务架构(Microservices):微服务是面向服务架构...前端是一种类似于微服务架构,它将微服务的理念应用于浏览器端,即将单页面前端应用由单一的单体应用转变为多个小型前端应用聚合为一的应用。各个前端应用还可以独立开发、独立部署。...前端前端是一种类似于微服务架构,是一种由独立交付的多个前端应用组成整体的架构风格,将前端应用分解成一些更小、更简单的能够独立开发、测试、部署的应用,而在用户看来仍然是内聚的单个产品。...微服务架构,可以解耦后端服务间依赖。而前端,则关注于聚合前端应用。热闹驱动开发。新的技术,既然很热闹,那么就学吧。前端的实现,意味着对前端应用的拆分。...《前端学习笔记(1):前端总体架构概述,从微服务》,请注明出处:https://www.zhoulujun.cn/html/webfront/engineer/Architecture/9029

    21710

    前端架构】AWS 上的前端架构

    服务架构的特点是独立服务,这些服务专注于特定的业务功能,并由小型、自包含的团队维护。微服务架构经常用于在 AWS 上开发的 Web 应用程序,这是有充分理由的。...前端架构将微服务开发原则引入前端应用程序。在前端架构中,开发团队独立构建和部署“子”前端应用程序。这些应用程序由“父”前端应用程序组合而成,该前端应用程序充当容器来检索、显示和集成各种子应用程序。...带有前端的微服务后端 前端的好处 与单体前端相比,前端具有以下优势: 独立工件:微服务开发的核心原则是工件可以独立部署,这对于前端仍然适用。...在前端架构中,团队应该能够独立部署他们的前端应用程序,而对其他服务的影响最小。这些更改将反映在父应用程序中。 自治团队:每个团队都是各自领域的专家。例如,计费服务团队成员具有专业知识。...结论 前端架构为前端应用程序引入了微服务开发的许多熟悉的好处。前端架构还允许您管理小型独立组件,从而简化构建复杂前端应用程序的过程。

    2K10

    架构的未来:前端与微服务的融合

    文章目录 微服务架构简介 前端架构简介 前端与微服务的融合 1. 共享服务 2. 基于事件的通信 3. 统一的身份和认证 4....交付管道的集成 示例:使用微服务前端的电子商务平台 微服务架构 前端架构 融合微服务前端 结论 欢迎来到架构设计专栏~架构的未来:前端与微服务的融合 ☆* o(≧▽≦)o *☆嗨~我是...❤️ 在当今快速发展的软件开发领域,架构设计一直是一个不断演化的领域。随着技术的不断发展,我们看到了微服务架构前端架构这两种新兴的架构风格的崭露头角。...前端与微服务的融合 虽然微服务前端是两种不同的架构风格,但它们之间存在许多共通之处。它们都强调了模块化、独立开发和部署的概念。...同样,前端架构可以将前端模块拆分为多个独立的部分,这些部分可以在不同的前端应用程序之间共享。通过将微服务前端中的共享部分抽象为可重用的服务,可以实现更好的代码复用。 2.

    45810

    【微服务架构】微服务架构——探索 UBER 的微服务架构

    在本文中,您将了解以下内容: 微服务架构的定义 微服务架构的关键概念 微服务架构的优缺点 优步——案例研究 在我谈论 UBER 的微服务架构之前,如果我给你定义微服务,这将是公平的。...这让我们推断,在乘客管理微服务上工作的进程数量比在支付上工作的进程数量要多。 通过这种方式,UBER 受益于将其架构从单体架构转变为微服务架构。 我希望你喜欢阅读这篇关于微服务架构的文章。...【首席架构师圈】或者加信小号【cea_csa_cto】或者加QQ群【792862318】公众号 【jiagoushipro】 【超级架构师】 精彩图文详解架构方法论,架构实践,技术原理,技术趋势。...信小号 【cea_csa_cto】 50000人社区,讨论:企业架构,云计算,大数据,数据科学,物联网,人工智能,安全,全栈开发,DevOps,数字化....知识星球【职场和技术】博【智能时刻】智能时刻哔哩哔哩【超级架构师】抖音【cea_cio】超级架构师快手【cea_cio_cto】超级架构师 小红书【cea_csa_cto】超级架构师 谢谢大家关注

    61720

    信许家滔:信10亿日活场景下,后台微服务架构及存储架构实践!

    作者介绍:许家滔,信技术架构部后台总监,专家工程师,多年来伴随QQ邮箱和信后台成长,历经系统从0到10亿级用户的过程。目前负责信后台工作,包括消息,资料与关系链,后台基础设施等内容。...本文整理自许家滔老师在“第十届中国系统架构师大会SACC2018)”的演讲内容整理而成,以下是正文: 01 信发展主要的技术里程碑 信在2011年1月21日发布了1.0版本,以即时消息为主;2011...02 信后台的系统架构 逻辑上讲,最前面会有一个终端,后面会有一个长链接接入层,在线有几亿的管理连接部分。...上面提到的这个论文是信PaxosStore的一点创新,贡献出了一些简洁的算法实现流程,大家可以很轻松的去理解和实现。 06 PaxosStore整体架构 PaxosStore整体架构,如下图。...09 信微服务架构框架 微服务包含了服务定义、服务发现、错误重试、监控容灾、灰度发布等一系列面向服务的高级特性的统一框架。

    5.8K435

    「微服务架构」企业微服务架构

    首先,来自Darren的消息是,微服务架构并不是构建大规模企业应用程序的新方式。 Netflix和亚马逊等公司已经实施了微服务架构,在过去几年中提供了成功的产品。 但是微服务架构适合您的组织吗?...监控部署生命周期的各个阶段 集中式架构团队与分散式架构团队 基建自动化 架构师的角色随着微服务的采用而发展,并委托他或她承担挑战性的责任,从而形成架构治理。...架构治理是组织尝试开始微服务之旅的关键因素之一,因为如果没有正确的顺序,该过程将很快导致微管理而不是微服务。...这意味着企业架构师不再需要承担单个服务的内部工作负担,而是高度关注整个系统中服务之间的交互。此外,架构师应密切关注系统的整体运行状况,以确保每项服务以一致的方式生成与监控相关的指标。...如果您正在寻找有关微服务架构的其他材料,请查看Martin Fowler的文章或ThoughtWorks网站上的其他微服务洞察博客。

    69522

    前端架构实战

    可以理解前端是一种将多个可独立交付的小型前端应用聚合为一个整体的架构风格。...这种架构目前有多种方案,都有利弊之处,但只要适用当前业务场景的就是好方案。 前端并没有技术栈的约束。每一套前端方案的设计,都是基于实际需求出发。...前端由于是多个子应用的聚合,如果多个业务应用依赖同一个服务应用的功能模块,只需要更新服务应用,其他业务应用就可以立马更新,从而缩短了更新流程和节约了更新成本。...使用前端架构就可以解决问题,在保留原有项目的同时,可以完全使用新的框架开发新的需求,然后再使用前端架构将旧的项目和新的项目进行整合。...在 single-spa 框架中有三种类型的前端应用: single-spa-application / parcel:前端架构中的应用,可以使用 vue、react、angular 等框架。

    3.9K00

    架构·微服务架构(一)

    1、概述 微服务架构模式作为替代单体应用和面向服务架构的一个可行的选择,在业内迅速取得进展。由于这个架构模式仍然在不断的发展中,在业界存在很多困惑——这种模式关乎什么?它是如何实现的?...微服务架构的演化有两个主要来源:使用分层架构模式的单体应用和使用面向服务架构的分布式应用。 2.3.1、单体应用的演变过程 单体应用:一个应用就是一个整体。...微服务架构通过简化服务概念、消除服务编排、简化服务组件连接和访问来解决复杂度问题。 3、模式实现 虽然有很多方法来实现微服务架构,这里提出三个脱颖而出的案例。...然而服务组件粒度过细,则很快会将微服务架构模式演变成一个复杂、容易混淆、代价昂贵并易于出错的重量级面向服务架构。...5、注意事项 微服务架构模式解决了很多单体应用和面向服务架构应用存在的问题。

    1.6K20

    架构拾集】 前端:应用化

    应用化即在开发和运行时,应用都是以单一、微小应用的形式存在。 应用化与前端架构相当的类似,它们在开发时都是独立应用,在构建时又可以按照需求单独加载。...关键因素 描述 对于 想拆解单体前端应用的团队 我们的架构 应用化 是一个 类前端架构 它可以 在开发环境将应用拆分成一个个的模块化应用,在构建时以单体的形式构建 但他不同于 前端架构 它的优势是...件化,即通过对构建系统的 hack,使不同的前端应用可以使用同一套依赖。它在应用微服务化的基本上,改进了重复加载依赖文件的问题。...架构设计方案 在刚结束的项目里,我们采用了这种架构方式来构建应用,我们将其称之为应用。原因主要有两个,一个是每个应用都是以功能模块划分的,一个则是应用最后仍然是以单体应用的形式存在的。...使用 E2E 测试对于前端或者微服务架构来说,是一种特别有效的方式。唯一的问题可能是,它运行起来比较慢。

    67930

    了解新兴架构模式:应用架构

    本文讲述了微服务(Microservice)所启发的新兴架构模式如何为特性开发注入活力并加快开发者的速度。 20 世纪末,网络公司,如 Netflix 和亚马逊,都面临着大规模软件开发的挑战。...采用应用架构。 1 什么是应用? 微服务将后端分离出来的区域单独部署。与此类似,移动开发者可以将应用程序的不同核心部分——单一特性、共享业务逻辑和低级特性——转移到独立的模块库中。...因此,应用的架构包括一个模块化设计,并辅之以专门的应用程序(称为应用),供开发和测试使用,这就是为了提高开发者的速度。...3 挑战与权衡 像任何架构模式一样,应用的方法也有取有舍。微服务在很大程度上影响了应用的架构,但这两者之间有一个关键的区别。微服务是单独部署的,而构成应用的模块则是编译成相同的二进制文件。...4 应用架构之路 采用应用架构需要时间,需要大量的学习和实验。

    66430

    「微服务架构」Medium的微服务架构实践

    我们已经构建了几个卫星服务,但我们还没有制定一个系统地采用微服务架构的策略。随着系统变得越来越复杂并且团队不断发展,我们在2018年初转向了微服务架构。...在这篇文章中,我们希望分享我们有效地做到这一点并避免微服务综合症的经验。 什么是微服务架构? 首先,让我们花一点时间来思考微服务架构是什么,不是什么。 “微服务”是那些过载和混乱的软件工程趋势之一。...由于多个服务协调的复杂性和成本(有时跨多个团队),分布式单片系统通常比集中式单片系统差得多。 与此同时,了解微服务不是什么很重要: 微服务不是具有少量代码行或“”任务的服务。...尽管微服务架构允许团队更轻松地测试新技术,但它并不是微服务架构的主要目标。只要团队从分离的服务中受益,就可以使用完全相同的技术堆栈构建新服务。 微服务不是必须从头开始构建的服务。...¹在这篇文章中,我们将以两种方式使用“微服务”一词,(1)指微服务架构,(2)指微服务架构中的一项服务。 ²在开发中获取生产数据是一把双刃剑。

    62021

    浅谈架构(单体架构、 SOA架构、微服务架构

    单体架构 * 一个典型的单体应用就是将所有的业务场景的表示层、业务逻辑层和数据访问层放在一个工程中,最终经过编译、打包,部署在一台服务器上。...,它是将表示层的JSP、业务逻辑层的Service、Controller和数据访问层的Dao,打成war包,部署在Tomcat、Jetty或者其他Servlet容器中运行` [r-1.jpg] SOA架构...* SOA架构是面向服务的体系结构,主要目的是为了各个系统更加容易地融合在一起。...`例如:以购物商城为例,由于功能模块越来越多,系统非常臃肿所有对系统进行横向拆分,各个服务之间彼此相对独立,通过服务治理框架进行服务之间的通信以及管理,常用的服务治理框架有:dubbo、dubbox等`...[r-2.png] * 微服务是将一个大型复杂软件应用由一个或多个微服务组成。

    2K50

    服务(一)——单体架构 VS 微服务架构

    单体架构 VS 微服务架构 单体架构 1. 什么是单体架构     一个工程对应一个归档包(war),这个war包 包含了该工程的所有功能。...单体架构增加服务器 (假设每个服务器只能抗住200用户,怎么才能让两台服务器起到均衡分配的作用?) 采用Nginx负载均衡,使得每台服务器都能平均分压。 4....微服务架构服务架构是一个架构风格, 提倡 ①:将一个单一应用程序开发为一组小型服务. ②:每个服务运行在自己的进程中 ③:服务之间通过轻量级的通信机制(http rest api) ④:...每个服务都能够独立的部署 ⑤:每个服务甚至可以拥有自己的数据库 微服务以及微服务架构的是二个完全不同的概念。...微服务强调的是服务的大小和对外提供的单一功能,而微服务架构是指把 一个一个的微服务组合管理起来,对外提供一套完整的服务

    1.6K20

    【微服务架构】为故障设计微服务架构

    服务架构可以通过定义明确的服务边界隔离故障。但就像在每个分布式系统中一样,网络、硬件或应用程序级别问题的可能性更高。由于服务依赖关系,任何组件都可能对其消费者暂时不可用。...微服务架构的风险 微服务架构将应用程序逻辑转移到服务中,并使用网络层在它们之间进行通信。通过网络而不是内存调用进行通信会给系统带来额外的延迟和复杂性,这需要多个物理和逻辑组件之间的协作。...#microservices 允许您实现优雅的服务降级,因为可以将组件设置为单独失败。 与单体架构相比,微服务架构的最大优势之一是团队可以独立设计、开发和部署他们的服务。...对于微服务架构,我们需要记住,提供者服务可能会因发布、配置和其他更改的中断而暂时不可用,因为它们由其他人控制,并且组件彼此独立移动。...团队无法控制他们的服务依赖关系。 缓存、隔板、断路器和速率限制器等架构模式和技术有助于构建可靠的微服务

    46840

    从分层架构到微服务架构(五)之服务架构

    往期精彩: 从分层架构到微服务架构(一) 从分层架构到微服务架构(二)之分层架构 从分层架构到微服务架构(三)之管道架构 从分层架构到微服务架构(四)之内核架构 前言 从本文开始,我们进入了《从分层架构到微服务架构...SBA 可以看成是单体架构和微服务架构之间的一个折中方案,它也是按照业务领域进行服务划分,但服务划分的粒度相比微服务要更粗。...SBA 与微服务架构一大不同是,它允许各个服务间共享同一个数据库实例,这也使得 SBA 在架构上既有单体架构的特点,也有分布式架构的特点,显得更加的灵活。...因此,从单体架构演进到 SBA,会比直接演进到微服务架构更加容易。...业务服务的设计 SBA 中的服务具有较粗的粒度,因此在业务服务架构设计上通常也会用到一些单体架构模式,常见的有分层架构和基于领域的组件化架构

    72800

    架构相关文章

    信作为国民级应用,最开始研发有非典型性特征。 架构设计,有着比较独特路径,架构设计上对于架构设计、架构实现有着借鉴意义。...信从协议到架构与传统IM有着一定差异,思路上差异性有一定参考意义,对于解决原有 老问题可以采用新方式从而简化很多。...信协议相关 http://www.blogjava.net/yongboy/archive/2014/03/05/410636.html 信中微服务架构 http://www.sohu.com/a/...163521768_355140 信后台架构演进,从无到有 http://www.infoq.com/cn/articles/the-road-of-the-growth-weixin-background.../zjjs/201211202.asp 信多点登陆 https://www.cnblogs.com/lulu/p/4199770.html 文章连接均由杉枫整理,信公众号:互联网开发者Club,可以通过公众号交流架构与产品

    76331

    服务架构服务降级

    当整个微服务架构整体的负载超出了预设的上限阈值或即将到来的流量预计将会超过预设的阈值时,为了保证重要或基本的服务能正常运行,我们可以将一些 不重要 或 不紧急 的服务或任务进行服务的 延迟使用 或 暂停使用...服务太多,不知道该降级哪些服务,单个操作降级速度太慢…… 4.1 分级降级 当微服务架构发生不同程度的情况时,我们可以根据服务的对比而进行选择式舍弃(即丢车保帅的原则),从而进一步保障核心的服务的正常运作...以下是个人给出的最终评价模型,可作为服务降级的评价参考模型进行设计: 我们利用数学建模的方式或架构师直接拍脑袋的方式,结合服务能否降级的优先原则,并根据台风预警(都属于风暴预警)的等级进行参考设计,可将微服务架构的所有服务进行故障风暴等级划分为以下四种...: 故障严重程度为:蓝色<黄色<橙色<红色 建议根据二八原则可以将服务划分为:80%的非核心服务+20%的核心服务 以上模型只是整体微服务架构服务降级评估模型,具体大促或秒杀活动时,建议以具体主题为中心进行建立...最好能建立一套模型库,然后实施时只需要输入相关服务即可输出最终降级方案,即输出本次大促或秒杀时,当发生蓝色风暴时需要降级的服务清单、当发生黄色风暴时需要降级的服务清单…… 4.2 降级权值 微服务架构中有服务权值的概念

    2.7K30

    服务架构服务降级

    当整个微服务架构整体的负载超出了预设的上限阈值或即将到来的流量预计将会超过预设的阈值时,为了保证重要或基本的服务能正常运行,我们可以将一些 不重要 或 不紧急 的服务或任务进行服务的 延迟使用 或 暂停使用...服务太多,不知道该降级哪些服务,单个操作降级速度太慢…… 4.1 分级降级 当微服务架构发生不同程度的情况时,我们可以根据服务的对比而进行选择式舍弃(即丢车保帅的原则),从而进一步保障核心的服务的正常运作...以下是个人给出的最终评价模型,可作为服务降级的评价参考模型进行设计: 我们利用数学建模的方式或架构师直接拍脑袋的方式,结合服务能否降级的优先原则,并根据台风预警(都属于风暴预警)的等级进行参考设计,可将微服务架构的所有服务进行故障风暴等级划分为以下四种...设计说明: 故障严重程度为:蓝色<黄色<橙色<红色 建议根据二八原则可以将服务划分为:80%的非核心服务+20%的核心服务 以上模型只是整体微服务架构服务降级评估模型,具体大促或秒杀活动时...最好能建立一套模型库,然后实施时只需要输入相关服务即可输出最终降级方案,即输出本次大促或秒杀时,当发生蓝色风暴时需要降级的服务清单、当发生黄色风暴时需要降级的服务清单…… 4.2 降级权值 微服务架构中有服务权值的概念

    2.4K10
    领券