Mlib

手起键落间

IPv6安全浅析

原文链接 :IPv6安全浅析 - Huawei - 2010.12 第52期 “缺乏安全性是互联网天生的弱点,这与是否采用IPv6关系不大。事实上,IPv6并没有引入新的安全问 题,反而由于IPSec的引入以及发送设备采用永久性IP地址而解决了网络层溯源难题,给网络安全提供了 根本的解决途径,有...

2019-03-13 19:52:55

阅读数 3160

评论数 2

【HTTPS】使用OpenSSL生成带有SubjectAltName的自签名证书

操作步骤 首先新建一个配置文件 ssl.conf如下: [ req ] default_bits = 4096 distinguished_name = req_distinguished_name req_extensions = req_ext [ req_disting...

2018-11-01 14:12:51

阅读数 481

评论数 0

HTTPS原理与证书生成

HTTPS HTTPS与HTTP是什么关系呢?我们可以对比下HTTP与HTTPS的请求过程: HTTPS 在 TCP 和 HTTP 之间增加了 TLS(Transport Layer Security,传输层安全),提供了内容加密、身份认证和数据完整性三大功能。 HTTPS也就是HTTP ...

2018-10-31 18:09:54

阅读数 224

评论数 0

WebSocket协议浅析

HTTP协议的缺点 单向请求:只能是客户端发起,服务端处理并响应 请求/响应模式 无状态协议 半双工协议 这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端要获知就非常麻烦。我们只能使用轮询:每隔一段时候,就发出一个询问,了解服务器有没有新的信息。轮询的效率低,非常浪费资源。We...

2018-10-29 21:12:09

阅读数 81

评论数 0

CPU Cache与缓存行

引言 先看下面这两个循环遍历哪个快? int[][] array = new int[64 * 1024][1024]; // 横向遍历 for(int i = 0; i < 64 * 1024; i ++) for(int j = 0; j...

2018-09-14 16:13:06

阅读数 485

评论数 0

【Java】J.U.C并发包 - AQS机制

简介 Java并发包(java.util.concurrent)中提供了很多并发工具,这其中,很多我们耳熟能详的并发工具,譬如ReentrantLock、Semaphore,CountDownLatch,CyclicBarrier,它们的实现都用到了一个共同的基类 - AbstractQueue...

2018-08-27 10:24:00

阅读数 133

评论数 0

【Android】动态链接库so的加载原理

前言 最近开发的组件时常出现了运行时加载so库失败问题,每天都会有java.lang.UnsatisfiedLinkError的错误爆出来,而且线上总是偶然复现,很疑惑。所以本文将从AOSP源码简单跟踪Android中的动态链接库so的加载原理,试图找出一丝线索。 加载入口 首先我们知道...

2018-07-04 14:51:46

阅读数 502

评论数 0

【Android】单元测试方法简介

前言 基本单元测试框架 Java单元测试框架:Junit、Mockito、Powermockito等; Android单元测试框架:Robolectric、AndroidJUnitRunner、Espresso等。 最开始建议先学习Junit & Mockito...

2018-06-29 22:35:42

阅读数 135

评论数 0

【Java】使用Atomic变量实现锁

Atomic原子操作 Java从JDK1.5开始提供了java.util.concurrent.atomic包,方便程序员在多线程环境下,无锁的进行原子操作。原子变量的底层使用了处理器提供的原子指令,但是不同的CPU架构可能提供的原子指令不一样,也有可能需要某种形式的内部锁,所以该方法不能绝对保...

2018-05-23 10:18:06

阅读数 807

评论数 0

【Java】Thread类中的join()方法原理

简介 join()是Thread类的一个方法。根据jdk文档的定义: public final void join()throws InterruptedException: Waits for this thread to die. join()方法的作用,是等待这个线程结束;但...

2018-05-09 18:34:09

阅读数 1425

评论数 2

【Android】Retrofit源码分析

Retrofit简介 retrofit n. 式样翻新,花样翻新 vt. 给机器设备装配(新部件),翻新,改型 Retrofit 是一个 RESTful 的 HTTP 网络请求框架的封装。注意这里并没有说它是网络请求框架,主要原因在于网络请求的工作并不是 Retrofit 来...

2018-04-13 18:54:57

阅读数 203

评论数 0

【Android】App应用前后台切换的一种监听方法

Android本身并没有提供监听App的前后台切换操作的方法。最近看到一种简单巧妙的方法来监听前后台,这里分享记录一下。 一、Activity生命周期 我们知道在Android中,两个Activity,分别为A和B。假设此时A在前台,当A启动B时,他们俩之间的生命周期关系如下,可以参考之前的这...

2018-04-06 20:13:39

阅读数 600

评论数 0

【Java】线程池ThreadPoolExecutor实现原理

引言 线程池:可以理解为缓冲区,由于频繁的创建销毁线程会带来一定的成本,可以预先创建但不立即销毁,以共享方式为别人提供服务,一来可以提供效率,再者可以控制线程无线扩张。合理利用线程池能够带来三个好处: 降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 提高响应速度。当任务...

2018-02-13 17:34:17

阅读数 2012

评论数 1

【Android】OkHttp源码分析

Android为我们提供了两种HTTP交互的方式:HttpURLConnection 和 Apache HttpClient,虽然两者都支持HTTPS,流的上传和下载,配置超时,IPv6和连接池,已足够满足我们各种HTTP请求的需求。但更高效的使用HTTP 可以让您的应用运行更快、更节省流量。而O...

2018-01-26 19:02:36

阅读数 284

评论数 0

用Java实现断点续传 (HTTP)

断点续传的原理 其实断点续传的原理很简单,就是在 Http 的请求上和一般的下载有所不同而已。 打个比方,浏览器请求服务器上的一个文时,所发出的请求如下: 假设服务器域名为 www.sjtu.edu.cn,文件名为 down.zip。 GET /down.zip HTTP/1.1...

2018-01-22 16:26:53

阅读数 160

评论数 0

如何判断CPU是大端还是小端模式

一、概念及详解 在各种体系的计算机中通常采用的字节存储机制主要有两种: Big-Endian和Little-Endian,即大端模式和小端模式。 Big-Endian和Little-Endian的定义如下: 1) Little-Endian:就是低位字节排放在内存的低地址端,高位字节排放在内...

2018-01-18 16:59:25

阅读数 760

评论数 0

【Android】源码分析 - LRUCache缓存实现原理

一、Android中的缓存策略 一般来说,缓存策略主要包含缓存的添加、获取和删除这三类操作。如何添加和获取缓存这个比较好理解,那么为什么还要删除缓存呢?这是因为不管是内存缓存还是硬盘缓存,它们的缓存大小都是有限的。当缓存满了之后,再想其添加缓存,这个时候就需要删除一些旧的缓存并添加新的缓存。 ...

2018-01-13 11:20:29

阅读数 901

评论数 0

【算法】字符串循环移位后是否包含

问题 给定两个字符串s1和s2,要求判断s2是否能够被通过s1做循环移位(rotate)得到的字符串包含。 例如,s1=AABCD和s2=CDAA,返回true;给定s1=ABCD和s2=ACBD,返回false。 解法一最直接最笨的方法就对s1进行循环移动,再进行字符串包含的判断,从而...

2017-12-31 15:35:06

阅读数 304

评论数 0

【Android】源码分析 - View事件分发机制

事件分发对象(1)所有 Touch 事件都被封装成了 MotionEvent 对象,包括 Touch 的位置、时间、历史记录以及第几个手指(多指触摸)等。(2)事件类型分为 ACTION_DOWN, ACTION_UP,ACTION_MOVE,ACTION_POINTER_DOWN,ACTION_...

2017-12-26 19:27:57

阅读数 271

评论数 0

【算法】如何判断链表有环

如何判断单链表是否存在环 有一个单向链表,链表当中有可能出现“环”,就像题图这样。如何用程序判断出这个链表是有环链表? 不允许修改链表结构。 时间复杂度O(n),空间复杂度O(1)。 方法一、穷举遍历方法一:首先从头节点开始,依次遍历单链表的每一个节点。每遍历到一个新...

2017-12-25 20:05:59

阅读数 8721

评论数 1

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