随笔分类 - [50]SA系统架构
System Architecture
-
千万级流量下架构设计
摘要:架构设计:千万级流量下的数据强依赖降级 1 背景 互联网场景下,我们经常会面临一个产品流量从初创时期的小流量到全盛大流量的过程。这时候,原本的架构设计就显得很不合理,变成你追求服务稳定性阻碍。然而这一切并不一定是你的架构能力的问题,而是在小流量场景下,不能过高的去评估容量和架构冗余性,避免造成不必要 阅读全文
-
API架构风格
摘要:浅谈6种流行的API架构风格 前言 API在现代软件开发中扮演着重要的角色,它们是不同应用程序之间的桥梁。编写业务API是日常开发工作中最常见的一部分,选择合适的API框架对项目的成功起到了至关重要的作用。本篇文章将浅谈一下当前6种流行的API架构风格的优点、缺点以及适用场景。 6种流行的API架构 阅读全文
-
非功能性需求
摘要:系统架构7个非功能性需求 在软件系统里面,功能性需求是面向用户、详细明确的需求,由产品人员根据市场的需要提炼出来,是产品生命周期里最重要的一环。比如电商系统里面的优惠券功能,通常包含需求:优惠券分类、细分领券人群、核销优惠券等等。一旦需求通过技术评审,开发人员必须依照文档实现功能,不允许轻易变更。 阅读全文
-
软件工程:霍夫施塔特定律(Hofstadter's Law)和海勒姆定律(Hyrum's Law)
摘要:软件开发定律:霍夫施塔特定律,为什么项目交付总是会延期? 在软件项目中,你是否遇到过这种情况: 一个软件工程师,要开发一个系统功,这个系统需求有点复杂,需要新增多个模块,同时也需要和多个系统交互。工程师会按照自己的经验,做一个粗略的工期评估,同时在加上一点缓冲时间,从而得出一个开发工期的总时长。但最 阅读全文
-
当 sql 很复杂时,千万不要用 EF 去写,这中间会产生多少个临时对象你真的搞不清楚,你也hold不住,建议直接改成 sql
摘要:转载记一次 .NET 某RFID标签管理系统 CPU 暴涨分析 一:背景 1. 讲故事 前段时间有位朋友说他的程序 CPU 出现了暴涨现象,由于程序是买来的,所以问题就比较棘手了,那既然找到我,就想办法帮朋友找出来吧,分析下来,问题比较经典,有必要和大家做一下分享。 二:WinDbg 分析 1. C 阅读全文
-
组织的沟通和系统的设计
摘要:架构师进阶,微服务设计与治理的16条常用原则 上一篇文章我们从「存储选型」角度学习了架构师的基本能力。 今天将从存储的上一层「服务维度」学习架构师的第二项常用能力——微服务设计与治理。 如何设计合理的微服务架构? 如何保持微服务健康运行? 这是我们对微服务进行架构设计过程中非常关注的两个问题。 本文 阅读全文
-
高可用稳定性
摘要:转载系统总出故障怎么办,或许你该学学稳定性建设! 大家好,我是树哥。 说到系统稳定性,不知道大家会想起什么?我想大多数人会觉得这个词挺虚的,不知道系统稳定性指的是什么。一年前的我看到这个词,也是类似于这样的感受,大概只知道要消除单点、做好监控报警,但却并没有一个体系化的方法论。经过一段时间的摸索,我 阅读全文
-
将ElasticSearch添加到现有系统中承担近实时的多维度查询请求,ES可支撑十万级别qps
摘要:架构师必备:多维度查询的最佳实践 背景 有2种常见的多维度查询场景,分别是: 带多个筛选条件的列表查询 不含分库分表列的其他维度查询 普通的数据库查询,很难实现上述需求场景,更不用提模糊查询、全文检索了。 下面结合楼主的经验和知识,介绍初级方案、进阶方案(上ElasticSearch),大部分情况下 阅读全文
-
解决查询问题-分库分表后
摘要:多维度分片需求,如何解决查询问题? 大家好,我是【架构摆渡人】,一只十年的程序猿。这是分库分表系列的第一篇文章,这个系列会给大家分享很多在实际工作中有用的经验,如果有收获,还请分享给更多的朋友。 其实这个系列有录过视频给大家学习,但很多读者反馈说看视频太慢了。也不好沉淀为文档资料,希望能有一系列文字 阅读全文
-
“看门狗”机制—分布式锁
摘要:踩到一个关于分布式锁的非比寻常的BUG! 你好呀,我是歪歪。 提到分布式锁,大家一般都会想到 Redis。 想到 Redis,一部分同学会说到 Redisson。 那么说到 Redisson,就不得不掰扯掰扯一下它的“看门狗”机制了。 所以你以为这篇文章我要给你讲“看门狗”吗? 不是,我主要是想给你 阅读全文
-
蓝绿部署、金丝雀发布(灰度发布)、AB测试
摘要:蓝绿部署、金丝雀发布(灰度发布)、AB测试 随着微服务架构的普及,线上服务越来越多,随之而来的就是部署越来越频繁;随着互联网行业的兴旺,产品迭代的频率也是越来越快,服务上线速度逐步提升。有上线、有部署,就有风险。有风险,就对业务有影响,然后就有了一系列减少这种风险的部署方案:蓝绿部署、金丝雀发布(灰 阅读全文
-
云化
摘要:上云测试,这些关键点你get 到没有导读,先从云化说起,再谈谈云化形态下,除了常规的功能测试,云化的测试,还需要有几个必须要get到的硬核指标,最后在分别详解这些关键点硬核指标是什么,和如何测试呢。这是个值得深思的问题,希望所有测试人都get 到这些,且比贴子说提到的做得更多,提炼出更多 check 阅读全文
-
流量、带宽、速度、码率
摘要:流量、带宽、速度、码率 架设网络,按规定,需要拿到工信部颁发的营业执照。我们使用的网络,由运营商提供。运营商指的是网络运营商(提供互联网服务的组织,也叫ISP),包括:移动、电信、网通、铁通、长城、天威、教育网、广电、方正,等等。 现在,运营商提供网络,是收费的,收费的理由,主要还是运营商提供了通道 阅读全文
-
CAP定理在分布式系统设计中的最新应用
摘要:本文翻译自国外InfoQ和计算机杂志上一篇2012年旧文,本文就有关数据同步进行了讨论,特别关注业务事务的不变性与一致性如何在分布式系统中巧妙保证,探讨了长时间运行的事务的补偿机制。这些对分布式系统设计都有很大帮助。原文大意如下:CAP理论认为,任何联网的共享数据系统只能在三个属性中的两个。但是,通 阅读全文
-
OWIN是Open Web Server Interface for .NET
摘要:http://owin.org/ Servers and Hosts Katana Nowin Suave Frameworks Jasper Nancy SignalR WebApi WebSharper DuoVia.Http Simplify.Web Wisej Implementations 阅读全文
-
CAP原理和BASE思想
摘要:CAP原理和BASE思想 分布式领域CAP理论,Consistency(一致性), 数据一致更新,所有数据变动都是同步的Availability(可用性), 好的响应性能Partition tolerance(分区容忍性) 可靠性定理:任何分布式系统只可同时满足二点,没法三者兼顾。忠告:架构师不要将 阅读全文
-
Istio Service Mash管理微服务
摘要:Istio Service Mash管理微服务 今天的文章通过Istio开源项目展示如何为Kubernetes管理的微服务提供可见性,弹性,安全性和控制。 服务是现代软件体系结构的核心。比起复杂庞大的整体,部署一系列模块化的小型(微型)服务能够使开发人员灵活地使用不同的语言、技术并能放缓节奏,并会有 阅读全文
-
LinkedIn微服务框架rest.li
摘要:linkedin/rest.li https://github.com/linkedin/rest.li LinkedIn微服务框架rest.li摘要:Rest.li是一款REST+JSON框架,使用动态发现和简单的异步API即可构建健壮可伸缩的服务架构体系。该框架已在LinkedIn得到运用与发展 阅读全文
-
Istio微服务架构初试
摘要:Istio微服务架构初试 感谢 http://blog.csdn.net/qq_34463875/article/details/77866072 看了一些文档,有些半懂不懂,所以还是需要helloworld一下。因为istio需要kubernetes 1.7的环境,所以又把环境重新安装了一边,详情 阅读全文
-
windows WEB 高可用/可伸缩
摘要:windows NLB+ARR实现Web负载均衡高可用/可伸缩 基于IIS的ARR负载均衡 基于NLB负载均衡 这两篇分别分ARR 和 NLB基本配置,下面我们讲讲,如何组合使用,搭配成高可用/可伸缩集群。 什么是高可用,可伸缩 ? 高可用:是指系统经过专门设计减少停工时间,保持服务高度可用。正常工 阅读全文
浙公网安备 33010602011771号