文档章节

高可用架构总体架构篇

c
 cssniper
发布于 2017/07/16 08:34
字数 553
阅读 6
收藏 0
点赞 0
评论 0

高可用架构为什么需要分层

高可用架构分层设计原则是什么

高可用架构如何分层

高可用架构分层最佳实践

 

all in one 架构

-整个架构只有一个模块

 数据部分,逻辑部分,接入部分,展示部分等

-架构存在问题

耦合严重

职责不分明

模块庞大,臃肿

开发成本高,效率低下

运维成本高

组件间相互影响,一旦组件有问题,整个服务都受影响

扩展性差

性能极限差

牵一发而动全身!!

 

高可用架构分层

all in one架构问题多多(康威定律)

服务高可用需分层设计

模块耦合性低

模块职责分明

         数据层,逻辑层,接入层,展示层 等等

模块间不再相互影响

模块独立扩展

系统整体性能高

 

-高可用架构分层设计原则

数据,逻辑,接入(数据安全,攻防),展示

-分层间低耦合

   接口交互(rpc,http,resfull)

-分层内高内聚

    功能聚焦单一

 

高可用架构分层设计原则

分层适中

     层次过多

      请求交互路径长

      请求响应延迟高

    层次多,运维成本高

定位问题设计层次多,定位复杂多增加,定位时间长

层次过少

 每个层次功能不单一,耦合性高

模块内组件相互影响高

高可用性无法保证

 

高可用架构分层

-前段架构

    MVC架构分层

-后端架构

     按照功能水平划分

          -四层 

                接入层,逻辑层,数据层,数据存储

                接入层,逻辑层,原子服务层,数据存储

          -五层

              接入层,序列化层(异步消息队列)、逻辑层、数据层、数据存储

            按照业务垂直拆分

               -  房产、招聘、二手、二手车、行业

              -Im、交友等

高可用架构最佳实践

脱离业务场景谈架构分层绝对是耍流氓

     架构的分层取决于业务场景

       -mvc

 

创业初期

 满足业务快速发展

可用性低

分层少

all in one

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
c
粉丝 0
博文 3
码字总数 1743
作品 0
长沙
架构高可用知识原理篇

架构之路 什么是架构的高可用很难给出精确定义类似于建筑物架构概念在设计原则基础上,对系统的各个部分组合,形成架构系统架构两大要素 各个组件 -组件间的相关关联 架构高可用重要性 架构高...

牛奋Debug
02/25
0
0
实录|互联网架构“高可用”在线技术交流

原创 2016-12-06 58沈剑+GitChat 架构师之路 架构师之路架构师之路 微信号 功能介绍 架构师之路,坚持撰写接地气的架构文章 前段时间,受@谢工 邀请,在GitChat平台首发《究竟啥才是互联网架...

毛爷爷夸我帅
2016/12/06
15
0
Oracle高可用概述(HA与RAC的关系解惑)

看到leonarding大神总结的有关Oracle高可用性的概述,之前开会的时候,有人也提到过Oracle HA、RAC等等,当时这些概念不是特别清楚,下来查过后感觉HA是一个概念,像RAC、Stream Replicatio...

bisal
2013/09/26
0
0
大型网站技术架构 核心原理与案例分析 2016-4-17

第1篇 概述 1 大型网站架构演化 2 1.1 大型网站软件系统的特点 3 1.2 大型网站架构演化发展历程 4 1.2.1 初始阶段的网站架构 4 1.2.2 应用服务和数据服务分离 4 1.2.3 使用缓存改善网站性能 ...

jayronwang
2016/04/17
122
0
数据库高可用实战案例:架构优化

原文出处:DoubleK 说到高可用,看官们会想到很多方案,也许是自亲身经历过系统从单机变成高可用的痛苦过程,也许有的看官只是在自己的虚机上搭建过测试的玩具。今天本篇用我自己的真实经历给大...

Double_K
2016/08/31
0
0
坑系列 --- 高可用架构的银弹

承上启下 之前那篇文章写出来以后我就觉得会有很多不同的意见,哈哈,那只代表我个人的意见啊,欢迎讨论。 先说说之前那一篇,我举例子举的,并不是说OA一定要这么设计,只是一种夸张的手法,...

wyh817
2016/12/08
33
0
中小型研发团队架构实践:任务调度Job

一、Job 简介 Job 类似于数据库中的作业,多用于实现定时执行任务。适用场景主要包括定时轮询数据库同步、定时处理数据、定时邮件通知等。 我们的 Job 分为操作系统级别定时任务 WinJob 和 ...

张辉清
2017/12/06
0
0
lvs+keepalived 高可用负载均衡模式分析

1. 前言 在《keepalived 双机热备》这篇文章中,我写了利用keepalived 这个开源软件实现高可用的功能,以及keepalived 高可用所使用的协议——利用vrrp 协议,在高可用网络组内广播自己的优先...

hello_cjq
03/30
0
0
民工哥公众号linux系统学习线路图大全

民工哥公众号linux系统学习线路图大全 <-----------点击链接进入 友侃有笑公众号Linux学习路线图 1、基础篇 Linux 基础优化配置 Linux系统根目录结构介绍 linux系统重要子目录介绍 Linux文件...

民工哥
2017/08/30
0
0
数据库高可用实战:化繁为简搭建一套轻量级架构

作者介绍 吴虞,SQL专家云团队成员,擅长解决SQL SERVER数据库性能、高可用、负载均衡等问题。 说到高可用,看官们会想到很多方案,也许是自亲身经历过系统从单机变成高可用的痛苦过程,也许...

吴虞
2016/09/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

nodejs安装以及环境配置(很好的node安装和配置文章,少走很多弯路)

一、安装环境 1、本机系统:Windows 10 Pro(64位) 2、Node.js:v6.9.2LTS(64位) 二、安装Node.js步骤 1、下载对应你系统的Node.js版本:https://nodejs.org/en/download/ 2、选安装目录进...

sprouting
5分钟前
0
0
Redisson

了解了Redisson,发现使用挺简单的,接下来准备深入学习一下。 Redisson介绍 Redisson是架设于Redis基础之上的一个Java驻内存数据网格(In-Memory Data Grid) Redisson在基于NIO的Netty框架上...

to_ln
6分钟前
0
0
python有哪些好玩的应用实现,用python爬虫做一个二维码生成器

python爬虫不止可以批量下载数据,还可以有很多有趣的应用,之前也发过很多,比如天气预报实时查询、cmd版的实时翻译、快速浏览论坛热门帖等等,这些都可以算是爬虫的另一个应用方向! 今天给...

python玩家
6分钟前
0
0
jq 判断复选框是否被选中,复选框后台接收

1. 效果 2. 代码 html部分: JS部分: var rememberLogin = $("#rememberLoginId").is(':checked')//获取复选框是否被选中 var rememberLoginval = $("#rememberLoginId").attr('value')//拿......

Lucky_Me
13分钟前
0
0
python爬虫日志(3)-爬去异步加载网页

在浏览器检查元素页面中,选取Network中的XHR选项即可观察每次加载页面,网页发出的请求,观察url的规律即可利用封装的函数对每一页进行爬取。

茫羽行
14分钟前
0
0
《趣谈网络协议》之为什么要学习网络协议?

一、协议 1.协议的定义 简单说协议就是一个规则,保证沟通交流双方可以互相听懂、理解或者可以双方合作可以顺利进行的一个约定和规则。 2.生活中例子 (1)有一种叫“程序猿”的物种,敲着一种...

aibinxiao
15分钟前
1
0
Python数据分析numpy基础-维度的认识

什么是多维数组? 核心对象是同型的多维数组(简单理解就是一个表格,通常内容都是些数字),具有相同的数据类型。 概念: 1. axes(轴):数组的维度统称为轴。 2. rank:轴的数量称为rank。...

十年磨一剑3344
19分钟前
0
0
Java 正则表达式相关资料

1.java正则表达式过滤html标签

IT追寻者
23分钟前
0
0
点赞出现数字变大效果

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .container{ padding: 50px; border: 1px solid #dddddd; } .item{ position: relative; } ......

南桥北木
41分钟前
0
0
anroid中批量将px转换成dp

package com.qu;import java.io.File;import java.io.FileWriter;import java.io.IOException;public class Aaaa {public static void main(String[] args) {String fi......

android-key
42分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部