【收藏】Java问题排查相关工具工具箱

【收藏】Java问题排查相关工具工具箱

问题排查除了最重要的解决思路和逻辑推导能力外,工具也是不可缺少的一部分,一个好用的工具可以事半功倍,甚至在某些情况下会因为没有相应的工具而压根就没法继续进行下去,这篇文章就来讲讲在排查Java问题…
一款开源的社交分享插件——share.js

一款开源的社交分享插件——share.js

偶然发现一个大佬制作的一个一键分享到微博、QQ空间、QQ好友、微信、腾讯微博、豆瓣、Facebook、Twitter、Linkedin、Google+、点点等社交网站的前端JS插件;发现效果不错分享一下。 页面效果: GitHub地址:…
RabbitMQ Exchange

RabbitMQ Exchange

在RabbitMQ中,exchange有4个类型: direct topic fanout header direct 在direct类型的exchange中,只有这两个routingkey完全相同,exchange才会选择对应的binding进行消息路由。 topic 此类型exchange和上…
Spring Boot发展史(Spring Boot介绍)

Spring Boot发展史(Spring Boot介绍)

Spring 历史 说起 Spring Boot 我们不得不先了解一下 Spring 这个企业,不仅因为 Spring Boot 来源于 Spirng 大家族,而且 Spring Boot 的诞生和 Sping 框架的发展息息相关。 时间回到2002年,当时正是 Java…
【漫画】戏说外行对程序员的误会有多深

【漫画】戏说外行对程序员的误会有多深

程序员如今已经发展成社会的主流职业,以至于街头的王大妈李大爷都能说出一二来,据说他们认为的程序员是这样子的: 1.程序员都是秃头,秃的越狠越是高级。 2.程序员各个都是死宅男,整天在家玩电脑。 3.甚…
JAVA之从线程安全说到锁

JAVA之从线程安全说到锁

什么是线程安全? 线程安全是指保证多线程环境下共享的、可修改的状态的正确性。 线程安全需要保证几个基本特性 原子性:相关操作不会中途被其他线程干扰,一般通过同步机制实现。 可见性:一个线程修改了某…
JAVA关键字之volatile关键字说明

JAVA关键字之volatile关键字说明

volatile作用 volatile主要是为了解决多线程内存不可见问题。 对于一写多读,是可以解决变量同步问题,但是如果多写,同样无法解决线程安全问题。 其次是为了保证代码的有序性。 虚拟机在编译的时候,是有可…
ConcurrentHashMap常用方法源码解析(jdk1.8)

ConcurrentHashMap常用方法源码解析(jdk1.8)

ConcurrentHashMap数据结构 ConcurrentHashMap的数据结构(数组+链表+红黑树),桶中的结构可能是链表,也可能是红黑树,红黑树是为了提高查找效率。具体是链表还是红黑树,要看binCount是否大于等于转化为…
数据库中的锁-SQL Server版

数据库中的锁-SQL Server版

背景 数据库中有一张叫后宫佳丽的表,每天都有几百万新的小姐姐插到表中,光阴荏苒,夜以继日,日久生情,时间长了,表中就有了几十亿的小姐姐数据,看到几十亿的小姐姐,每到晚上,我可愁死了,这么多小姐姐,我翻张牌…