自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Coding Road

用于记录JAVA相关学习中的笔记

  • 博客(61)
  • 资源 (13)
  • 问答 (1)
  • 收藏
  • 关注

原创 Protobuf学习笔记

Protobuf简介Protobuf是谷歌开源的一个序列化框架,支持跨语言,高性能等特性,在用于网络传输进行序列化的场景下使用广泛。它具有以下优点:性能好,效率高代码生成机制,数据解析类自动生成支持向后兼容和向前兼容支持多种编程语言(java,c++,python)这里学习的基于proto3版本,与proto2有稍许区别。Protobuf编译学习Proto...

2018-05-12 13:34:03 529

原创 Linux下安装MySQL5.7版本

下载MySQL我是从CSDN上下载的32位的版本,可以参考下,实例如图: 安装解压tar包注意:解压tar包和解压tar.gz包的方式是有区别的。解压tar包通过命令[root@promote install]# tar xvf xxx.tar而解压tar.gz包则要通过[root@promote install]# tar xzvf xxx.tar...

2018-05-12 13:32:32 558

原创 Linux性能调优方法总结(二)

上一章节Linux性能调优方法总结(一)讲述了如何对Linux的网络进行调优,本章节讲述如何对磁盘进行调优。磁盘子系统的调优磁盘在LAMP架构中扮演着重要的角色,静态文件、模板和代码都来自磁盘,组成数据库的数据表和索引也来自磁盘,对磁盘的许多调优(尤其是对数据库)集中于避免磁盘访问,因为磁盘访问的延迟相当高,因此,花一些时间对磁盘硬件进行优化是有意义的。首先要做的是,确保在文件...

2018-05-12 13:31:20 3160 1

原创 Linux性能调优方法总结(一)

网络性能调优大多数Linux发行版都定义了适当的缓冲区和其他TCP参数,可以通过修改这些参数来分配更多的内存,从而改进网络性能。设置内核参数的方法是通过proc接口,也就是通过读写/proc中的值。幸运的是,sysctl可以读取/etc/sysctl.conf中的值并根据需要填充/proc,这样就能够更轻松地管理这些参数。下面展示了在互联网服务器上应用于Internet服务器的一些比较...

2018-05-12 13:30:12 7875 1

原创 FastDFS 5.0.8搭建步骤

卸载旧版本kill掉原来的进程删除原来的安装目录删除原来的配置文件。在/etc目录下删除脚本,在/usr/local/bin目录下和/usr/bin目录下安装环境本篇是将tracker和storage安装在同一台服务器上,同时在该服务器上安装nginx。安装FastDFS上传安装包到/usr/local/fdfs/目录下,包括的包如下:fastdf...

2018-05-12 13:28:17 738 2

原创 从Java内存模型讲双重检查锁原理

什么是双重检查锁?双重检查锁(Double-Check Locking),顾名思义,通过两次检查,并基于加锁机制,实现某个功能。 要理解什么是双重检查锁,我们从常见的单例模式说起。看第一个例子: 上图中的单例模式一看就知道存在线程问题,如果两个线程:线程A和线程B,同时访问该类,线程A访问到第6行,在还没有实例化完成的时候,线程B访问到第5行,此时也会判断到instance=nul...

2018-05-12 13:26:08 224

原创 Log4j2实现加载不同模块的配置文件

在有的场景下,会出现各个业务模块独立配置自己的log4j2.xml配置文件。如果是单个log4j2.xml,只需要放到classes目录下即可自动加载,如果是多个分散在不同目录下的配置文件怎么办呢?实现方法主要有两步: - 将log4j2升级到2.11版本; - 获取到这些配置文件; - 将这些配置文件加载到环境变量中。将log4j2升级到2.11版本据我所知,最新的log4...

2018-05-10 21:05:18 4538

原创 Disruptor系列1:初识Disruptor

通过这篇文章来记录和分享对Disruptor的初步了解认识Disruptor框架。Disruptor是什么?Disruptor是一个高性能的异步处理框架,或者可以认为是线程间通信的高效低延时的内存消息组件,它最大特点是高性能,其LMAX架构可以获得每秒6百万订单,用1微秒的延迟获得吞吐量为100K+。 它是如何实现高性能的呢?它由于JDK内置的队列有什么区别呢?JDK内置内存...

2018-05-10 09:34:45 2594

原创 Native函数库导致OOM的触发原理

线上应用经常会出现OutOfMemoryError错误,档案引起原因多种多样,包括堆内存溢出(Java Heap Space)、方法区持久代内存溢出(Permanet Space)以及本文需要说道的Native操作本地内存出现的内存溢出问题。要说明这个问题,就先要说明Native函数库是怎样操作内存空间的。NIO中的Native函数库在JDK1.4中新加入了NIO类,引入一种基于渠道与缓...

2014-12-12 12:57:00 515

原创 Nginx日志统计方案全过程

本文主要记录下给予python的nginx日志统计过程,主要原因是最近系统经常遭到未知程序的疯狂爬数据,虽然做了防爬机制,但是还是必须要找出是哪些IP访问次数比较多。想到的办法就是通过分析ngxin日志,从而找出这些IP排行即可。具体方案的操作步骤包括:ngxin日志每日切割功能;设置ngxin的日志格式;编写python代码在每日切割之前统计下access.log中的IP访问次数...

2014-11-29 13:17:12 356

原创 提升tomcat服务器性能的六条经验

在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下6种调优经验。1. 服务器资源服务器所能提供CPU、内存、硬盘的性能对处理能力有决定性影响。(1) 对于高并发情况下会有大量的运算,那么CPU的速度会直接影响到处理速度。(2)内存在大量数据处理的情况下,将会有较大的内存容量需求,可以用-Xmx -Xms -XX:M...

2014-11-26 12:13:49 272

原创 [转]java中byte转换int时为何与0xff进行与运算

在剖析该问题前请看如下代码public static String bytes2HexString(byte[] b) {  String ret = "";  for (int i = 0; i < b.length; i++) {   String hex = Integer.toHexString(b[ i ] & 0xFF);   if (hex.leng...

2012-01-19 14:29:29 83

Java I/O 深入学习( 二)之数组类输入输出流

1. ByteArrayOutputStream在实例化的时候会创建一个byte类型的数组缓冲区,默认32个字节,可以无限增长。可以将内存中的对象读到该数组中。其中write()方法负责往数组中写数据。实例化时的代码:/** * Creates a new byte array output stream. The buffer capacity...

2012-01-18 15:21:37 133

Java I/O 深入学习(一)

<!-- [if gte mso 9]><xml><w:WordDocument><w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel><w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDr...

2012-01-18 14:45:35 92

设计模式(三)——原型模式

今天主要说说原型模式prototype,原型模式最基本的理解就是复制一份对象实例,它也是一种创建型模式。一般情况是我们新建一个原型对象类,然后对该对象进行复制,重新修饰中就可以当作新对象使用了。这在处理比较复杂的对象时是非常高效的,因为使用的是已经存在实例化的对象。一般采用原型模式的原型对象都需要实现Cloneable接口,实现方式就是使用clone()方法。/** * 原型模式...

2011-12-29 19:57:29 90

设计模式(二)——单例模式

写单例模式,总是让我想起孔乙己写“茴香豆”的茴的四种写法,虽然感觉他比较迂腐,但是在说到单例模式时,却也是忍不住的要说单例模式也有好几种写法,这样算来,自己也算迂腐了。不过不管怎样,既然是做技术的,多掌握一点也是比较好的,同时也将积累的分享给大家,大家各凭所好吧。 在说“茴”字之前,需要先说下什么是“茴香豆”,也就是我们的单例模式。单例模式就是让一个对象只产生一个实例,并且对外提供一个全局...

2011-12-26 16:24:41 79

设计模式(一)——面向对象原则

面向对象设计原则总结来讲包含六大基本原则,即开闭原则、里氏代换原则、合成复用原则、接口隔离原则、迪米特法则和依赖倒转原则。 掌握这六大基本设计原则的精髓,才能真正为以后的设计模式的学习做好铺垫,才能整理理解面向对象开发设计的原理,能够实现代码复用、开发可扩展、可重用的高质量代码。 开闭原则,即面向扩展开放,面向修改封闭,也就是说系统支持扩展,但是不支持修改。为什么这么说?在开发阶段...

2011-12-23 15:28:58 89

js原生支持checkbox框半选状态

今天发现,原来JS是原生支持checkbox框的,有个属性indeterminate,其值为true/false,当为true时,checkbox就显示为绿色方块心的checkbox框。但是,该属性不能直接写在html标签里,必须使用js来赋值才行。同时,可惜的是,该属性不支持firefox,看来在firefox下只能用图片代替了。。。...

2011-12-22 20:39:57 416

UML学习笔记(三)——用例图

用例图用例图主要用于系统的初期进行系统需求分析,用于描述系统有哪些功能,从用户的角度观察系统应支持哪些功能,帮助分析人员理解系统的行为,同时也可以帮助测试人员了解系统有哪些功能,便于编写测试用例。一个系统中可以有多个用例图,每个用例图可以用来表示其中一个模块应有的功能。用例图主要包括参与者、用例、系统边界、通信关联四种组成部分。参与者是指与系统发生交互的人或者其它系统或者其...

2011-12-20 20:56:40 176

UML学习笔记(二)

UML每一个视图针对团队中的不同受众1. 系统的用例视图面向最终用户和测试人员;2. 系统的逻辑试图面向分析人员和设计人员;3. 系统的组件试图面向系统集成人员和编程人员;4. 系统的部署视图面向系统和网络工程师; UML建模过程1. 需求分析——用例图;2. 系统分析:分析业务规则——状态图;3. 系统分析:分析业务流程——活动图;4. 系统设计:设计静态...

2011-12-20 20:31:42 86

UML学习笔记(一)

UML图可以归纳为静态建模和动态建模两大类。静态建模主要包括    1. 用例图,主要坐拥是描述需求;    2. 静态图,包括类图、对象图和包图,主要作用是描述类的结构;    3. 实现图,包括组件图、部署图,主要作用是描述软件结构;动态建模主要包括    1. 行为图,包括状态图、活动图,主要作用是描述动态建模;    2. 交互图,包括序列图、协作图,主要描述交...

2011-12-17 13:21:37 103

PostgreSQL 9从零开始学

支持目录,对于初学者学习PostgreSQL非常有帮助。绝对正品,质量保证!

2019-02-19

Kafka权威指南

该书可以作为初学者学习Kafka的入门教程,对Kafka有深入的理解和分析,值得一读。

2017-12-27

Redis V4.0 最新版中文命令参考学习手册

本文档是 Redis Command Reference 和 Redis Documentation 的中文翻译版, 阅读这个文档可以帮助你了解 Redis 命令的具体使用方法, 并学会如何使用 Redis 的事务、持久化、复制、Sentinel、集群等功能。可以作为新手入门教程!强烈推荐Redis学习新手和想研究Redis新特性的老手学习研究。

2017-11-15

ElasticSearch JAVA开发手册

本手册不仅详细描述了如何使用Java作为客户端访问ElasticSearch的代码和方法,同时也描述了在使用ElasticSearch遇到的坑和解决方案,是新手入门不可多得的教材,也是老手借鉴提高的材料。

2017-11-15

Servlet3.1规范(最终版)

Servlet3.1规范(最终版),很不错,大家可以看看,Java初学者必看!Servlet3.1规范(最终版),很不错,大家可以看看,Java初学者必看!

2017-09-18

微机复习资料

研究生微机复习资料,如果想要的人就赶紧下载吧。。

2012-05-03

敏捷Acegi.CAS-构建安全的Java系统,1_Eacegicas.zip

敏捷Acegi.CAS-构建安全的Java系统(代码部分)

2008-09-06

企业中的Java安全策略 建立安全可靠的J2EE应用程序.zip

企业中的Java安全策略 建立安全可靠的J2EE应用程序

2008-09-06

servlet编程API.rar

关于servlet编程的API,适合初学servlet的同学

2008-08-25

oracle sql 参考手册.chm

oracle sql 参考手册

2008-07-31

java数据结构.rar

详细描述了java数据结构 知识

2008-07-31

java上机实践指导教程

java上机实践指导教程

2008-05-22

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除