滑动窗口算法 实现思路: 把时间单位划分为多个区间,一般都是均分为多个小的时间段 每个区间都有一个计数器,有一个请求落在该区间,则该区间内的计数器 + 1 没过一个时间段,时间窗口就会往右滑动一个,抛弃最老的一个区间并重置它的计数器,并纳入新的一个区间 拦截所有请求执行canPass操作,计算整个时间窗口内的请求总数需要累计所有时间片段的计数器,如果计数总和超过了限制数量,则落在当前窗口的请求都会被丢弃和拒绝 2023-12-09 算法 > 限流算法 #算法 #限流算法
漏桶算法 实现思路: 定义一个数据结构实现漏桶功能,当有外部流量涌入时把流量放入桶中 实现一个请求处理器,以恒定的速率获取桶中流量进行处理 123456789101112131415161718192021222324252627282930313233343536373839404142434445public class LeakyBucketRateLimit implements RateLi 2023-12-09 算法 > 限流算法 #算法 #限流算法
序列化与反序列化 1 Java领域的对象如何传输1.1 基于socket进行对象传输12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758public class User{ private String name; public St 2023-07-23 网络通信 #java #序列化
远程通信协议 1 HTTP请求流程在分布式架构中,有一个很重要的环节,就是分布式网络中的计算机节点彼此之间需要通信。这个通信的过程一定会涉及到通信协议相关的知识点。用浏览器访问各种网站,作为用户来说,只需要输入一个网址并且正确跳转就行。但是作为程序员,看到的可能就是这个响应背后的整体流程。所以通过一个http请求的整体流程来进行整理通信的知识。 1.1 DNS服务(域名解析)首先,访问一个域名,会经过DNS解析 2023-07-23 网络通信 #http #通信协议
通信系统架构设计理论与实践 1 通信系统网络架构通信系统架构是软件架构的基础设施和系统环境,在架构实践中,软件的性能、可用性、可靠性等质量属性很大程度上,受到基础设施和环境的影响,良好的基础设施能够有效地帮助提高系统架构的性能和可用性,增强可靠性。 通信网络主要形式:局域网、广域网、移动通信网。 1.1 局域网网络架构局域网 是单一机构专用计算机的网络。通常由计算机支持多种传输界等设备组成。特点 :是覆盖地理范围小、数据传输 2023-07-22 系统架构师 > 理论和实践 #系统架构师
大数据架构设计理论与实践 1 传统数据处理系统的问题1.1 传统数据库的数据过载问题传统应用的数据系统架构设计时,应用直接访问数据库系统。当用户访问量增加时,数据库无法支撑日益增长的用户请求的负载,从而导致数据库服务器无法及时响应用户请求,出现超时的错误。 关于这个问题的常用解决方法如下:(1)增加异步处理队列(2)建立数据库水平分区(3)建立数据库分片或重新分片(4)引入读写分离技术(5)引入分库分表技术 1.2 大数据 2023-07-22 系统架构师 > 理论和实践 #系统架构师
层次式架构设计理论与实践 1 层次式体系结构概述软件体系结构可定义为:软件体系结构为软件系统提供了结构、行为和属性的高级抽象,由构成系统的元素描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理,是构建于软件系统之上的系统级复用。 分层式体系结构是一种最常见的架构设计方法,能有效地使 2023-07-22 系统架构师 > 理论和实践 #系统架构师
Java IO演进 1 概念1.1 阻塞(Block)和非阻塞(Non-Block)阻塞和非阻塞是进程在访问数据的时候,数据是否准备就绪的一种处理方式,当数据没有准备的时候。 阻塞:往往需要等待缓冲区中的数据准备好过后才处理其他的事情,否则一直等待在那里。 非阻塞:当进程访问数据缓冲区的时候,如果数据没有准备好则直接返回,不会等待。如果数据已经准备好,也直接返回。 1.2 同步(Synchronization)和异步 2023-07-22 网络通信 #http #IO
云原生架构设计理论与实践 1 云原生架构内涵1.1 定义云原生架构 是基于云原生技术的一组架构原则和设计模式的集合,旨在讲云应用中的非业务代码部分进行最大化地剥离,从而让云设施接管应用中原有的大量非功能特性(如弹性、韧性、安全、码部分进行最大化地剥离,从而让云设施接管应用中原有的大量非功能特性(如弹性、韧性、安全、可观测性、灰度等),使业务不再有非功能性业务中断困扰的同时,具备轻量、敏捷、高度自动化的特点。 1.2 特点基 2023-07-22 系统架构师 > 理论和实践 #系统架构师
安全架构设计理论与实践 1 信息安全面临的威胁1.1 信息系统安全威胁的来源威胁可以来源于物理环境、通信链路、网络系统、操作系统、应用系统、管理系统。 1.2 网络与信息安全风险类别网络与信息安全风险类别可分为认为蓄意破坏(被动攻击,主动攻击)、灾害性攻击、系统故障、人员无意识行为。如图,网络与信息安全的风险类别: 1.3 常见的安全威胁(1) 信息泄露 :信息被泄露或透露给某个非授权的实体。 (2) 破坏信息的完整性 2023-07-22 系统架构师 > 理论和实践 #系统架构师