摘要:
Java目前已经不仅仅是一门开发语言,而是一整套生态体系。 作为一个Java程序员,既是幸运的,也是不幸的。幸运的是我们有很多轮子可以拿过来用,不幸的是我们有太多的轮子需要学习。 但是,无论是日常工作还是面试问题,也都符合二八原则。即掌握20%的知识,就能解决80%的问题。 那么,Java程序员必须 阅读全文
posted @ 2019-03-21 14:44
白露~
阅读(509)
评论(0)
推荐(0)
摘要:
Java目前已经不仅仅是一门开发语言,而是一整套生态体系。 作为一个Java程序员,既是幸运的,也是不幸的。幸运的是我们有很多轮子可以拿过来用,不幸的是我们有太多的轮子需要学习。 但是,无论是日常工作还是面试问题,也都符合二八原则。即掌握20%的知识,就能解决80%的问题。 那么,Java程序员必须 阅读全文
posted @ 2019-03-21 14:44
白露~
阅读(509)
评论(0)
推荐(0)
摘要:
这篇文章主要介绍了Java引用和Threadlocal的那些事,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 1 背景 某一天在某一个群里面的某个群友突然提出了一个问题:"threadlocal的key是虚引用,那么在threadlocal.get()的时候,发生GC之 阅读全文
posted @ 2019-03-21 14:43
白露~
阅读(1235)
评论(0)
推荐(0)
摘要:
简介:请允许我当一回标题党。好了,言归正传,本篇主要内容便是介绍HashMap的男二号——TreeNode(男一号还是给Node吧,毕竟是TreeNode的爷爷,而且普通节点一般来说也比TreeNode要多),本篇主要从以下几个方面介绍:1. ... 简介:请允许我当一回标题党。好了,言归正传,本篇 阅读全文
posted @ 2019-03-21 14:41
白露~
阅读(2340)
评论(1)
推荐(0)
摘要:
在 HTTP 协议中有可能存在信息窃听或身份伪装等安全问题。使用 HTTPS 通信机制可以有效地防止这些问题。本文我们就了解一下 HTTPS。 一、什么是 HTTPS HTTPS,是以安全为目标的 HTTP 通道,简单讲是 HTTP 的安全版。即 HTTP 下加入 SSL 层,HTTPS 的安全基础 阅读全文
posted @ 2019-03-21 14:36
白露~
阅读(2324)
评论(0)
推荐(1)
摘要:
1. MySql+Memcached架构的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1.MySQL需要不断进行拆库拆表,Memcach 阅读全文
posted @ 2019-03-21 14:33
白露~
阅读(407)
评论(0)
推荐(1)
摘要:
20180903典型常见问题总结 分布式锁的3种实现方式 秒杀系统架构分析与实战 常见问题整理目录 20190915问题总结 20180917问题总结 20180915问题总结二 20190223-问题总结 20190305-问题 20190312问题总结 从深圳回武汉的面试感想以及一些面试题 阅读全文
posted @ 2019-03-20 12:08
白露~
阅读(162)
评论(0)
推荐(0)
摘要:
一、概述 谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)! 类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLo 阅读全文
posted @ 2019-03-20 12:05
白露~
阅读(395)
评论(0)
推荐(0)
摘要:
本篇继续学习AQS中的另外一个内容-Condition。想必学过java的都知道Object.wait和Object.notify,同时也应该知晓这两个方法的使用离不开synchronized关键字。 synchronized是jvm级别提供的同步原语,它的实现机制隐藏在jvm实现中。作为Lock系 阅读全文
posted @ 2019-03-20 12:04
白露~
阅读(874)
评论(0)
推荐(0)
摘要:
1.volatile最适用一个线程写,多个线程读的场合。 如果有多个线程并发写操作,仍然需要使用锁或者线程安全的容器或者原子变量来代替。(摘自Netty权威指南) 疑问:如果只是赋值的原子操作,是否可以多个线程写?(答案:可以,但是一般没有这样的必要,即没有这样的应用场景) 最经典的使用案例: vo 阅读全文
posted @ 2019-03-20 00:34
白露~
阅读(291)
评论(0)
推荐(0)
摘要:
volatile的适用场景 把代码块声明为 synchronized,有两个重要后果,通常是指该代码具有 原子性(atomicity)和 可见性(visibility)。 原子性意味着个时刻,只有一个线程能够执行一段代码,这段代码通过一个monitor object保护。从而防止多个线程在更新共享状 阅读全文
posted @ 2019-03-20 00:25
白露~
阅读(307)
评论(0)
推荐(0)
|