摘要:
最近一直在准备PMP证书考试,以及进了新公司工作。学到了很多新东西与新知识,已经没有什么精力打理博客了,暂时停更了。 代码仓库会不间断更新新功能 后续更新:哈哈,已经过了 阅读全文
摘要:
1 采用异步设计 假设使用同步实现,伪装代码如下: Transfer(accountFrom, accountTo, amount) { // 先从 accountFrom 的账户中减去相应的钱数 Add(accountFrom, -1 * amount) // 再把减去的钱数加到 accountT 阅读全文
摘要:
三次握手过程 1 客户端的协议栈向服务器端发送了SYN包,并告诉服务器端当前发送序列号j,客户端进入SYNC_SENT状态; 2 服务器端的协议栈收到这个包之后,和客户端进行ACK应答,应答的值为j+1,表示对SYN包j的确认,同时服务器也发送一个SYN包,告诉客户端当前我的发送序列号 为k,服务器 阅读全文
摘要:
一、散列思想 散列表的英文叫Hash Table,也叫哈希表或者Hash表。散列表用的是数组支持按照下标随机访问数据的特性,所以散列表其实就是数组的一种扩展,由数组演化而来。可以说,如果没有数组,就没有散列表。 散列表时间复杂度是O(1)的特性。我们通过散列函数把元素的键值映射为下标,然后将数据存储 阅读全文
摘要:
冒泡排序 第一,冒泡排序是原地排序算法吗? 冒泡的过程只涉及相邻数据的交换操作,只需要常量级的临时空间,所以它的空间复杂度为 O(1),是一个原地排序算法。 第二,冒泡排序是稳定的排序算法吗? 在冒泡排序中,只有交换才可以改变两个元素的前后顺序。为了保证冒泡排序算法的稳定 性,当有相邻的两个元素大小 阅读全文
摘要:
互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称CI)。 持续集成 持续集成指的是,频繁地(一天多次)将代码集成到主干。它的好处主要有两个: 快速发现错误。每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容 阅读全文
摘要:
什么是MyCat 是目前最流行的分布式数据库中间插件 为什么使用MyCat 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性 阅读全文
摘要:
Google Protocol Buffer(简称 Protobuf)是一种轻便高效的结构化数据存储格式,平台无关、语言无关、可扩展,可用于通讯协议和数据存储等领域。 数据交互xml、json、protobuf格式比较 1、json: 一般的web项目中,最流行的主要还是json。因为浏览器对于js 阅读全文
摘要:
常用映射类型 核心的字段类型如下: String 字符串包括text和keyword两种类型: 1、text analyzer 通过analyzer属性指定分词器。 下边指定name的字段类型为text,使用ik分词器的ik_max_word分词模式。 上边指定了analyzer是指在索引和搜索都使 阅读全文
摘要:
创建索引库 ES的索引库是一个逻辑概念,它包括了分词列表及文档列表,同一个索引库中存储了相同类型的文档。它就相当于MySQL中的表,或相当于Mongodb中的集合。 关于索引这个语: 索引(名词):ES是基于Lucene构建的一个搜索服务,它要从索引库搜索符合条件索引数据。 索引(动词):索引库刚创 阅读全文
摘要:
Ribbon是Netflix公司开源的一个负载均衡的项目(https://github.com/Netflix/ribbon),它是一个基于HTTP、TCP的客户端负载均衡器。 服务端负载均衡 负载均衡是微服务架构中必须使用的技术,通过负载均衡来实现系统的高可用、集群扩容等功能。负载均衡可通过硬件设 阅读全文
摘要:
fastDSF介绍 FastDFS是用c语言编写的一款开源的分布式文件系统,它是由淘宝资深架构师余庆编写并开源。FastDFS专为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。 阅读全文
摘要:
公司用的架构,在此找了资料作为记录复看所用: 什么是Service Mesh? Service Mesh的概念最早是由Buoyant公司的CEO William Morgan在一篇文章里提出,他给出的服务网格的定义是: A service mesh is a dedicated infrastruc 阅读全文
摘要:
服务路由的应用场景 分组调用。一般来讲,为了保证服务的高可用性,实现异地多活的需求,一个服务往往不止部署在一个数据中心,而且出于节省成本等考虑,有些业务可能不仅在私有机房部署,还会采用公有云部署,甚至采用多家公有云部署。服务节点也会按照不同的数据中心分成不同的分组,这时对于服务消费者来说,选择哪一个 阅读全文
摘要:
微服务远程调用可能有如下问题: 注册中心宕机; 服务提供者B有节点宕机; 服务消费者A和注册中心之间的网络不通; 服务提供者B和注册中心之间的网络不通; 服务消费者A和服务提供者B之间的网络不通; 服务提供者B有些节点性能变慢; 服务提供者B短时间内出现问题。 注册中心宕机; 服务提供者B有节点宕机 阅读全文
摘要:
RabbitMQ的工作原理 它的基本结构 组成部分说明如下: Broker:消息队列服务进程,此进程包括两个部分:Exchange和Queue。 Exchange:消息队列交换机,按一定的规则将消息路由转发到某个队列,对消息进行过虑。 Queue:消息队列,存储消息的队列,消息到达队列并转发给指定的 阅读全文
摘要:
最近在公司进行API网关重写,公司内采用serverMesh进行服务注册,调用,这里结合之前学习对API网关服务进行简单的总结与分析。 由于采用了大量的nginx相关的东西,所以在此记录一下: 在nginx使用openresty 加入nginx模块 编辑nginx下conf配置文件nginx.con 阅读全文
摘要:
最近在公司进行API网关重写,公司内采用serverMesh进行服务注册,调用,这里结合之前学习对API网关服务进行简单的总结与分析。 由于采用了大量的nginx相关的东西,所以在此记录一下: 配置连接数 worker_processes:表示开启nginx的worker进程的个数,nginx启动会 阅读全文
摘要:
最近在公司进行API网关重写,公司内采用serverMesh进行服务注册,调用,这里结合之前学习对API网关服务进行简单的总结与分析。 网关的单节点场景: 网关的多节点场景: 网关的作用 * 统一入口 * 安全:黑名单、权限身份认证 * 限流:实现微服务访问流量计算,基于流量计算分析进行限流,可以定 阅读全文
摘要:
注意事项1. 去除不需要的 jar 开发工具 jar :springs-boot-devtools2. 监控一定要做好权限制或者去除 控制 jar :spring-boot-starter-actuator 监控 druid 的监控 swagger的接口 3 打包的时候要跳过测试 maven : c 阅读全文