自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (10)
  • 收藏
  • 关注

原创 2021-09-07

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-09-07 18:01:30 78

原创 限流算法

1、令牌桶算法 1、每秒生成固定的令牌 2、一次可以获取一定的令牌,不行就阻止 实现方案: 1、分布式锁 2、固定时间增加令牌数 3、获取令牌,扣减令牌 4、定时任务2、漏斗算法 1、请求一直添加,只要不溢出 2、请求的执行恒定实现方案: 1、分布式锁 2、指定桶的大小...

2020-03-09 15:54:38 137

原创 技术栈

一、算法:冒泡排序(两种)、递归算法、二分查找、一致性hash算法二、数据结构链表、二叉树三、网络通信TCP\IP、NIO四、操作系统五、JVM

2018-01-02 13:15:17 406

原创 团队的发展阶段与策略

一、组建团队的过程1、组建期【周期1.5月】       1、【重点】支撑业务开发,团队建立信任,达成共识。                心灵鸡汤、鸡血、整体磨合、团队会议与活动、工作内容交叉、方案整体梳理、树立威信。       2、【招人策略】无暇等待高手出现,进人可以略宽松,能开发业务代码即可,后续可以培训。       3、【技术选型】选择

2016-05-09 12:04:37 2839

原创 [JAVA修炼之路十二]- session管理

1、session 复制集群中服务器之间使用复制原理缺点:随着机器的增多,session量的增大,复制功能极大的占用网络带宽2、session 绑定通过负载均衡hash算法实现,获取客户度的ip进行hash绑定,使同一ip访问到固定机器上面缺点:一旦服务器宕机,导致用户无法访问,无法满足可扩展性。3、利用cookie记录session通过把session放在cookie

2016-05-08 18:16:16 217

原创 [JAVA修炼之路十一]-java包Concurrent包-AQS锁的应用、优化、实践

一、syn、reentrantLock 性能对比 分析:以上图证明,随着线程数增强sync在下降,但是不能证明sync就是性能低下,分业务场景。1、如果线程之间竞争不激烈,此时用sync性能较高,并且简单,jvm本身做了优化2、如果线程之间竞争激烈,就要考虑其他方式。reentrantLock 使用如果同步时间较长,建议采用公平模式,防止自旋占用cpu,默认非公平

2016-05-08 17:16:24 369 1

原创 [JAVA修炼之路十]-JVM synchronized原理或优化

synchronized语法:1、synchronized语句;2、synchronized方法1、monitorenter和monitorexit字节码;依赖于底层的操作系统的Mutex Lock来实现的2、会被翻译成普通的方法调用和返回指令如:invokevirtual、areturn指令原理:用户线程阻塞,内核线程启动,设计到用户线成与内核线程的切换,花销较大JVM 对于

2016-05-08 16:38:37 2968

原创 [JAVA修炼之路九]-java包Concurrent包-AQS

•一、结构•1、状态:state (计数器)•2、FIFO 队列•••二、线程安全•CAS:状态赋值,与队列赋值•Unsafe方法Park、unpark 线程挂起与恢复•三、node模式•1、共享模式•2、独占模式

2016-04-19 20:49:36 320

原创 [JAVA修炼之路八]-java包Concurrent包-atomic

一、包结构1、原子更新基本类型类AtomicIntegerAtomicLongAtomicBoolean2、原子更新数组类AtomicIntegerArray:原子更新整型数组里的元素。AtomicLongArray:原子更新长整型数组里的元素。AtomicReferenceArray:原子更新引用类型数组里的元素3、原子更新引用类型At

2016-04-19 20:44:19 305

原创 [JAVA修炼之路七]-JVM 垃圾回收器

一、各种回收器特点1、新生代串行回收器a、运行过程中,应用中所有线程停止工作(STW)b、Client 模式下,默认收集器c、分代复制算法d、垃圾回收图2、老年代串行回收器a、启动方式:-XX:+UseSerialGC、-XX:+UseParNewGC、-XX:+UseParalllelGCb、标记压缩算法、运行过程中,应用中所有线程停止工作(STW)c、垃圾回

2016-04-10 20:26:17 364

原创 [JAVA修炼之路六]-JVM 垃圾回收机制(算法)

一、回收算法1、根引用计数算法原理:对象有引用计数加1,同理减1缺点:两个对象互相引用,无法回收2、标记清除算法原理:1、从根基以树形方式查找所有的对象,进行标记   2、针对标记对象进行清理缺点 :  产生碎片、影响对象存放3、标记复制算法原理:有两块内存区域,一块用于复制1、从根基以树形方式查找所有的对象,进行标记2、复制标记的对象(A)到另一块内存

2016-04-06 17:59:11 400

原创 [实战案例一]-dubbo-consumer 执行时间慢

问题来源:采用DUBBO服务,A、B两台服务器访问dubbo速度较慢,C、D服务器正常,服务器都是同样代码。A、B 两台服务器,查看consumer都是1.5秒以上,而其他两台服务器都保持300毫秒以下1、查看速度慢的服务器,红色的是时间2、调用的provider执行时间:100多毫秒3、此时判断服务器端应该没有问题,那是什么问题呢?排查dubb

2016-04-01 17:43:35 9721 2

原创 [JAVA修炼之路四]-集合(ConCurrentHashMap HashTable)

一、ConcurrentHashMap1、结构图       2、线程安全      注意:节点数组segsments 集合。      节点数组初始化:采用volatile 变量 CAS保证线程安全。      节点数组定位:unsafe getObjectVolatile 获取头节点,通过对此节点synchronized保证线程安全3、节点数组      为了保

2016-03-31 21:42:17 417

原创 [JAVA修炼之路四]-JVM内存模型以及对象实例化过程

一、JVM 内存模型注意:1、类加载器加载类2、执行引擎 -执行运行时数据区二、JVM 对象三、实例化对象流程1、类加载服务器启动等,把class字节吗加载到方法区2、实例化Object object=new Object();object引用存放桟中,对象的数据值存放堆中,堆中存放的是结构化数据四、注意点1、一个class所

2016-01-12 22:22:18 494 1

原创 [JAVA修炼之路三]-JAVA Thread 方法

一、sleep与wait方法区别 1、这两个方法来自不同的类分别是Thread和Object 2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。 3、wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在 任何地方使用 synchro

2016-01-11 19:21:37 813

原创 [JAVA修炼之路一]-JAVA ATOMIC 包

1、整体思路为了保证原子性,采用了cas与volatile2、详解包结构包里面的类分三种类型:标量类:AtomicBoolean,AtomicInteger,AtomicLong,AtomicReference数组类:AtomicIntegerArray,AtomicLongArray,AtomicReferenceArray更新器类:AtomicLongField

2016-01-06 20:57:59 257

设计模式

java 设计模式概括

2015-09-22

properties 文件中文化

properties 文件中文化,直接解压放在MyEclipse Professional\dropins 目录下面

2014-10-28

java动态编译和加载

java 动态编译和加载,使用eclipse的动态编译

2014-10-20

深入理解Java虚拟机:JVM高级特性与最佳实践[周志明]

[深入理解Java虚拟机:JVM高级特性与最佳实践][周志明]

2014-02-26

深入理解_Java_虚拟机_(JVM_高级特性与最佳实践)

深入理解_Java_虚拟机_(JVM_高级特性与最佳实践) 这本书对jvm讲的比较详细

2014-02-26

powerdesgin 模型中名字和code的相互转换

powerdesgin 模型中名字和code的相互转换

2012-07-13

blazeds-turnkey-4.0.1.16258

myeclipse8.5 blazeds-turnkey-4.0.1.16258

2011-05-13

mysql-connector-java-3.1.10-bin.jar

mysql-connector-java-3.1.10-bin.jar mysql的驱动

2010-08-04

c3p0-0.9.1.2.jar包

c3p0-0.9.1.2.jar包,有助于进行数据库连接池

2010-08-04

log4j.jar错误日记记录java包

log4j。jar大家有用的就下载,绝对真实,大家可以方便的尽心错误查询

2010-08-04

空空如也

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

TA关注的人

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