Stella981 Stella981
3年前
Okio精简高效的IO库
本节主要讲讲Okhttp底层使用的IO库Okio,Okio同样是Square公司推出的增强型IO处理库,旨在增强原生JavaIO流的处理,以更加简便,高效的方式处理IO流操作。接下来我会从以下方面来分析它。1.Okio的特点和优势2.Okio结构分析3.Okio的流程分析,读与写的实现4.Buffer写数据的精
Stella981 Stella981
3年前
Serverless Kubernetes 场景和架构剖析
在GopherMeetup杭州站上,阿里云高级技术专家汤志敏进行了主题为《ServerlessKubernetes场景和架构剖析》的演讲。容器和无服务器是当下云原生的火热主题,二者的结合极大降低了容器的使用门槛,减少了总体计算成本,也让用户摆脱了底层基础设施管理的复杂性。然而提供一个规模化和高弹性的ServerlessContain
Stella981 Stella981
3年前
Mockito模拟进行单元测试
1.1Mockito是什么?    MOCK意思是模拟的意思,主要被用来进行数据的人工组织,不会真正地调用第三方服务器,类似redis,mysql等都不会调用,也不用关心数据底层是如何进行处理的,我们要做的只是将本单元的逻辑进行单元测试,验证数据的逻辑处理性,而其中mock较好的框架就是Mockito。    Mockito是mocking
Stella981 Stella981
3年前
Netty在Dubbo中的线程名称
在项目中,我们会使用RocketMQ和Dubbo.前者用于发送或消费消息,后者用于两个模块之间的接口调用.RocketMQ和Dubbo在它们的底层都使用Netty作为网络通信的框架.那么今天我们就来看一下,在Dubbo中,使用的Netty线程名称叫什么?环境和流程如下1.启动zookeeper2.一个简单的Dubbo提供者,并启动它
Wesley13 Wesley13
3年前
JDK中的Atomic包中的类及使用
引言Java从JDK1.5开始提供了java.util.concurrent.atomic包,方便程序员在多线程环境下,无锁的进行原子操作。原子变量的底层使用了处理器提供的原子指令,但是不同的CPU架构可能提供的原子指令不一样,也有可能需要某种形式的内部锁,所以该方法不能绝对保证线程不被阻塞。Atomic包介绍在JDK1
Wesley13 Wesley13
3年前
CAS机制与自旋锁
CAS(CompareandSwap),即比较并替换,java并发包中许多Atomic的类的底层原理都是CAS。它的功能是判断内存中某个地址的值是否为预期值,如果是就改变成新值,整个过程具有原子性。具体体现于sun.misc.Unsafe类中的native方法,调用这些native方法,JVM会帮我们实现汇编指令,这些指令是CPU的原子指令,因此
Stella981 Stella981
3年前
2019年JAVA面试题(高级资深)
记录下本年度最新的面试题:20190424//某互联网公司,劳工资源管理方向职位1.bio/nio/aio介绍下,粘包、拆包问题怎么解决?2.数据库四个特性是什么,事务传播性是怎么样的?spring事务和数据库事务的区别关系3.HashMap/concurrentHashMap区别和底层实现、TreeMap特点4.sql优化
可莉 可莉
3年前
2019年JAVA面试题(高级资深)
记录下本年度最新的面试题:20190424//某互联网公司,劳工资源管理方向职位1.bio/nio/aio介绍下,粘包、拆包问题怎么解决?2.数据库四个特性是什么,事务传播性是怎么样的?spring事务和数据库事务的区别关系3.HashMap/concurrentHashMap区别和底层实现、TreeMap特点4.sql优化
Wesley13 Wesley13
3年前
Java中高级工程师面试精选
    时代在发展,技术在更迭,水涨船也高,我们的面试也发生了重大变化,从区别到原理,从代码到jvm,问题越来越底层,知识越来越基础。1、ConcurrentModificationException是什么,为什么会出现,以及在单线程或者多线程环境下如何解决此问题?假如在多线程中使用Vector可以避免吗。2、HashMap的数据结构是什么,
Stella981 Stella981
3年前
ARKit_3_任意门
写本篇文章的目标是:做到对大家有用。AR真的很神奇,能够有这么炫,这么有意思的效果。看起来特别难实现,但是苹果官方封装了优雅的ARkit,很多底层的算法实现我们不需要关心,所以接下来详细的讲解每一步的实现过程。效果图:门外和门里!(https://images2018.cnblogs.com/blog/910578/201803/9