hotmocha
码龄13年
求更新 关注
提问 私信
  • 博客:150,974
    150,974
    总访问量
  • 26
    原创
  • 14
    粉丝
  • 18
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
加入CSDN时间: 2012-02-22
博客简介:

hotmocha的专栏

查看详细资料
个人成就
  • 获得28次点赞
  • 内容获得11次评论
  • 获得46次收藏
创作历程
  • 1篇
    2019年
  • 1篇
    2018年
  • 15篇
    2017年
  • 22篇
    2016年
  • 6篇
    2015年
  • 7篇
    2014年
  • 1篇
    2013年
  • 47篇
    2012年
成就勋章
TA的专栏
  • 操作系统
    6篇
  • c/c++
    27篇
  • c#
    4篇
  • 算法分析
    8篇
  • java
    15篇
  • 脚本语言
    5篇
  • 其他
    4篇
  • 个人日志
    1篇
  • 读书笔记
  • hibernate
    1篇
  • shell
    1篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 8

TA参与的活动 0

创作活动更多

新星杯·14天创作挑战营·第9期

这是一个以写作博客为目的的创作活动,旨在鼓励大学生博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。我们诚挚邀请你们参加为期14天的创作挑战赛! 注: 1、参赛者可以进入活动群进行交流、分享创作心得,互相鼓励与支持(开卷),答疑及活动群请见 https://bbs.csdn.net/topics/619626357 2、文章质量分查询:https://www.csdn.net/qc

475人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

jvm blog

https://gist.github.com/pandening/8b941997851ff6bec29d83a9af821602 首选想探索一下GC是怎么开始工作的,或者说,GC到底是以什么样的方式在工作的;java应用在启动的时候会创建一个jvm进程,JVM内部通过调用create_vm来实现,该方法做了大量的工作来创建一个jvm进程,并且将java应用的main方法启动起...
转载
发布博客 2019.12.09 ·
761 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

类的生命周期与threadlocal

http://blog.xiaohansong.com/2016/08/09/ThreadLocal-leak-analyze/http://wiki.xiaohansong.com/java/class_lifecycle.html#_8
转载
发布博客 2018.04.10 ·
1237 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

netty源码探索(二)

0. ctx.fire*** 或者 ctx.read write都是基于当前的ctx查找下一个outbound和inbound不会中从headcontext或者tailcontext开始如果需要从头开始调用ctx.pipeline()注意在编写outbound和inbound handler不要忘记调用ctx函数不然链路会断掉1. outbound和inbound操作ChannelOut
原创
发布博客 2017.09.24 ·
1958 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

netty源码探索

NioEventLoop是通用的,针对不同的事件通过attachment中的channel自动区分操作。监听的channel为NioServerSocketChannel对应的unsafe为NioMessageUnsafe通讯的channel为NioSocketChannel对应的unsafe为NioByteUnsafe比如:监听的channel为NioServerSocketChannel
原创
发布博客 2017.09.22 ·
373 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

ThreadPoolExecutor线程池代码理解

主要的并发访问变量: 1. ctl(3位:状态位 + 29位:workerCount)2. workers工作线程的集合以及一些统计数据,使用mainLock控制保护3. Worker的中断标志,使用AbstractQueuedSynchronizer中的state形成lock和unlock保护
原创
发布博客 2017.09.07 ·
697 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

微服务架构下的数据一致性保证(三):补偿模式

在第一篇分享中介绍了微服务架构应满足数据最终一致性,并简要介绍了最终一致性的三种模式:可靠事件模式、补偿模式、TCC模式。 在第二篇分享中深入可靠事件模式,讲述了可靠事件投递和幂等性的实现方式和需要注意的问题。 在今天的第三篇分享中来谈谈补偿模式和TCC模式,主要从三个方面来谈。 首先简单回顾一下补偿模式。 补偿模式使用一个额外的协调服务来协调各个需要保证一致性的微服务
转载
发布博客 2017.07.19 ·
702 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

保证分布式系统数据一致性的6种方案

问题的起源在电商等业务中,系统一般由多个独立的服务组成,如何解决分布式调用时候数据的一致性? 具体业务场景如下,比如一个业务操作,如果同时调用服务 A、B、C,需要满足要么同时成功;要么同时失败。A、B、C 可能是多个不同部门开发、部署在不同服务器上的远程服务。在分布式系统来说,如果不想牺牲一致性,CAP 理论告诉我们只能放弃可用性,这显然不能接受。为了便于讨论问题,先简单
转载
发布博客 2017.07.19 ·
394 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

spring bean加载过程

Spring通过资源加载器加载相应的XML文件,使用读取器读取资源加载器中的文件到读取器中,在读取过程中,解析相应的xml文件元素,转化为spring定义的数据结BeanDefinition,把相应的BeanDefinition注册到注册表中。注册表中包含的BeanDefinition的数据结构,没有经过加工处理过,无法得到我们想要的bean对象。我们如何得到Bean对象,spring都做了那
转载
发布博客 2017.06.08 ·
9353 阅读 ·
3 点赞 ·
2 评论 ·
17 收藏

SpringMVC 拦截器不拦截静态资源的三种处理方式方法

SpringMVC提供来设置静态资源,但是增加该设置如果采用通配符的方式增加拦截器的话仍然会被拦截器拦截,可采用如下方案进行解决:方案一、拦截器中增加针对静态资源不进行过滤(涉及spring-mvc.xml)?12345678910111213
转载
发布博客 2017.06.06 ·
3741 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

Servlet中的过滤器Filter详解

web.xml中元素执行的顺序listener->filter->struts拦截器->servlet。1.过滤器的概念Java中的Filter 并不是一个标准的Servlet ,它不能处理用户请求,也不能对客户端生成响应。 主要用于对HttpServletRequest 进行预处理,也可以对HttpServletResponse 进行后处理,是个典型的处理链。优点:过
转载
发布博客 2017.06.06 ·
394 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

spring拦截器、与filter的区别

在struts2中用过filter过滤器,在springmvc中还有拦截器,它们都能过滤请求,但是到底有什么区别呢? 一、定义拦截器 :是在面向切面编程的就是在你的service或者一个方法,前调用一个方法,或者在方法后调用一个方法比如动态代理就是拦截器的简单实现,在你调用方法前打印出字符串(或者做其它业务逻辑的操作),也可以在你调用方法后打印出字符串,甚至在你抛出异常
转载
发布博客 2017.06.06 ·
561 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

log4j格式控制

参数说明例子%c列出logger名字空间的全称,如果加上{}表示列出从最内层算起的指定层数的名字空间log4j配置文件参数举例输出显示媒介假设当前logger名字空间是"a.b.c"%ca.b.c%c{2}b.c%20c(若名字空间长度小于20,则左边用空格填充)%-20c(若名字空间长度小
转载
发布博客 2017.04.26 ·
333 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

CronTrigger

1、   CronTrigger时间格式配置说明CronTrigger配置格式:格式: [秒] [分] [小时] [日] [月] [周] [年]序号说明是否必填允许填写的值允许的通配符1秒是0-59 , - * /2分
转载
发布博客 2017.04.19 ·
273 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java线程编程中的阻塞队列容器

1. 什么是阻塞队列?阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作是:在队列为空时,获取元素的线程会等待队列变为非空。当队列满时,存储元素的线程会等待队列可用。阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程。阻塞队列就是生产者存放元素的容器,而消费者也只从容器里拿元素。阻塞队列提供了四种处理方
转载
发布博客 2017.04.13 ·
376 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Oracle中的锁(LOCK)机制

使用锁的目的是什么为了解决多用户环境下并发操作相同的资源而造成的错误修改数据的问题。单用户环境下不需要考虑锁,因为所有操作都是串行的。下面的文章简要的介绍了一下 要点锁的分类异常复杂,enqueue、latch、mutex等,都是为了解决并发存在的,自己也有些混乱,所以也不过多解释了。下面列举一些对于lock的要点内容。l  排他锁:不允许相关的资源被共
转载
发布博客 2017.03.03 ·
887 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

UML

类之间的关系1. 种类: Generalization(泛化),Dependency(依赖关系)、Association(关联关系)、Aggregation(聚合关系)、Composition(合成关系)。2.  其中Aggregation(聚合关系)、Composition(合成关系)属于Association(关联关系),是特殊的Association关联关系。3.  Genera
转载
发布博客 2017.02.26 ·
281 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

web spring springmvc上下文关系

web上下文(Servlet context),spring上下文(WebApplication Context),springmvc上下文(mlWebApplicationCont)之间区别.上下文:可以简单的理解为容器,配置文件web上下文目标对象是所有web应用,spring上下文目标对象是单个web应用,spring mvc目标对象是单个web应用的spring
转载
发布博客 2017.02.17 ·
1457 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

MySQL 加锁处理分析

大神博客链接:http://hedengcheng.com/?p=7711    背景    11.1    MVCC:Snapshot Read vs Current Read    21.2    Cluster Index:聚簇索引    31.3    2PL:Two-Phase Locking    31.4    Is
转载
发布博客 2016.12.23 ·
337 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

NIO常见的陷阱解析

【经验总结】NIO常见的陷阱解析NIO编程很容易吗?不容易吗?很容易吗?不容易吗?……有些陷阱你需要知道 陷阱1:处理事件忘记移除key在select返回值大于0的情况下,循环处理Selector.selectedKeys 集合,每处理一个必须移除Iterator it=set.iterator();While(it.hasNext())
转载
发布博客 2016.12.19 ·
1247 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spring Bean 生命周期

Spring Bean 生命周期任何一个事物都有自己的生命周期,生命的开始、生命中、生命结束。大家最熟悉的应该是servlet 的生命周期吧。和 servlet 一样 spring bean 也有自己的生命周期。本文我就向大家讲述 spring bean 的生命周期,这个对理解 spring 框架有非常好的作用。大家应该知道spring 中有几种供 springbean 生存的容器
转载
发布博客 2016.11.24 ·
307 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多