Elivs Blog

ENNERVATE

algorithm-project

2020

20200716 In an election, the i-th vote was cast for persons[i] at time times[i]. Now, we would like to implement the following query function: TopVotedCandidate.q(int t) will return the number of...

mongoshake-master-slave

Mongo线上高可用双主架构优化性能提高45%(数据库调优)

现状: 背景: 线上多个应用运用同一个数据库,所以数据库不能停机迁移数据。并且线上A应用最近用户急增,读写总量曾高达150万qps,所以急需做横向扩容,并且写入更新量较高,所以采用双主方案。 方案: 采用mongoShake做线上数据动态迁移,仅剩的两台机做互为主从方案。Mongo版本Mongo3.6.4 实践遇到的坑: 互为主从架构属于3.4版本的Feature,所以...

optimize-mongo-performance

小程序后端百万级高并发MongoDB单机性能数五倍提升优化实践(数据库调优)

现状: 背景: 从离职旧同事手上接过来一个活,线上旧应用数飞速猛涨,应用的复工复学的带来某时段的刚需用户登录数几何级上升。 应用现状: 前置GATE横向扩容导致刚需流量直接灌入后端登录应用 采用了Mongo数据库并不是缓存数据库,数据存储时采用内存到文件映射导致内存飙高 Mongo过旧采用单节点状态, 峰值tps几乎已经到达节点上限,同時平均服务器IO已到达100%,随...

Broccoli-framework-analysis

自建技术框架分享

框架链路如下: 注:Blog无法支持mermaid,正在解决,请把submermaid拷贝到Typora中查看。 Typora: 下载地址“ 框架调用链路图 graph LR subgraph HTTPGateway newHTTPGateway-.->|bindSwaggerUIForAPITest|serveSwaggerUI serveSwaggerUI-...

Broccoli-framework-technology-selection

自建技术框架分享

Broccoli技术选型如下:

Hyperledger-Fabric-Analysis

区块链技术分享

Hyperledger Fabric Analysis 分布式账本 区块链核心概念是分布式帐本,就像下面的图所示,同样的帐本(全量的交易数据,详见下节)在任意一台节点(不包括客户端)上都有。 分布式账本的数据结构 它由多个区块构成了一个有时序的链表,而每个区块里含有多条交易trasaction(缩写为tx)构成的链表。上方有一个WorldState世界状态,这其实是为了提升性...

Hyperledger-Fabric-Install

区块链技术分享

区块链基本概念 定义 区块链起源于中本聪的比特币,作为比特币的底层技术,本质上是一个去中心化的数据库。 区块链技术是一种不依赖第三方、通过自身分布式节点进行网络数据的存储、验证、传递和交流的一种技术方案。 区块链是一种由多方共同维护,使用密码学保证传输和访问安全,能够实现数据一致存储、无法篡改、无法抵赖的技术体系。 大多为块链结构实现数据存储;也存在非链式的DAG、Ha...

log-agent

自建日志框架

首先先来个小例子说明问题: 准备工作 1、升级golang 版本到 1.12 Go下载 2、添加环境变量 GO111MODULE 为 on 或者auto 3、GO111MODULE=auto 准备完毕,非常简单吧!! 首先尝试创建一个hello项目演示GoModule 首先,在$GOPATH/src路径外的你喜欢的地方创建一个目录,cd 进入目录,新建一个hello.go文件,内容如下...

golang-1.11-modules-再见GoPATH

Golang技术迭代

首先先来个小例子说明问题: 准备工作 1、升级golang 版本到 1.12 Go下载 2、添加环境变量 GO111MODULE 为 on 或者auto 3、GO111MODULE=auto 准备完毕,非常简单吧!! 首先尝试创建一个hello项目演示GoModule 首先,在$GOPATH/src路径外的你喜欢的地方创建一个目录,cd 进入目录,新建一个hello.go文件,内容如下...

Sequence to Sequence

主流技术分享

RNN Analysis RNN Analysis 中文文档