2019年9月12日

java当中的锁

摘要: 阅读全文

posted @ 2019-09-12 10:14 心里向阳-无惧悲伤° 阅读(77) 评论(0) 推荐(0)

2019年5月26日

Zookeeper之javaAPI的使用

摘要: Java程序操作Zookeeper 1.创建java项目并导入相关jar包 主要jar包在主目录下 项目需要的相关依赖的jar包在zookeeper的解压文件的lib目录下就有 将这几个jar包导入项目中 API简单使用 2.1配置Zookeeper对象 常用API操作 监听器的使用 阅读全文

posted @ 2019-05-26 22:24 心里向阳-无惧悲伤° 阅读(183) 评论(0) 推荐(0)

关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁

摘要: 首先分布式锁和我们平常讲到的锁原理基本一样,目的就是确保,在多个线程并发时,只有一个线程在同一刻操作这个业务或者说方法、变量。 在一个进程中,也就是一个jvm 或者说应用中,我们很容易去处理控制,在jdk java.util 并发包中已经为我们提供了这些方法去加锁, 比如synchronized 关 阅读全文

posted @ 2019-05-26 22:21 心里向阳-无惧悲伤° 阅读(114) 评论(0) 推荐(0)

Zookeeper 集群如何高可用部署?

摘要: 介绍 Zookeeper 我想大家都不陌生,在很多场合都听到它的名字。它是 Apache 的一个顶级项目,为分布式应用提供一致性高性能协调服务。可以用来做:配置维护、域名服务、分布式锁等。有很多开源组件,尤其是中间件领域,使用 Zookeeper 作为配置中心或者注册中心。例如,它是 Hadoop 阅读全文

posted @ 2019-05-26 22:20 心里向阳-无惧悲伤° 阅读(544) 评论(0) 推荐(0)

2019年5月22日

面试笔记

该文被密码保护。 阅读全文

posted @ 2019-05-22 23:24 心里向阳-无惧悲伤° 阅读(2) 评论(0) 推荐(0)

Spring事务传播行为详解

摘要: 前言(本文转自微信中一篇文章,写的很好) Spring在TransactionDefinition接口中规定了7种类型的事务传播行为。事务传播行为是Spring框架独有的事务增强特性,他不属于的事务实际提供方数据库行为。这是Spring为我们提供的强大的工具箱,使用事务传播行可以为我们的开发工作提供 阅读全文

posted @ 2019-05-22 22:34 心里向阳-无惧悲伤° 阅读(158) 评论(0) 推荐(0)

2019年5月20日

HTTP请求

摘要: 超文本传输协议,建立在tcp上无状态连接。 http0.9:get,只能是html格式 http1.0 get,post,head,传输二进制,字符集、字符编码、状态响应码 http1.1 持久连接,Connection:keep alive,保持连接,引入管道机制,put、patch、head、o 阅读全文

posted @ 2019-05-20 21:21 心里向阳-无惧悲伤° 阅读(92) 评论(0) 推荐(0)

Interview

摘要: CopyOnWriteArrayList 了解写时复制机制、了解其适用场景、思考为什么没有ConcurrentArrayList 内部持有一个ReentrantLock的可冲入锁,在增加、删除是加锁,使用try finally来在finally的最后语句块当中解锁,在增加、删除时候复制出来一个新的数 阅读全文

posted @ 2019-05-20 21:15 心里向阳-无惧悲伤° 阅读(387) 评论(1) 推荐(0)

jdk动态代理demo实践

摘要: 续上篇博客,本文通过demo介绍jdk动态代理 阅读全文

posted @ 2019-05-20 20:59 心里向阳-无惧悲伤° 阅读(410) 评论(0) 推荐(0)

CGLIB动态代理demo实践

摘要: jdk动态代理和cglib动态代理的区别(经常结合spring一起问所以就放这里了),所以这里写了一个demo实践一下,下篇介绍jdk动态代理。 阅读全文

posted @ 2019-05-20 20:54 心里向阳-无惧悲伤° 阅读(667) 评论(0) 推荐(0)

SLF4J

摘要: 为什么要用SLF4J? 代码中编写日志记录语句使用SLF4J的主要动机是让程序独立于任何特定的日志记录库,这些日志记录库可能需要与现在配置不同的配置,而且还会引入更多令人头疼的维护问题。 然而除了这个之外,SLF4J API还有一个使用SLF4J而不是用长期感兴趣的 Log4j 更让人信服的功能,也 阅读全文

posted @ 2019-05-20 20:38 心里向阳-无惧悲伤° 阅读(353) 评论(0) 推荐(0)

2019年5月19日

git常用命令总结

摘要: git clone 地址//默认克隆master分支 git clone -b 分支 地址//克隆指定分支 git clone -b 分支1 分支2 地址//基于当前分支2 克隆并创建新的分支1 git checkout //切换分支 git checkout -b dev master//基于ma 阅读全文

posted @ 2019-05-19 23:18 心里向阳-无惧悲伤° 阅读(149) 评论(0) 推荐(0)

数据库开发规范

摘要: 一、基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省空间 (3)数据表、数据字段必须加入中文注释 解读:N年后谁知道这个r1,r2,r3字段是干嘛的 ( 阅读全文

posted @ 2019-05-19 23:13 心里向阳-无惧悲伤° 阅读(140) 评论(0) 推荐(0)

用synchronized就一定线程安全吗?

摘要: 用synchronized对方法进行同步,还真不一定线程安全。 这需要从synchronized的原理开始讲起。synchronized关键字有下面三种用法: 修饰实例方法: 对当前实例加锁,进入方法需要获得当前实例的锁修饰静态方法: 对当前类对象加锁,进入静态方法需要获得当前类对象的锁修饰代码块: 阅读全文

posted @ 2019-05-19 23:11 心里向阳-无惧悲伤° 阅读(1739) 评论(1) 推荐(0)

linux常用命令

摘要: 本文对工作以及学习中用到的Linux命令进行总结,开发中在这里便于查找,不用强记,理解就好。 进程: 检查端口被哪个进程占用 netstat -lnp|grep 88 #88请换为你的apache需要的端口,如:80 查看进程的详细信息 ps 1777 杀掉进程,重新启动apache kill 17 阅读全文

posted @ 2019-05-19 23:10 心里向阳-无惧悲伤° 阅读(766) 评论(0) 推荐(0)

JVM(Java虚拟机)优化大全和案例实战

摘要: 堆内存设置 原理 JVM堆内存分为2块:Permanent Space 和 Heap Space。 Permanent 即 持久代(Permanent Generation),主要存放的是Java类定义信息,与垃圾收集器要收集的Java对象关系不大。 Heap = { Old + NEW = {Ed 阅读全文

posted @ 2019-05-19 22:41 心里向阳-无惧悲伤° 阅读(1587) 评论(0) 推荐(0)

2019年4月21日

spring源码学习(一)

摘要: 由于本人水平有限,本文内容较为简单,仅供个人学习笔记,或者大家参考,如果能够帮助大家,荣幸之至!本文主要分析AnnotationConfigApplicationContext实例化之后,到底干了那些事情。 首先通过实例化applicationContext 分析:第一句实例化annotationC 阅读全文

posted @ 2019-04-21 11:31 心里向阳-无惧悲伤° 阅读(206) 评论(0) 推荐(0)

2019年4月6日

maven学习笔记

摘要: 序言:本文记录了maven相关知识,仅供个人学习笔记、如果能够帮助到大家,不胜荣幸。 官方文档:http://maven.apache.org/download.cgi 可以看到maven版本对应不同版本的jdk有要求的 点击下载windows版本的maven: 解压之后需要配置maven的环境变量 阅读全文

posted @ 2019-04-06 16:14 心里向阳-无惧悲伤° 阅读(253) 评论(0) 推荐(0)

导航