agmtopy
基于testcontainers的集成测试方案 基于testcontainers的集成测试方案
基于testcontainers的集成测试方案 Testcontainers是一个Java库,支持JUnit测试,它提供常见数据库,Selenium Web浏览器或可以在Docker容器中运行的任何其他东西的轻量级,一次性的实例。 te
2020-07-31
Leaf美团点评分布式ID生成系统 Leaf美团点评分布式ID生成系统
Leaf-美团点评分布式ID生成系统 leaf作为一个分布式id生成系统,代码简洁且高效,理论指导部分为Leaf——美团点评分布式ID生成系统,工程实践为https://github.com/Meituan-Dianping/Leaf 理论
2020-07-12
系统业务监控的思考 系统业务监控的思考
系统业务监控,主要的目的是为了让内部人员可以更清楚当前系统的业务运行状态。它和系统运行级的监控分别代表的一个是业务维度的监控、一个是系统资源维度的监控,关注的点不一样。业务监控复杂的点在于监控策略与业务强关联并且数据准确性要求较高。以下根
2020-07-06
java面试杂记 java面试杂记
数据库知识 4-1.数据库设计原则 单张数据表字段不宜超过20个,如果超过20个,需要考虑拆分表 数据表字段都应该是not null,如果有null值,需要考虑用无意义值填充 索引不应该过多,最多不需要超过6个 不过度遵守数据库范式,通
2020-06-25
分布式中的一致性paxos算法以及其实现zab协议 分布式中的一致性paxos算法以及其实现zab协议
分布式中的一致性paxos算法以及其实现zab协议 分布式最重要的问题就是如何解决,不同节点中数据的一致性。paxos算法就是最重要的解决这个问题的理论。 paxos基础 Quorum机制 Quorum机制是表示在分布式系统中,只要大于总
2020-06-23
《java8实战》读书笔记 《java8实战》读书笔记
《java8实战》读书笔记 主要是关于java8的一些笔记。 基础 java8中设计的三个编程概念 流处理 函数传递 并行与共享的可变数据 函数传递 行为参数化(函数传递)就是可以帮助你处理频繁变更的需求的一种软件开发模式 例1:
2020-06-20
gradle的安装与使用 gradle的安装与使用
gradle的安装与使用 由于新的项目大多是使用gradle进行依赖管理,因此在这里将其用法做一下总结 安装 主要步骤是: 下载安装包 配置环境变量 查看版本号 gradle -v 显示对应版本号表示安装成功 基础知识 g
2020-06-16
Zookeeper的相关思考 Zookeeper的相关思考
Zookeeper的相关思考 相信大部分同学第一次接触到ZooKeeper(后文中简称为zk)都是和Dubbo一起接触到的,在Dubbo开源时将阿里内部的注册中心进行剥离,用zk作为服务发现的注册中心进行使用的。在大规模的微服务化一段时间后
2020-06-08
Guava的使用 Guava的使用
Guava的使用 线程池的使用 ListenableFuture是基于装饰器模式实现的 示例 String nameFormat = "thread_factory_%d"; ThreadFactory shardi
2020-05-20
微服务架构下分布式事务的思考 微服务架构下分布式事务的思考
微服务架构下分布式事务的思考 从本地事务到分布式事务的演变 分布式事务是什么? 事务是什么? 二阶段提交 有一个协调者分别在准备和执行阶段对参与者发送命令和进行事务处理的逻辑 三阶段 三阶段是作为二阶段的一种改良策略,优化改良了超时等待的问
2020-05-14
git多环境配置 git多环境配置
疫情期间,需要在家远程办公,因此需要在电脑上配置两套git环境分别是github、gitlab的。在配置过程中遇到了一些阻碍,特此记录下来。 步骤一:生成SSH-Key ssh-keygen -t rsa -C "email@xx.com"
2020-02-21
3 / 4