-
如何从零开始设计交易系统-01-系统介绍
声明
本节内容全部整理自简书 如何构建一个交易系统 系列,目的是为了大概学习一下流程。
本节不做过多个人的理解和展开,后续将围绕其中的各个点进行展开。
交易系统
比起下面我们要介绍的交易系统,一个真正的交易系统复杂程度将超过数个数量级, 交易系统作为一个比较成熟,也是最早电子化的系统。
估计比现在的大部分大家接触的系统都要早, 他的模型、 理论基础也非常健全; 整个产业非常成熟,提...
2020-06-19 01:26:03 |
Design
-
如何从零开始设计交易系统-00-序章
序章
交易系统作为很多公司的核心,其中包含很多东西。
按照目前个人的理解,从前端到后端应该涉及下列几个方面:
(1)toB/toC: H5/小程序/IOS/Android 等线上入口
包括但是不限于扫码,pos 机刷卡,机器手机 pos 等线下入口。
(2)支付网关
所有的交易入口的第一道门,一般由公司架构部门管理。
负责交易的鉴权,限流,路由,熔断,降级等。
一般和公司的基...
2020-06-19 01:26:03 |
Design
-
load balance 04-java 从零手写实现负载均衡
负载均衡系列专题
01-负载均衡基础知识
02-一致性 hash 原理
03-一致性哈希算法 java 实现
04-负载均衡算法 java 实现
本节我们来看一下如何实现一负载均衡框架。
源码
核心接口定义
public interface ILoadBalance {
/**
* 选择下一个节点
*
* 返回下标
* @pa...
2020-06-19 01:26:03 |
Distributed
-
load balance 03-consistent hash algorithm 一致性哈希算法 java 实现
负载均衡系列专题
01-负载均衡基础知识
02-一致性 hash 原理
03-一致性哈希算法 java 实现
04-负载均衡算法 java 实现
本节我们来看一下如何实现一个一致性 hash 框架。
源码
普通 hash
我们首先定义一下 hash 接口,以及最简单的 jdk 实现:
IHash
public interface IHash {
/**
...
2020-06-19 01:26:03 |
Distributed
-
load balance 01-负载均衡基础知识
负载均衡系列专题
01-负载均衡基础知识
02-一致性 hash 原理
03-一致性哈希算法 java 实现
04-负载均衡算法 java 实现
负载均衡
负载均衡是高可用网络基础架构的关键组件,通常用于将工作负载分布到多个服务器来提高网站、应用、数据库或其他服务的性能和可靠性。
传统架构
在这里用户是直连到 web 服务器,如果这个服务器宕机了,那么用户自然也就没办法访...
2020-06-19 01:26:03 |
Distributed
-
Gravatar-重新定义头像
Gravatar 是什么
“头像”是代表您在线的图像-与网站互动时,您的名字旁边会出现一幅小图片。
Gravatar是全球公认的头像。
您上传它并仅创建一次个人资料,然后当您参与任何启用Gravatar的网站时,您的Gravatar图像将自动在该位置跟随您。
Gravatar是网站所有者,开发人员和用户的免费服务。
它自动包含在每个WordPress.com帐户中,并由Automa...
2020-06-17 01:20:31 |
Tool
-
Base64 加密算法详解
场景
对于很多场景,比如说图片展示,还有一些前后端请求,有时候通过 url 会比较麻烦。
通过 Base64 转换处理之后比较方便,当然也有把这个当做一种加密策略的。(实际上只是转码,不是严格意义的加密)
Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Binary资料和字串资料彼此之间是可以互相转换的,十分方便。
在实际应用上,Base64除了能将Bi...
2020-06-17 01:20:31 |
Algorithm
-
面试算法力扣98-验证二叉搜索树
题目
给定一个二叉树,判断其是否是一个有效的二叉搜索树。
假设一个二叉搜索树具有如下特征:
节点的左子树只包含小于当前节点的数。
节点的右子树只包含大于当前节点的数。
所有左子树和右子树自身必须也是二叉搜索树。
示例 1:
输入:
2
/ \
1 3
输出: true
示例 2:
输入:
...
2020-06-08 07:13:08 |
Algorithm