dubbo的介绍一。前引软件构架的发展过程:集中式架构(单体应用) 》垂直架构 》分布式架构 》流动计算架构(SOA) 集中式架构:就一个tomcat,所有功能部署在一起。。不能高并发 垂直架构:多个tomcat, 分成多个项目,项目与项目之间的存在数据冗余,耦合性较大 分布式架构:多个tomcat ...
分类:
其他好文 时间:
2020-07-02 21:28:05
阅读次数:
57
锁 重入锁 读写锁 悲观锁、乐观锁 公平锁、非公平锁 自旋锁 分布式锁 锁 锁是用来控制多个线程访问共享资源的工具。作为并发控制,保证一致性的工具,锁本质上是一个标记。 把这个标记放在关系数据库(RDBMS)中,我们就可以使用数据库的方式实现锁机制。比如设计一张锁表,表中有个字段state,stat ...
分类:
编程语言 时间:
2020-06-30 20:46:05
阅读次数:
65
上一篇我们讲了微服务架构的前世今生(一):传统行业向互联网行业的转型,本文接着3讲述微服务技术架构演变。 下图表示从单体应用逐渐转变为微服务应用。 一、单一应用架构 通俗地讲,“单体应用(monolith application)”就是将应用程序的所有功能都打包成一个独立的单元。当网站流量很小时,只 ...
分类:
其他好文 时间:
2020-06-25 21:23:23
阅读次数:
82
一、为何要用雪花算法 1、问题产生的背景 现如今越来越多的公司都在用分布式、微服务,那么对应的就会针对不同的服务进行数据库拆分,然后当数据量上来的时候也会进行分表,那么随之而来的就是分表以后id的问题。 例如之前单体项目中一个表中的数据主键id都是自增的,mysql是利用autoincrement来 ...
分类:
数据库 时间:
2020-06-22 21:15:03
阅读次数:
343
服务拆分 拆分粒度不应该过分追求细粒度,要考虑适中不能过大或过小。按照单一职责原则和康威定律,在业务域、团队还有技术上平衡粒度。拆分后的代码应该是易控制,易维护的,业务职责也是明确单一的。 AKF扩展立方体,是一个叫AKF的公司的技术专家抽象总结的应用扩展的三个维度。理论上按照这三个扩展模式,可以将 ...
分类:
其他好文 时间:
2020-06-21 12:04:31
阅读次数:
72
微服务体系 什么是微服务? 什么是单体架构? 单体架构的问题? 1.复杂性高 1.1 代码难以理解,复用性低 1.2 难以理解导致代码质量低,复杂性进一步增加 1.3 代码难以被修改和重构 2.伸缩性差 2.1 单体只能按整体横向扩展,无法分模块垂直扩展 2.2 IO密集型模块和CPU密集型模块无法 ...
分类:
其他好文 时间:
2020-06-17 23:50:02
阅读次数:
150
最近闲下来,打算把Knative的核心组件Serving给学习下,会继续采用k8s源码学习的方式,管中窥豹以小击大,学习serving的主要目标: 可观测性基础设施、自动伸缩、流量管理等核心组件的设计与实现,今天先简单臆测下,感兴趣的同学, 一起来学习吧 1. 基于云原生的单体应用构建 大多数公司的 ...
分类:
其他好文 时间:
2020-06-11 00:49:56
阅读次数:
79
01-学习vue前的准备工作 02-模板字符串 03-箭头函数 04-对象的单体模式 05-面向对象 06-Nodejs介绍 ...
分类:
其他好文 时间:
2020-06-11 00:36:25
阅读次数:
38
目录 (1)单块架构 (2)初步的高可用架构 (3)千万级用户量的压力预估 (4)服务器压力预估 (5)业务垂直拆分 (6)用分布式缓存抗下读请求 (7)基于数据库主从架构做读写分离 (8)总结 本文将会从一个大型的网站发展历程出发,一步一步的探索这个网站的架构是如何从单体架构,演化到分布式架构,然 ...
分类:
Web程序 时间:
2020-06-08 12:17:33
阅读次数:
89
上一个章节,我们搭建了一个最简单的单体服务项目,单体架构就是把所有的功能都放在一个工程项目中。 但是当访问量不断增加,我们只部署一套环境就有些吃不消了,这时候有什么解决方案么? 如果我们去一个超市购物,当客户数量不多的时候,超市只开通一个结账通道就可以满足需要,但是当客户数量增加,只有一个结账通道的 ...
分类:
其他好文 时间:
2020-06-07 10:49:26
阅读次数:
63