- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 HBase的MSLAB (memstore-local allocation buffer)
本文简要介绍了HBase的写缓存MemStore和数据结构,以及作为写缓存主要组件的MSLAB的作用和源码分析。MSLAB是memstore-local allocation buffer的简写,对MemStore的内存进行合理的规划管理,有效优化了Java程序的GC问题。
2022-02-08 23:13:02 1220
原创 Zookeeper启动过程——源码分析
前言本文主要记录Zookeeper的启动过程,以及对于启动后Leader和Follower对于请求的简要处理流程。文中所展示的源码为Zookeeper首个tag版本0.0.1。由于该版本为Zookeeper初期版本代码结构简单清晰,读起来简单明了。整体框架结构后续变化较小,故后文代码均以此版本为例。(源码可通过Github下载,切换到早期分支即可)源码过长的部分进行了省略,主体逻辑上配合注释帮助理解。启动过程(源码分析)QuorumPeer作为启动Zookeeper集群服务的入口类。com.ya
2022-01-04 22:42:36 893
原创 C2 compiled引发的问题追踪
问题现象:运行压力测试代码中抛错定位到抛错的代码如下:获取异常堆栈数组的时候,返回的是空数组,导致出现数组越界。排查过程由于是测试反馈到这边的问题,给的日志和代码都是测试给截图过来的,信息量不大。但是根据图里面的方法来看,问题肯定是获取堆栈异常的时候返回了空数组,正常来说异常堆栈至少是有当前线程的堆栈信息的,怎么会返回的是空数组呢?首先看了java.lang.Throwable#getStackTrace 方法的描述,Provides programmatic access to th
2021-08-27 16:50:43 255
原创 Git svn 混用实践
git svn命令使用场景,公司古老的代码都存在svn服务器。svn对于现在的开发最大的问题就在于,创建分支相比于git的本地分支实在是太重了。所以对于这些项目,在工作中使用了一段时间的git svn命令,本地使用git管理分支,远端代码仓库使用svn管理。初始化仓库(git svn clone)使用中由于是已经存在了svn的仓库,大多数时候都不需要使用git svn init来初始化仓库。使用更多的是 git svn clone从远端clone仓库。实践建议:git svn clone -s
2021-04-13 20:33:02 1104
原创 Git与SVN混用作为版本控制
Git与SVN混用作为版本控制使用场景公司的项目使用的是SVN服务器作为版本控制而且由于权限管理原因和部分员工不愿意使用Git所以没有做迁移。所以SVN将一直作为公司的主要版本控制工具来使用。本人由于一直使用Git基本没有接触过SVN,对SVN不够了解。对于Git操作比较熟悉,也可以方便在本地建立临时分支来使用。所以决定以SVN作为本地代码和单位代码仓库的管理工具,以Git作为本地开发的版本管理工具来使用。使用方式网上有很多git和svn混用的方式,我这里也是参考了一些网上的文章博客等。简要介绍一下
2020-05-09 14:17:27 780
原创 Mybatis新增同时返回主键功能的两种方式
Mybatis新增并返回主键功能本人使用的是Mybatis3.X的版本官方文档给出了两种方式实现:useGeneratedKeys:(仅对 insert 和 update 有用)这会令 MyBatis 使用 JDBC 的 getGeneratedKeys 方法来取出由数据库内部生成的主键(比如:像 MySQL 和 SQL Server 这样的关系数据库管理系统的自动递增字段),默认值:...
2018-10-14 15:07:34 3755
原创 设计模式之 装饰模式
装饰模式装饰模式,顾名思义就是向已有的物品上添加装饰物,但是本质仍是原有的物品。 就好比为一幅画添加颜色,添加光影,加上画框等,但本质上被装饰物仍然是一幅画。示例该示例装饰字符串输出,为字符串输出加上左右边框,和上下边框。 类名 说明 备注 Display 用于显示字符串的抽象类 顶层功能抽象 StringDisplay 用于...
2018-09-04 17:42:37 210
原创 Java设计模式——桥接模式(Bridge)
桥接模式简介桥接模式的主要目的是将类的功能层次结构和类的实现层次结构连接起来。类的功能层次结构父类具有基本功能子类中加入新的功能 这种为了增加新的功能,而产生的层次结构叫做类的功能层次结构类的实现层次结构父类通过定义抽象方法来定义接口子类通过实现具体方法来实现接口 这时产生的层次接口叫做类的实现层次结构当我们编写子类的时候,需要先确定自己的意图,“是增...
2018-08-29 17:42:27 324
原创 springboot2.x 的 RedisCacheManager变化
springboot2.x 的 RedisCacheManager变化由于最近在学着使用redis做缓存,使用的是springboot2.x来搭建的项目。 看了看网上的一些教程,但是大多数教程都是基于1.x的版本来讲解的,但是springboot2.x之后发生了一些变动,网上想找一些资料不太容易。springboot配置缓存过期时间,网上大部分资料是使用ReidsCacheManager...
2018-07-05 22:51:00 25950 2
原创 springboot2.0使用redis缓存问题汇总
springboot2.0使用redis缓存踩坑本人使用的是springboot 2.0版本,缓存也是第一次使用,可以算得上是个小白了配置springboot使用redis缓存由于第一次使用缓存功能,基本上是按照网上的一些大神们的博客或者教程来完成首先需要配置pom文件引入redis <!--redis和缓存依赖--> &l...
2018-07-04 18:21:15 2339
翻译 如何设计RESTful API——《Web API Design: The Missing Link》翻译
1.ForewordURI templates:they are like URLs with variables in them that can be replacedwith values to form a usable URL类似带路径参数的URLexample:The HTTP methods GET, POST, PUT or PATCH, and DELETE can be use...
2018-04-26 23:39:31 1011
基于SSM框架的仿微博系统【spring + springmvc + mysql】毕设
2023-11-02
软考高项十大管理过程组输入输出汇总
2023-10-30
基于SSM的网上书店【Spring、SpringMVC、MySQL】【毕设】
2022-05-17
教学辅助管理系统【springboot + vue + mysql】【毕设】
2022-05-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人