
架构
zl1zl2zl3
这个作者很懒,什么都没留下…
展开
-
谁能想到,我给技术总监“上了一课”?
作者:卖托儿索的小火柴juejin.im/post/5ea6acb8e51d454ddf2346ee#heading-18由于疫情的原因,我被分配的任务不是很多,所以就会空出一点时间,一般这个时候我都会做自己的事情,比如看看源码、翻翻博客、然后就是写写博客。正当我沉迷在源码中不能自拔的时候,总监突然来到我旁边轻声的对我说道:最近这段时间大家的任务也不是特别多,空闲时间比较足,你这边能不能做点技术分享什么的,一来可以联络一下同事之间的感情,二来也可以增加同事之间的学习氛围。宝宝心里难受.转载 2020-08-27 17:39:26 · 560 阅读 · 0 评论 -
闲鱼靠什么支撑起万亿的交易规模?| 云原生Talk
造梦者 | 王树彬,阿里巴巴闲鱼架构负责人2014年6月28日,阿里即将赴美上市的这一年,西溪园区的一个茶水间里,28个人日夜赶工了三个月后,上线了一个闲置交易平台——闲鱼。今年5月份,在阿里巴巴的年报中对外公布了闲鱼的数据:GMV2000亿元,同比增长100%,每天在线卖家数超过3000万人。闲鱼已经从一个茶水间创业的内部小产品,变成了在C2C领域的领先平台。据艾媒数据估计,2020年全年的二手物品交易市场的规模将达到万亿以上。线上交易的繁荣亟需技术架构做相应的调整、演进才能支撑业务的快速发展。.转载 2020-08-22 11:21:07 · 351 阅读 · 0 评论 -
干货 | 携程度假无线前端架构演进之路
作者简介Jade Gu,携程高级前端开发专家,负责度假前端框架设计和 Node.js 基础设施建设等工作。这篇文章将简略地介绍我们当前的无线前端架构设计及其演进之路。主要内容包含以下几个部分,希望我们的经验能带给大家一些启发。1)当前的前端方案及其解决的问题2)现在面对的新挑战3)我们的前端方案设计和选择。一、当前的前端方案及其解决的问题1.1 当前方案的技术背景将时间调回到 2016 年。我们已经将几个核心的前端应用,从 C# ASP.NET 迁移到了 Node.js。.转载 2020-07-24 13:32:03 · 590 阅读 · 0 评论 -
美团万亿级 KV 存储架构与实践
KV 存储作为美团一项重要的在线存储服务,承载了在线服务每天万亿级的请求量。在 2019 年 QCon 全球软件开发大会(上海站)上,美团高级技术专家齐泽斌分享了《美团点评万亿级 KV 存储架构与实践》,本文系演讲内容的整理,第一部分讲述了美团 KV 存储的发展历程;第二部分阐述了内存 KV Squirrel 架构和实践;第三部分介绍了持久化 KV Cellar 架构和实践;最后分享了未来的发展规划和业界新趋势。美团点评 KV 存储发展历程美团第一代的分布式 KV 存储如下图左侧的架构所示,.转载 2020-07-02 20:47:52 · 978 阅读 · 0 评论 -
从架构到代码:软件开发最新趋势解析
脚踏实地“敲代码”,同时,不忘偶尔仰望下星空。本文根据阿里云原生团队资深技术专家陈立兵 (花名:雷卷)的直播整理而成,从领域驱动设计(DDD)、Reactive、Service Mesh 和代码智能等几个方面展开,聊一聊他眼里的软件开发的发展趋势。(阿里巴巴研发效能峰会即将开始,欢迎点击文末阅读原文了解)。今年 4 月份的时候,InfoQ 发布了软件架构与设计的趋势报告。InfoQ 在技术趋势报告中将软件架构分为了 4 类,如下图所示,从左到右依次是创新者(Innovators)、早期采用者(E.转载 2020-06-09 21:48:54 · 626 阅读 · 0 评论 -
字节跳动混沌工程实践总结
本文选自“字节跳动基础架构实践”系列文章。“字节跳动基础架构实践”系列文章是由字节跳动基础架构部门各技术团队及专家倾力打造的技术干货内容,和大家分享团队在基础架构发展和演进过程中的实践经验与教训,与各位技术同学一起交流成长。混沌工程是通过故障注入的方式帮助系统寻找薄弱点,从而提高系统的稳定性。随着微服务、云原生相关技术的发展,分布式系统已经流行在业界各处,但因此也带来了复杂度急剧上升、故障发生难以预测后果、难以避免与验证等挑战。而混沌工程正是通过故障注入等方式为切入点,帮助解决以上问题。本文讨论了.转载 2020-06-03 21:42:41 · 1027 阅读 · 0 评论 -
今日头条技术架构到底有多牛?
链接:https://blog.youkuaiyun.com/mucaoyx/article/details/84498468 今日头条创立于2012年3月,到目前仅4年时间。从十几个工程师开始研发,到上百人,再到200余人。产品线由内涵段子,到今日头条,今日特卖,今日电影等产品线。一、产品背景 今日头条是为用户提供个性化资讯客户端。下面就和大家分享一下当前今日头条的数据(据内部与公开数据综合): 5亿注册用户 2014年5月1.5亿,2015年5月3亿,2016年5月份为5亿。几乎.转载 2020-05-12 18:32:19 · 922 阅读 · 0 评论 -
月均活跃用户达1.3亿,B站高可用架构实践
流量洪峰下要做好高服务质量的架构是一件具备挑战的事情,本文详细阐述了从 Google SRE 的系统方法论以及实际业务的应对过程中出发,一些体系化的可用性设计。对我们了解系统的全貌、上下游的联防有更进一步的帮助。本文来自公众号云加社区(ID:QcloudCommunity)负载均衡负载均衡具体分成两个方向,一个是前端负载均衡,另一个是数据中心内部的负载均衡。前端负载均衡...转载 2020-04-30 13:47:35 · 548 阅读 · 0 评论 -
微信支付软件架构,这也太牛逼了!
作者:Jack Jianghttps://www.cnblogs.com/imstudy/p/12567241.html背景作为一个重要业务,微信支付在客户端上面临着各种问题。其中最核心问题就是分平台实现导致的问题:iOS 和安卓实现不一致 容易出 Bug 通过沟通保证不了质量 扩展性差,无法快速响应业务需求 需求变更迭代周期长 数据上报不全...转载 2020-04-24 20:58:29 · 534 阅读 · 0 评论 -
高性能服务器架构思路「不仅是思路」
在服务器端程序开发领域,性能问题一直是备受关注的重点。业界有大量的框架、组件、类库都是以性能为卖点而广为人知。然而,服务器端程序在性能问题上应该有何种基本思路,这个却很少被这些项目的文档提及。本文正式希望介绍服务器端解决性能问题的基本策略和经典实践,并分为几个部分来说明:1.缓存策略的概念和实例2.缓存策略的难点:不同特点的缓存数据的清理机制3.分布策略的概念和实例4.分布策略的难...转载 2020-04-20 14:26:49 · 338 阅读 · 0 评论 -
饿了么交易系统 5 年演化史
个人简介:2014年12月加入饿了么,当时参与后台系统的研发(Walis+Javis=>Walle),主要面向客服和BD。2015年5月开始接触订单系统的研发,7月负责订单研发组;度过单体应用到服务化这个阶段。2016年初搭建订单的测试团队,订单拆分为正逆向后,主要负责正向和交付部分。2017年做了一些平台搭建的探索。2018年初负责整个订单正逆向和交付,年中将下单、购...转载 2020-04-17 22:54:06 · 408 阅读 · 0 评论 -
打死都要记住!微服务架构的常用设计模式!
作者:duanxz来源:cnblogs.com/duanxz/p/3514895.html大家好,我每天都会在这里给大家分享一些干货内容(当然了,周末也要允许我休息一下哈)。今天跟大家分享微服务架构的常用设计模式的知识。1 聚合器微服务设计模式这是一种最常用也最简单的设计模式,如下图所示:聚合器调用多个服务实现应用程序所需的功能。它可以是一个简单的Web页面,将检索到的数...转载 2020-04-08 21:30:00 · 413 阅读 · 0 评论 -
阿里云专家手把手教你重塑 IT 架构!
进入21世纪以来,我们见证了企业分布式应用架构从SOA(Service-Oriented Architecture)到微服务架构,再到云原生应用架构的演化。为了说明企业架构演化背后的思考,我们先谈一些“玄学”:l 企业IT系统的复杂性(熵)符合热力学第二定律。随着时间的推演,业务的变化,企业IT系统的复杂度会越来越高。l 在计算机交互设计中有一个著名的复杂性守恒定律:应用交互的复杂性不...转载 2020-04-05 14:38:22 · 451 阅读 · 0 评论 -
以淘宝为例,解析大型电商服务端架构!
前言以淘宝网为例,简单了解一下大型电商的服务端架构是怎样的。如图所示 最上面的就是安全体系系统,中间的就是业务运营系统,包含各个不同的业务服务,下面是一些共享服务,然后还有一些中间件,其中 ECS 就是云服务器,MQS 是队列服务,OCS 是缓存等等,右侧是一些支撑体系服务。除图中所示之外还包含一些我们看不到的,比如高可用的体现。淘宝目前已经实现多机房容灾和异地机房单元化部署,为...转载 2020-03-26 20:14:48 · 1446 阅读 · 0 评论 -
张小龙、周鸿祎、傅盛都认同的架构设计思维
正文开始前,先花大量笔墨推荐几个我工作中常用的思考框架、实践框架,后续文章中会使用这几种思考框架作为工具来描述、拆解、分析问题。当然你也可以使用到其它工作内容中,掌握几种利器,比无头苍蝇样做事效率会高很多。一、几个思考、实践框架1、目标驱动、可量测的行动框架OGSM 是 Objective(目的)、Goal(目标)、Strategy(策略)、Measurement(测...转载 2020-03-25 15:49:19 · 856 阅读 · 0 评论 -
Kafka如何通过精妙的架构设计优化JVM GC问题
“这篇文章,同样给大家聊一个硬核的技术知识,我们通过Kafka内核源码中的一些设计思想,来看你设计Kafka架构的技术大牛,是怎么优化JVM的GC问题的?1、Kafka的客户端缓冲机制首先,先得给大家明确一个事情,那就是在客户端发送消息给kafka服务器的时候,一定是有一个内存缓冲机制的。也就是说,消息会先写入一个内存缓冲中,然后直到多条消息组成了一个Batch,才会一次网络通信...转载 2020-03-21 16:47:46 · 322 阅读 · 0 评论 -
这波操作,会把你的中间件架构带到另一个Level
“这篇文章,给大家来聊一个生产级的中间件系统的架构设计实践,希望给对中间件系统感兴趣的同学一点启发。(1)Master-Slave架构这个中间件系统的本质是希望能够用分布式的方式来处理一些数据,但是具体的作用涉及到核心技术,所以这里不能直接说明。但是他的核心思想,就是把数据分发到很多台机器上来处理,然后需要有一台机器来控制N多台机器的分布式处理,大概如下图所示。那么既然是分...转载 2020-03-21 16:37:29 · 283 阅读 · 0 评论 -
支撑日活百万用户的高并发系统,应该如何设计其数据库架构?
“这篇文章,我们来聊一下对于一个支撑日活百万用户的高并系统,他的数据库架构应该如何设计?看到这个题目,很多人第一反应就是:分库分表啊!但是实际上,数据库层面的分库分表到底是用来干什么的,他的不同的作用如何应对不同的场景,我觉得很多同学可能都没搞清楚。(1)用一个创业公司的发展作为背景引入假如我们现在是一个小创业公司,注册用户就20万,每天活跃用户就1万,每天单表数据量就1...转载 2020-03-20 16:00:15 · 795 阅读 · 0 评论 -
如何为从1到10万用户的应用程序,设计不同的扩展方案?
对于创业公司来说,有用户注册是好事情,但是当用户从零扩展到成千上万之后,Web 应用程序又该如何支持呢?通常来说,这种情况的解决方案要么是来自突然爆发的紧急事件,要么是系统出现瓶颈进行升级改造。虽然方式不同,但是我们也发现了,一个边缘项目发展成高度可扩展项目,其升级方案是有一些普适的“公式”可以套用,本文以 Graminsta 为例,为大家介绍当用户从 1 位发展到 10 万,应用程序如何扩...转载 2020-03-17 15:46:11 · 303 阅读 · 0 评论 -
深度分析|一文读懂银行数据架构体系
上一篇讲了银行数据仓库的系统架构,这次给大家讲讲数据架构。如果一个系统,没有数据架构,那肯定是在吹牛。狭义的数据仓库数据架构用来特指数据分布,广义的数据仓库数据架构还包括数据模型、数据标准和数据治理。即包含相对静态部分如元数据、业务对象数据模型、主数据、共享数据,也包含相对动态部分如数据流转、ETL、整合、访问应用和数据全生命周期管控治理。数据架构层面通过数据分类、分层部署等手段,从非功能...转载 2020-03-15 18:05:22 · 4724 阅读 · 0 评论 -
小米流式平台架构演进与实践
摘要:小米业务线众多,从信息流,电商,广告到金融等覆盖了众多领域,小米流式平台为小米集团各业务提供一体化的流式数据解决方案,主要包括数据采集,数据集成和流式计算三个模块。目前每天数据量达到 1.2 万亿条,实时同步任务 1.5 万,实时计算的数据 1 万亿条。伴随着小米业务的发展,流式平台也经历三次大升级改造,满足了众多业务的各种需求。最新的一次迭代基于 Apache Flink,对于流式平...转载 2020-03-06 17:04:14 · 649 阅读 · 0 评论 -
看懂 Serverless,这一篇就够了
1. 无服务器(Serverless)计算是什么云计算涌现出很多改变传统IT架构和运维方式的新技术,比如虚拟机、容器、微服务,无论这些技术应用在哪些场景,降低成本、提升效率是云服务永恒的主题。过去十年来,我们已经把应用和环境中很多通用的部分变成了服务。Serverless的出现,带来了跨越式变革。Serverless把主机管理、操作系统管理、资源分配、扩容,甚至是应用逻辑的全部组件都外包...转载 2020-03-02 14:10:39 · 7014 阅读 · 2 评论 -
创业互联网公司如何搭建自己的技术架构
适用范围本文主要针对中小型互联网公司,特别适用于手机APP或者pc的后台架构,基本可以支撑5万日活。本文会对可能用到的相关技术进行技术选型的说明,以及技术的架构介绍。技术指标说一下一些技术指标的计算过程可以作为其他同学的参考QPS, 如果是5万日活,使用集中在每天的4小时,每个用户大概产生100的请求,那么平均下来,我们系统大概应该支撑的请求为:50000 * 100 / (4 *...转载 2020-02-19 10:46:47 · 392 阅读 · 1 评论 -
新5 年时间服务器从 0 到 200,一个创业公司的架构野蛮生长史头疼哈
贝聊成立于2013年,是中国幼儿园家长工作平台,致力于通过互联网产品及定制化解决方案,帮助幼儿园解决展示、通知、沟通等家长工作中的痛点,促进家园关系和谐。贝聊是威创股份(A股幼教第一股)、清华启迪、网易联手投资的唯一品牌。在短短几年内,用户规模迅速达到千万级别,每年DAU均呈倍数级增长。面对如此快速的发展,原有的技术架构很难支撑越来越复杂的业务场景,在系统可用性以及稳定性方面,都给贝聊技术团队...转载 2020-02-13 22:29:41 · 408 阅读 · 0 评论 -
基于 Kafka + Flink + Redis 的电商大屏实时计算案
前言阿里的双11销量大屏可以说是一道特殊的风景线。实时大屏(real-time dashboard)正在被越来越多的企业采用,用来及时呈现关键的数据指标。并且在实际操作中,肯定也不会仅仅计算一两个维度。由于Flink的“真·流式计算”这一特点,它比Spark Streaming要更适合大屏应用。本文从笔者的实际工作经验抽象出简单的模型,并简要叙述计算流程(当然大部分都是源码)。数据格式...转载 2020-02-03 22:10:31 · 638 阅读 · 0 评论 -
构建企业级业务高可用的延时消息中台
1.业务场景剖析公司业务系统(比如:电商系统)中有大量涉及定时任务的业务场景,例如:实现买卖双方在线沟通的IM系统,为了确保接收方能够收到消息,服务端一般都会有重试策略,即服务端在消息发出的一段时间内,如果没收到接收方的确认信息,则重新发送消息。这就是一个典型的定时任务场景—消息发出等待固定的时间后,触发消息重发逻辑,重发逻辑首先判断所发消息是否收到确认信息,如果没有就将对应的消息再发送一次。...转载 2019-12-18 13:10:04 · 425 阅读 · 0 评论 -
分布式锁选型背后的架构设计思维【附源码】
1. 分布式锁本质提到分布式锁,有很多实现,比如Redis分布式锁、ZooKeeper分布式锁、etcd分布式锁等。但是选择哪个更适合你的项目?在《基于CAP模型设计企业级真正高可用的分布式锁》一文深入分析过分布式锁的哲学本质,以及如何结合场景来选择合适的分布式锁。分析业务场景,得到业务本质,就是架构思维。思维最终是需要落地的,接下去分享一下对分布式锁的思考和实践。锁的本质是对共享资源的处...转载 2019-12-18 11:20:51 · 330 阅读 · 0 评论 -
7000 字读懂互联网公司的架构演变历程
前言我们以javaweb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变。该系统具备的功能: 用户模块:用户注册和管理 商品模块:商品展示和管理 交易模块:创建交易和管理 阶段一、单机构建网站网站的初期,我们经常会在单机上跑我们所有的程序和软件。此时我们使用一个容器,如tomcat、jetty、jboos,然后直接使用JSP/servlet技...转载 2019-12-17 11:24:56 · 208 阅读 · 0 评论 -
六种微服务架构的设计模式
1 聚合器微服务设计模式这是一种最常用也最简单的设计模式,如下图所示:聚合器调用多个服务实现应用程序所需的功能。它可以是一个简单的Web页面,将检索到的数据进行处理展示。它也可以是一个更高层次的组合微服务,对检索到的数据增加业务逻辑后进一步发布成一个新的微服务,这符合DRY原则。另外,每个服务都有自己的缓存和数据库。如果聚合器是一个组合服务,那么它也有自己的缓存和数据库。聚合器可...转载 2019-12-16 09:24:01 · 518 阅读 · 0 评论 -
聊聊单体应用的 4 点不良影响,第 4 点很痛很真实
0. 概述单体应用有优点也有缺点,而所有缺点基本上都是一个原因导致的。功能模块都耦合在一起了。不同功能堆在一起了,会引发各种各样的问题,下面说一下自己体验过的单体应用的痛。1. 系统稳定性很不可控目前公司有一个旧的后端应用,里面保罗万物,有订单、商品、支付、库存、定时任务、MQ,还有各种管理功能,在今年九月份的时候,其中一个模块出现了内存泄漏,最后导致了操作系统级别的oom...转载 2019-12-16 09:18:06 · 299 阅读 · 0 评论 -
一份微服务架构手稿图,彻底搞定微服务核心原理!
微服务的概念最早在 2012 年提出,在 Martin Fowler 的大力推广下,微服务在 2014 年后得到了大力发展。今天我们通过一组手绘图来梳理下微服务的核心架构。什么是微服务?微服务 Microservices 之父,马丁.福勒,对微服务大概的概述如下:就目前而言,对于微服务业界并没有一个统一的、标准的定义(While there is no precise defini...转载 2019-12-11 18:29:22 · 573 阅读 · 0 评论 -
美团点评效果广告实验配置平台的设计与实现
广告系统中,一个好的实验平台可以令算法、工程、业务的迭代更多、更快、更好。本文详细介绍了美团点评效果广告引擎团队结合自身业务实际,在广告实验配置平台上的实践。目前该平台已经在搜索广告中全面上线,支持线上所有实验需求。一. 背景效果广告的主要特点之一是可量化,即广告系统的所有业务指标都是可以计算并通过数字进行展示的。因此,可以通过业务指标来表示广告系统的迭代效果。那如何在全量上线前确认迭...转载 2019-11-30 15:32:25 · 470 阅读 · 0 评论 -
流量复制与回放与压测平台化
背景软件测试是软件质量保障工作中重要的一个环节,如何通过测试的手段确保京东APP购物流程的平稳运行以及绝佳的购物体验,是我们测试团队永恒的话题。作为一名测试工程师,相信您一定曾经遇到过类似这样的场景:已经按照评审过的测试用例完成所有的测试,并且也包含了异常逻辑的测试覆盖,但是版本发布,或者服务上线后可能还是出现了各种问题,导致不得不回退版本或者紧急上线修复。一旦发生这种事情不仅会对业务正常...转载 2019-11-19 19:34:59 · 1794 阅读 · 0 评论 -
今日头条技术架构分析
今日头条创立于2012年3月,到目前仅4年时间。从十几个工程师开始研发,到上百人,再到200余人。产品线由内涵段子,到今日头条,今日特卖,今日电影等产品线。一、产品背景 今日头条是为用户提供个性化资讯客户端。下面就和大家分享一下当前今日头条的数据(据内部与公开数据综合): 5亿注册用户 2014年5月1.5亿,2015年5月3亿,2016年5月份为5亿。几乎为成倍...转载 2019-11-04 09:18:54 · 967 阅读 · 1 评论 -
厉害了,淘宝千万并发,14 次架构演进…
本文以设计淘宝网的后台架构为例,介绍从一百个并发到千万级并发情况下服务端的架构的14次演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知。文章最后汇总了一些架构设计的原则。基本概念在介绍架构之前,为了避免部分读者对架构设计中的一些概念不了解,下面对几个最基础的概念进行介绍。1)什么是分布式?系统中的多个模块在不同服务器上部署,即可称为分布式...转载 2019-10-25 14:50:29 · 517 阅读 · 1 评论 -
GUI应用程序架构的十年变迁:MVC,MVP,MVVM,Unidirectional,Clean
十年前,Martin Fowler撰写了GUI Architectures一文,至今被奉为经典。本文所谈的所谓架构二字,核心即是对于富客户端的代码组织/职责划分。纵览这十年内的架构模式变迁,大概可以分为MV*与Unidirectional两大类,而Clean Architecture则是以严格的层次划分独辟蹊径。从笔者的认知来看,从MVC到MVP的变迁完成了对于View与Model的解...转载 2016-07-25 14:11:50 · 1266 阅读 · 0 评论 -
每个架构师都应该研究下康威定律
本文出处:http://36kr.com/p/5042735.html今天的分享主要来自我之前的工作经验以及平时的学习总结和思考。我之前的背景主要是做框架、系统和平台架构,之前的工作过的公司eBay、携程、唯品会都是平台型互联网公司,所以今天主要带着平台架构视角和大家分享心得体会。架构的视角每个人都不一样,可以说一万种眼光,有业务架构、安全架构、平台架构、数据架构,各不相同,这里仅是我的一家之...转载 2016-07-21 17:17:30 · 374 阅读 · 0 评论 -
http如何像tcp一样实时的收消息?
http如何像tcp一样实时的收消息? 一、webim如何实现消息推送webim通常有三种方式实现推送通道:1)WebSocket2)FlashSocket3)http轮询其中1)和2)是用Tcp长连接实现的,其消息的实时性可以通过tcp保证。方案3)才算是webim实现消息推送的“正统”方案,用http短连接轮询的方式实现“伪长连接”,既然是轮询,有朋友就对消息的实时性产生了...转载 2017-02-16 09:33:48 · 394 阅读 · 0 评论 -
“大话架构”阿里架构师分享的Java程序员需要突破的技术要点
一、源码分析源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂。源码阅读,我觉得最核心有三点:技术基础+强烈的求知欲+耐心。我认为是阅读源码的最核心驱动力。我见到绝大多数程序员,对学习的态度,基本上就是这几个层次(很偏激哦):1、只关注项目本身,不懂就baidu一下。2、除了做好项目,还会阅读和项目有关的技术书籍,看wikip...转载 2018-03-20 15:55:36 · 318 阅读 · 0 评论 -
Web架构的演化
web架构演化历史就像中国历史上下5000年一样精彩,先来了解一下大型网站有哪些特点呢。 1、高并发,大流量 2、高可用 3、海量数据 4、用户分布广泛,网络情况复杂 5、安全环境恶劣 6、需求快速变更,发布频繁,产品发布频率是极高的 7、渐进式发展。好的互联网产品都是慢慢运营出来的,不是一开始就开发好的。 1、演化过程初始...转载 2018-03-20 16:22:28 · 1187 阅读 · 0 评论