随笔分类 - 分布式系统
摘要:1.功能 Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供 了一系列的分布式的Java常用对象,还实现了可重入锁(Reentrant Lock)、公平锁(Fair Lock、联锁 (MultiLock)、 红锁(RedLoc
阅读全文
摘要:1.配置 spring: minio: url: http://10.17.31.178:9000 accessKey: minio secretKey: minio123 bucketName: rental 2.upload @Component public class MinIoUtil {
阅读全文
摘要:0.背景 三台windows主机 都搭建了springboot环境,并启动相同的项目 1.负载均衡 通过同一个url访问不同的主机 nginx部署在ip1机器上 nginx配置文件 http { include mime.types; default_type application/octet-s
阅读全文
摘要:1.服务端 1.1 字符消息 NettyServer /** * @author liu.wenxuan1 * @Description: netty服务端处理字符消息 解码器问题 不能同时处理文件和字符 */ public class NettyServer { private static fi
阅读全文
摘要:1.构成 1.1 Elasticsearch Elasticsearch是一个高度可扩展的全文搜索和分析引擎,基于Apache Lucence(事实上,Lucence也是百度所采用的搜索引擎)构建,能够对大容量的数据进行接近实时的存储、搜索和分析操作。 1.2 Logstash Logstash是一
阅读全文
摘要:1.背景 2.概念 2.1 文档Document 类似mysql一列,json格式存储 2.2 索引Index 索引类似数据库里的表,相同文档类型的集合 2.3 映射mapping 类似表结构 属性: type: 类型 text(可分词的文本)、keyword(精确值,例如:品牌、国家、ip地址)。
阅读全文
摘要:1.依赖 <dependency> <groupId>org.redisson</groupId> <artifactId>redisson-spring-boot-starter</artifactId> <version>3.25.0</version> </dependency> 2.yml
阅读全文
摘要:1.依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.0.0</version> <relativePath/>
阅读全文
摘要:1.类型 1.1 ShardingSphere-JDBC客户端 客户端直连数据库,jar包形式提供服务,适用于任何ORM框架 1.2 ShardingSphere-Proxy服务端 透明化的数据库代理端,实现数据库二进制协议,对异构语言提供支持,可直接当做Mysql/PostgreSQL使用 1.3
阅读全文
摘要:Netty是一个异步的、甚于事件驱动的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端 1.使用 依赖 <dependency> <groupId>io.netty</groupId> <artifactId>netty-all</artifactId> <version>4.1.39.
阅读全文
摘要:MinIO 是一个高性能的对象存储服务器,用于构建云存储解决方案。它使用Golang编写,专为私有云、公有云和混合云环境设计。它是兼容Amazon S3 API的,并可以作为一个独立的存储后端或与其他流行的开源解决方案(如Kubernetes)集成。 1.部署方式 Minio 提供了两种部署方式:单
阅读全文
摘要:1.消息队列应用场景 用于系统内部组件之间的通信,也用于与其他服务之间的交互,增加系统可拓展性 相比于RPC服务,消息队列系统直接更好的实现依赖倒转 请求缓冲:作为缓冲层,平滑各个业务系统之间处理性能的不同等,企业数据总线ESB的概念,实现的就是各个系统之间的集成 数据分发:支持一对多的广播机制,比
阅读全文
摘要:1.稳定性 高可用核心 服务可用性是对服务等级SLA描述 一个核心线路依赖10个服务,可用性99.99%,这个线路就是99.99%的10次方,在生成环境还有考虑服务发布,部署等导致宕机的情况,可用性会降低 1.1 高可用保证 海量用户请求 应用Docker容器化编排,分布式需要快速扩展集群 容器化编
阅读全文
摘要:1.缓存分类 1.1 前端缓存:页面和浏览器缓存,App缓存 页面缓存属于客户端缓存一种,第一次访问时,页面缓存将浏览器渲染的页面存储在本地。用于数据更新比较少的数据,大部分浏览器自身会实现缓存功能,对于页面中的视频图片,浏览器都会进行缓存,App内各级缓存更加复杂。 HTML5支持本地储存,包括l
阅读全文
摘要:1.RPC Remote Procedure Call 进程间通信方式:通过网络从远程计算机程序上请求服务而不需要了解底层网络技术的协议 RPC允许程序调用另一个地址空间的过程或函数,而不用程序显式编码这个远程调用的细节,比如俩台服务器AB,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数
阅读全文
摘要:1.数据库读写分离 业务读多写少,分离读操作和写操作 将访问压力从主库转移到从库 但是需要动态更新的业务场景,不进行读写分离 由于关系型数据库对事务支持,一般选择性能高的NoSQL 1.1 实现 一主一从 一主多从 1.2 MySQL主从复制技术-binlog日志 InnoDB引擎的主从复制,通过二
阅读全文
摘要:1.分布式事务 关注分布式场景下处理事务,事务的参与者,支持事务的服务器,存储资源分布位于分布式系统的不同节点上。是一个业务操作,由多个细分操作完成,细分操作又分布于不同服务器上。 分布式事务伴随系统拆分出现的,主要来源于存储和服务的拆分。 存储层拆分 数据库拆分到多库多表,业务进行跨表跨库更新时要
阅读全文
摘要:1.特点 可扩展性 服务无状态:服务状态是服务请求所需的数据。无状态服务处理数据全部来自请求携带的信息,cookie通过客户端保存token来保持状态。 有状态服务:服务存储请求上下文的数据信息,session维持用户信息 2.CAP理论 在一个分布式系统中只能具有以下其中两个特性: Consist
阅读全文
摘要:1.下载安装 https://dl.min.io/server/minio/release/windows-amd64/minio.exe 2.启动 powershell下 C:\minio 文件存储目录 .\minio.exe server C:\minio --console-address :
阅读全文
摘要:1.内网VPN连接 导入企业和个人证书: 控制面版 -> 搜索证书 ->用户账号的证书管理 点击个人 导入证书 下载内部VPN 输入账号密码连接 2. 运行项目 导入本地Maven仓库 修改配置: 将服务名改成带自己名字后缀的 3.PLSQL使用 下载压缩包,解压安装 输入破解码激活 运行chine
阅读全文

浙公网安备 33010602011771号