改造apollo配置中心客户端支持从Spring读取配置
主要问题 Apollo客户端的配置主要集中在2部分,这就导致割裂了配置,十分不便: ApolloApplicationContextInitializer 在spring-boot环境下,该类中,通过对配置项apollo.bootstrap.enabled的开启,来达到Apollo在spring-boot环境下的autoconfig,其中主要是in…
大循环与小循环嵌套的性能比较(分支预测)
Java基础:ThreadLocal及其原理
Java:JMH与基准测试
面试被问到一个很有意思的问题:大循环和小循环,哪个在外哪个在里有区别吗?为什么?哪种更快? 当时确实没有答上来也没想到,明明之前看CSAPP了解过CPU的指令分支预测的,但是实在没有想到这里去。 先上个图: 再来个解释的比较清楚的博客: https://segmentfault.com/a/1190000006889989 简而言之,就是当进行循环…
ThreadLocal的用处 ThreadLocal是一个多线程的辅助工具类,目的是方便开发者维护多线程中的共享变量。我们知道如果我们想要在一个线程中一直访问一个变量或者在线程上下文中保存一个变量,我们要么将该变量声明为static静态,要么就在每一步函数调用中均传入该变量。这两种方式,static方式不能解决每个线程同时分别持有的问题。每一步函数…
介绍 JMH是一套Java基准测试工具,用于对Java执行进行基准测试以及生成测试报告。平时应用于Java一些基础Api或者一些工具类这种离开网络因素的纯系统测试。 使用方式 maven引入: <dependency> <groupId>org.openjdk.jmh</groupId> <artifact…
单元测试:单元测试中的mock
单元测试:单元测试编写的原则
SpringBoot WebSocket技术
Linux常用命令
公司要求提升单元测试的质量,提高代码的分支覆盖率和行覆盖率,安排我研究单元测试,指定方案分享并在开发部普及开。整理完资料后,同步一下到博客。 单元测试中的mock的目的 mock的主要目的是让单元测试Write Once, Run Every…
公司要求提升单元测试的质量,其中我作为方案和推动的主导,对开发过程中的单元测试,有了一些思考和总结 单元测试编写的目的 单元测试编写的目的,是面向计算机特性的,基于函数的in-out,所以单元测试的好帮手就是断言,通过不断的构造输出并对结果进…
最近看了Spring in Action,了解了一下WebSocket和Stomp协议相关技术,并搭建了一个项目。网上的例子不完整或者描述不清,所以自己记录一下以作备忘。 一.配置 Spring Boot项目搭建完成后,基于Spring Boot一切皆配置的概念,添加WebSocket支持十分简单。 首先是maven依赖: <dependen…
根据进程名杀死进程 ps -ef | grep process_name | grep -v grep | awk '{print $2}' | xargs kill -9 docker拉取镜像 docker pull localhost:5000/v2/moyu-eureka-server:latest docker删除镜像 docker ima…
分布式系统:数据库扩容提效-以及一次数据库分库分表实践
数据库扩容随着架构的演进 数据库扩容一般都是随着系统建设一步步演进的,所以这里随着系统的演进,一一介绍扩容的方案。 读写分离 一开始肯定是一个数据库,但是压力上来了之后,最容易做的就是读写分离,即1主多从,主机负责写,从机负责读,像mysql就提供类似功能,通过配置实现master-slaver的模式。但是读写分离的逻辑还是要在程序中写的,即配置多…
first_post
+++ title = 'First_post' date = 2020-01-10T00:00:00+08:00 +++ 单纯只是一个测试而已 asd asd as das das dsa d asd asd as d as 仨