1 C10K问题
大家都知道互联网的基础就是网络通信,早期的互联网可以说是一个小群体的集合。互联网还不够普及,用户也不多。一台服务器同时在线100个用户估计在当时已经算是大型应用了。所以并不存在什么C10K的难题。互联网的爆发期应该是在www网站,浏览器,雅虎出现后。最早...
water
3年前 (2022-06-09) 1315℃ 0评论
2喜欢
本文用 19 张思维导图描述微服务相关的概念和架构,建议收藏。包括什么是微服务、架构演进、微服务架构、微服务解决方案、SpringCloud概览、Eureka、Ribbon、Feign、Hystrix、Zuul、Gateway、Config、Bus、OAuth2、Sleuth、...
water
3年前 (2022-03-24) 1400℃ 0评论
0喜欢
Spring Cloud的主要组件
Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术,实际上,Spring Cloud是一个全家桶式的技术栈,包含了很多组件。本文先从其最核心的几个组件入手,来剖析一下其底层的工作原理。也就是Eureka、...
water
3年前 (2022-03-24) 1312℃ 0评论
0喜欢
注册中心简介
微服务架构中,注册中心是最核心的基础服务之一,注册中心可以看做是微服务架构中的通信中心,当一个服务去请求另一个服务时,通过注册中心可以获取该服务的状态,地址等核心信息。
服务注册主要关系到三大角色:服务提供者、服务消费者、注册中心。
流程...
water
3年前 (2022-03-23) 1638℃ 0评论
1喜欢
作者:@pdai本文为作者原创,转载请注明出处:https://www.cnblogs.com/pengdai/p/13677095.html
最为常见的是代码中使用很多的if/else,或者switch/case;如何重构呢?方法特别多,本文带你学习其中的技巧。
...
water
3年前 (2021-11-11) 1938℃ 0评论
2喜欢
我为什么要写这篇
近来,和不少初学Spring或Spring Boot的小伙伴私信交流了关于项目目录结构划分和代码分层的问题。
很多小伙伴表示网上下载下来的开源项目看不懂,项目结构和代码分层看得很蒙,不知道应该以一个什么样的思路去学习和吸收别人的项目。
好,今...
water
3年前 (2021-10-20) 1492℃ 0评论
4喜欢
分天下为三十六郡,郡置守,尉,监” —— 《史记·秦始皇本纪》
所有用Maven管理的真实的项目都应该是分模块的,每个模块都对应着一个pom.xml。它们之间通过继承和聚合(也称作多模块,multi-module)相互关联。那么,为什么要这么做呢?我们明明在开发一个项目,...
water
3年前 (2021-10-20) 1451℃ 0评论
0喜欢
随着项目的不断发展,需求的不断细化与添加,代码越来越多,结构也越来越复杂,这时候就会遇到各种问题
不同方面的代码之间相互耦合,这时候一系统出现问题很难定位到问题的出现原因,即使定位到问题也很难修正问题,可能在修正问题的时候引入更多的问题。多方面的代码集中在一个整体结构中,...
water
3年前 (2021-10-20) 1668℃ 0评论
0喜欢
RPC框架主要组成:
通信框架通信协议序列化和反序列化格式
1 分类
RPC框架主要分为:
1.1 绑定语言平台
1.1.1 Dubbo
国内最早开源的RPC框架,由阿里巴巴公司开发并于2011年末对外开源,仅支持Java
架构
...
water
3年前 (2021-10-19) 1622℃ 0评论
0喜欢
幂等设计在分布式系统设计中占有很重要的地位,是实现数据一致性和事务完整性的重要手段。近期在优化交易系统,系统中很多地方用到了幂等设计,遂对其进行了总结。
幂等定义:
在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方法,...
water
3年前 (2021-07-28) 1882℃ 0评论
2喜欢
「数据一致性」和「高可用」其实本质是一个通过提升复杂度让整体更完善的方式。
本文主要讲一些让系统更简单,更容易维护的东西——「易伸缩」,首当其冲的主题就是「stateless」,也叫「无状态」。
服务的“状态”
无状态的服务
客户端的每次请求必须具备自描...
water
3年前 (2021-07-28) 2520℃ 0评论
1喜欢
Pipeline设计模式是我在来新公司才接触到的,也是在项目上广泛使用的一种东西。觉得挺有意思的,所以写一篇文章向大家介绍一下,希望大家喜欢。
需求
前几天小明接到一个需求,要开发一个“简单”的支付处理流程,用来处理用户下单后的一系列处理流程。这个处理流程有很多环节...
water
3年前 (2021-07-28) 2539℃ 0评论
1喜欢
导读:随着微服务的流行,熔断作为其中一项很重要的技术也广为人知。当微服务的运行质量低于某个临界值时,启动熔断机制,暂停微服务调用一段时间,以保障后端的微服务不会因为持续过负荷而宕机。本文整理自对限流降级开源项目Sentinel项目组成员子衿和宿何的专访。
子矜,阿里巴巴高...
water
3年前 (2021-07-28) 2138℃ 0评论
0喜欢
限流、熔断与降级
在我们进行系统设计时,必须要考虑系统的高性能、高并发、高可用。本文分享的是关于高可用的三大利器:熔断、限流、降级,我们使用通俗、易懂的语句将三个概念讲清楚。
限流、熔断与降级,此三者都是流量过大时,通过一定的方式去保护系统的手段,是应对海量服务的三...
water
3年前 (2021-07-28) 2137℃ 0评论
0喜欢
分层思想,是应用系统最常见的一种架构模式,我们会将系统横向切割,根据业务职责划分。MVC 三层架构就是非常典型架构模式,划分的目的是规划软件系统的逻辑结构便于开发维护。MVC:英文即 Model-View-Controller,分成模型层、视图层、控制层。将页面和业务逻辑分离,...
water
4年前 (2020-11-24) 2880℃ 0评论
0喜欢
前言
JSONP 请求本质上是利用了 “Ajax 请求会受到同源策略限制,而 script 标签请求不会” 这一点来绕过同源策略。跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个 origin (domain) 上的 W...
water
4年前 (2020-11-18) 1959℃ 0评论
0喜欢
1、背景
说起应用分层,大部分人都会认为这个不是很简单嘛 就controller,service, mapper三层。看起来简单,很多人其实并没有把他们职责划分开,在很多代码中,controller做的逻辑比service还多,service往往当成透传了,这其实是很多人...
water
4年前 (2020-11-04) 2193℃ 0评论
2喜欢
什么是AARRR模型?
Acquisition:获取用户
Activation:提高活跃度
Retention:提高留存率
Revenue:获取收入
Refer:自传播
确切的说AARRR并不算是一种数据分析模型,而是一整套数据分析的思路,逻...
water
4年前 (2020-10-21) 2048℃ 0评论
2喜欢
我们循序渐进,从内存、磁盘I/O、网络I/O、CPU、缓存、架构、算法等多层次递进,串联起高性能开发十大必须掌握的核心技术。
- I/O优化:零拷贝技术- I/O优化:多路复用技术- 线程池技术- 无锁编程技术- 进程间通信技术- RPC && 序...
water
4年前 (2020-10-09) 1687℃ 0评论
1喜欢
点击图片查看大图
MVC三层架构
转载请注明:学时网 » MVC三层框架...
water
4年前 (2020-08-03) 1995℃ 0评论
0喜欢