摘要:
一、微服务架构图: 二、技术介绍:(技术选型随着代码的编写会完成) 关于技术选型,我盗了一张我老大的微服务技术栈的图,如下:原文:http://www.jianshu.com/p/2da6becfb019 我将会用到上图中的如下技术 服务注册和服务发现:consul 服务健康检查:consul 配置 阅读全文
摘要:
1.1 lambda表达式 一、处理匿名内部类 1、Runnable接口 1 new Thread(new Runnable() { 2 public void run() { 3 System.out.println("hello world!!!"); 4 } 5 }).start(); 6 7 阅读全文
摘要:
第一章 JVM内存结构 1、为什么要了解JVM内存管理机制 JVM自动的管理内存的分配与回收,这会在不知不觉中浪费很多内存,导致JVM花费很多时间去进行垃圾回收(GC) 内存泄露,导致JVM内存最终不够用 2、JVM内存结构 根据上图,JVM内存结构包括: 方法区 - Java虚拟机规范 <jdk8 阅读全文
摘要:
领域驱动(DDD,Domain Driven Design)为软件设计提供了一套完整的理论指导和落地实践,通过战略设计和战术设计,将技术实现与业务逻辑分离,来应对复杂的软件系统。本系列文章准备以实战的角度来介绍 DDD,首先编写领域驱动的代码模型,然后再基于代码模型,引入 DDD 的各项概念,先介绍 阅读全文
摘要:
1、Java代码执行流程 第一步:*.java-->*.class(编译期) 第二步:从*.class文件将其中的内容加载到内存(类加载)(运行期) 第三步:执行代码(运行期) 说明: 整个白框部分表示JVM管理的内存 包含栈帧的地方称作JVM方法栈,一个栈帧就是一个方法 在Hotspot JVM中 阅读全文
摘要:
一、dubbo架构设计 1、十层架构第一层:service层,接口层,给服务提供者和消费者来实现的。第二层:config层,配置层,主要是对dubbo进行各种配置的。第三层:proxy层,服务代理层,透明生成客户端的stub和服务单的skeleton。第四层:registry层,服务注册层,负责服务 阅读全文
摘要:
一、基本概念 接口(Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合。接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。 如果一个类只由抽象方法和全局常量组成,那么这种情况下不会将其定义为一个抽象类。只会定义为一个接口,所以接口严格的来 阅读全文
摘要:
13.1、DH 非对称算法的基石 仅能用于密钥分配,不能用于加解密数据,一般加密数据用AES 密钥长度:512~1024中的64的整数倍 双方各有自己的密钥对 13.2、RSA 最经典的非对称加密算法 也可认为是使用最多的非对称加密算法 能用于密钥分配,也能用于加解密数据(“私钥加密,公钥解密”和“ 阅读全文
摘要:
10.1、DES 已破解,不再安全,基本没有企业在用了 是对称加密算法的基石,具有学习价值 密钥长度56(JDK)、56/64(BC) 10.2、DESede(三重DES) 早于AES出现来替代DES 计算密钥时间太长、加密效率不高,所以也基本上不用 密钥长度112/168(JDK)、128/192 阅读全文
摘要:
6.1、MD5 推荐使用CC(即Commons Codec)实现 虽然已被破解,但是仍旧广泛用于注册登录模块与验证下载的文件的完整性 可以自己写一个注册登录模块;自己下载一个MD5加密的文件,然后通过之前编写的工具类(或者使用CC的方法)进行验证(具体的例子在《Java加密与解密艺术(第二版)中有》 阅读全文