New Boy

a new blog for a new boy

reactor单线程,多线程,主从的java代码实现

前言 从最初,自己就对网络编程比较感兴趣,这段时间看了netty权威指南,收获很多。我觉得所有的知识都是要落地才能体现其价值,也为了加深自己对reactor模式的理解,自己也就敲了一遍,当然中间也遇到了很多困难,废话不多说,上代码。 以下代码使用java原生nio实现,未考虑半包,粘包等问题 common类 主要包含客户端启动代码,之后的服务端使用同一个客户端代码,还有就是写字节函数...

mysql基准测试与sysbench

前言 之前常常会看到QPS,TPS这些字样,确实这些指标也是衡量数据库性能的非常重要的指标,而基准测试则是抛开业务,对机子上的数据库进行测试,自己也尝试用sysbench做了一遍,废话少说。 ##测试过程 测试主要依赖自带的oltp.lua这个脚本文件,不同系统应该会在不同文件夹下,我的是mac,位于/usr/local/Cellar/sysbench/1.0.11_1/share/s...

记一次简单OOM分析

前言 说到OOM,out of memory也是一个广泛存在的问题,如果线上出了问题,临时抱佛脚肯定是不行的,所以未雨绸缪是必须的。 测试过程 首先是程序的准备 准备了两个OOM的程序 import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /** * @Autho...

mysql中的explain的使用

前言 由于开源简单等优势,mysql近几年也变得越来越火,最近看到一个报告,报告显示中国开发者常用的数据库中,mysql稳居第一,使用比例高达79.0%,而且在“全球开发者常用的数据库”中,mysql也稳居第一,高达55.6%。数据库的io一直是系统性能调优中非常重要的一环,写出好的sql语句也是开发者必须具备的基本素质之一,explain的合理使用也可以帮助开发者对sql语句进行相关的优...

[转]java基础-内存泄漏与内存溢出

前言 主要根据之前看的资料进行了一些修改。 原文地址 要点 内存泄露是指程序中间动态分配了内存,但在程序结束时没有释放这部分内存,从而造成那部分内存不可用的情况,重启计算机可以解决,但也有可能再次发生内存泄露,内存泄露和硬件没有关系,它是由软件设计缺陷引起的。 内存泄漏可以分为4类: 1) 常发性内存泄漏。发生内存泄漏的代码会被多次执行到,每次被执行的时候都会导致一块内...

linux相关命令学习笔记

前言 最早应该是在操作系统的课程上接触到了linux系统,那时候其实对linux并没有什么具体的概念,真正接触应该大三下学期,给自己的电脑装了双系统,也在ubuntu上开发过一个web项目,再到暑假去看了《linux权威指南》,也算是入了门了,不过其中的命令也是非常多,常常会忘记,之前会吧平时用到的一些命令存在txt中,既然现在开了博客,也打算一起整理过来。 命令 ###系统工作命令 ...

[转]jvm工作原理和流程

前言 暑假期间看了一段时间的《深入JVM虚拟机》,再加上网上一些归纳比较好的知识,对jvm也是可以说上几句,这篇博文更多的是整理其他博主的博文,也感谢互联网让我站在了巨人的肩膀上。 先放上参考链接吧 Java 详解 JVM 工作原理和流程 内容 作为一名Java使用者,掌握JVM的体系结构也是必须的。 说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,...

mybatis自动生成工具

前言 实习也一个月多了,也学到了很多的东西,记得刚开始接触开发时,其中感觉最恶心的是mybatis的相关文件的编写,主要是Mapper文件,之前自己的个人项目中,数据库相关的字段命名都是很不规范的,而且字段也少。所以一开始接触企业项目时真的是头痛,mapper基础文件又长。第二天感觉这样效率很低,就自己写了一个java程序,通过在建模工具中导出的sql建表语句进行生成需要的部分。最近不知怎...

github sshkey添加

SSH配置 ssh配置其实很简单,网上也有很多的教程,直接给个传送门吧,一步一步来就OK了,windows下github ssh配置,linux/mac下配置 git协议 通常使用git时,进行push,pull,clone等操作时,是使用https协议和SSH协议 #通常将远程仓库拉到本地有以下两种方式 git clone git@github.com:dingmingcheng/...

个人博客搭建教程

  先写写我的博客的搭建教程吧,希望能帮到需要的人。 总体情况   我的博客搭建环境是在mac,主要是使用了jekyll框架搭建,之前看网上的教程都是使用hexo,自己之前也是用hexo试过,不过看到一个很不错的模版,也有一定的扩展性,于是就用了jekyll来搭建,网站部署在github上,就是加载速度有点慢…。主题模板也是使用了网上的一个模板。 环境搭建   以下的搭建是在mac环...