4 E-臻

尚未进行身份认证

你可以通过知乎ID找到我:义臻

等级
TA的排名 2w+

云计算中的认证基础——AK

虽然AK还不为大家所熟知,但我敢百分百肯定,未来的几年里,AK在互联网业界的知名度绝对不会比AK47差,甚至会更强,会达到“无人不知,无人不晓”的程度。任何使用云计算的企业和个人,都必须首先经过AK的洗礼!什么是AK记得第一次和别人分享AK的时候,对方都先是一愣,然后调侃我怎么一个搞互联网的去搞军工了!这不是一个段子,也许你们脑海中想到的AK还是1974年11月7日在阅兵式上首次露面的这个...

2020-01-12 20:38:00

走进SAML——基础篇

SAML的全称是Security Assertion Markup Language。提到SAML,我们主要想到的是其在各种单点登录场景中大行其道。单点登录我们通常叫做SSO,那么SAML到底是如何实现SSO的呢?在这个系列的文章中,我将为大家阐释清楚。不过,水是有源的,树是有根的。一切的一切,还得从非对称密码学谈起!密码学新方向1976年,两个斯坦福大学的杰出学者,在经过了三年的合作之后...

2019-11-08 22:51:30

Java 内存区域和GC机制

转发博客Java 内存区域和GC机制JVM监控和调优 

2018-11-09 16:15:29

关于linux的load的解释,很好的文章

http://blog.csdn.net/scugxl/article/details/77199403重点内容:对于N核心处理器,系统的全量load是N*1.00。例如:对于一个4核心的机器,它的load达到4.00时是全量运行的。所以一个正常的N核心的机器,它的load应该偶尔达到N或者大于N。多数时间应该小于N。这里面有个经验值为0.7。即load达到N的0.7倍时比较好。...

2018-02-12 15:57:36

学习Java,我建议这样做

很多同学向我邀答,想要学习Java,却不知道该学什么,也不知道该学到什么深度?也有些外包的同学,想在技术上提升,却不知怎么做?本次 Live专为想学习和提高Java的人定制,给出了详细的学习路线,适合想要系统的专业的学习Java的人。尤其是:想要从事Java开发工作的大学生,想要转行当Java程序员的在职人员,想要提升Java水平却不知如何入手的小白等。30天从入门到精通? 那是宣传的...

2018-01-04 20:10:23

一个demo,让你的开发周期缩短一半

先上github地址点击打开链接由于现在java后端开发经常使用SSM框架,SpringMVC+Spring+MyBatis。因此作者维护了一个开源小demo,此demo中采用了JAVA项目常用的分层结构,从上到下依次是表现层(controller)业务层(service)数据访问层(dao)。另外,client包是需要暴露给第三方调用的接口所在的包,可以被独立的打包发布。common包是项目...

2017-07-26 20:07:39

序列化代理模式

我们知道,实现了序列化的类。在反序列化时,实例的创建是由readObject方法来完成的。由于这是一个不同于构造函数的创建类实例的通道,因此在构造函数中的状态约束条件在readObjetc中也得一条不落下的实现。这很让人头大,因此这里介绍一种模式,将实例的反序列化也交给改造函数来完成,即序列化代理模式。要想稳健的将带有重要约束条件的对象序列化时,这种模式可能是最容易的方法。代码如下:import ...

2017-05-18 14:21:41

多网卡在同一网段内的问题

公司那个提供音乐下载的域名流量直逼1Gbps,但是系统的连接却不高,服务器用的是DELL2850的,板载两个Gbe的网口,还插了两块Intel的Gbe网卡,因此打算通过多网卡的负载均衡扩充一下系统的网络带宽。但是不想用多网卡的邦定,感觉那样不太灵活,因此决定采用Advanced Routing来解决这个问题。 查了一下 man ip,然后开始做了:1) 给四个网口配置了四个

2017-05-10 17:22:02

深入理解JAVA序列化

关于Java序列化的文章早已是汗牛充栋了,本文是对我个人过往学习,理解及应用Java序列化的一个总结。此文内容涉及Java序列化的基本原理,以及多种方法对序列化形式进行定制。      1. 什么是Java对象序列化Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期更长。但在现实应用中,就可能...

2017-05-05 15:51:59

处理Callable线程内部的非受检异常

之前的博客中介绍过Runnable类线程的异常处理,数据JAVA多线程的童鞋应该知道。Java中处理Thread和Runnable线程体系之外,还用著名的Executor和Callable线程体系。而且,后者在实际中更为常见。那么在Runnable中奏效的UncaughtExceptionHandler机制在Callable中时候仍然有效呢?我们用代码来验证一下。  import j...

2017-04-22 18:42:28

UncaughtExceptionHandler—处理Runnable线程内的非受检异常

Java的异常非为受检异常和非受检异常。由于在多线程中,run()方法无法继续向上显式抛出异常。所以这就使得Thread线程中的异常处理变得棘手。首先对于受检异常,其应对办法非常通用:就是直接在run()方法体中捕获异常,然后进行对应的处理。对于非受检异常,JVM会帮助我们捕获到。那么我们如何处理JVM捕获的异常呢?答案是Thread.UncaughtExceptionHandler类。正如JDK文档所介绍的一样:“当一个线程由于发生了非受检异常而终止时,JVM会使用Thread.gerUncaugh

2017-04-21 10:54:13

变量的延迟初始化

在绝大多数的系统中,我们都会使用正常的初始化。正常的初始化代码是这样的:private final MyClass field = new MyCLass();但在有些程序中,我们不希望某些变量在正常的类加载过程中就被初始化。换言之,我们希望某些变量能够延迟初始化。在阅读下面的内容之前,笔者希望你能读一下我的另外一篇文章,单例模式的5种JAVA实现。你要问我为什么?答案只有四个字,“见多识广”!本...

2017-04-19 19:35:19

线程安全性的文档化

首先说一个错误的观点是“只要是加了synchronized关键字的方法或者代码块就一定是线程安全的,而没有加这个关键字的代码就不是线程安全的”。这种观点认为“线程安全要么全有要么全无”,事实上这是错误的。因为线程安全包含了几种级别:不可变的(Immutable):类的实例不可变(不可变类),一定线程安全,如String、Long、BigInteger等。无条件的线程安全(Unconditi

2017-04-18 09:50:15

一个测试任务并发执行时间的方法

import java.util.concurrent.CountDownLatch;import java.util.concurrent.Executor;/** * Created by xuyizhen on 2017/4/16. */public class Util { /** * 测试任务task在指定的线程池execurtor中的并发度与性能的关系

2017-04-16 17:53:07

代码很烂,所以离职?

前一段时间一直在面试,有很多感悟,今天分享下其中的一个话题。我在面试的时候通常会问这么一个问题:你为什么离职?其中有不少同学会提到这么一个原因,现在的项目代码太烂了,前人留下了很多坑,我实在忍受不了了。其实在我看来,这个原因显得未免太不职业了,而且可能把工作想的太过于理想化了。如果因为代码很烂就离职,那么你跳槽到下一个公司依然会面对同样的现状,因为几乎每个人,都会觉得自己公

2017-04-07 21:51:55

Java异常中的异常链机制

一.异常链常常会再捕获一个异常后跑出另外一个异常,并且希望把异常原始信息保存下来,这被称为异常链。 在JDK1.4以前,程序员必须自己编写代码来保存原始异常信息, 现在所有Throwable的子类子构造器中都可以接受一个cause对象作为参数,这个cause就异常原由,代表着原始异常,即使在当前位置创建并抛出行的异常,也可以通过这个cause追踪到异常最初发生的位置。 Throwable...

2017-04-01 17:18:55

Idea导出可执行jar包

1.  在菜单中选择File-》Project Structure,在出现的图中点击加号。并选择标号3的选项。2 按照上图选择后,出现下图,再按照红色标号进行选择。1位置选择Java应用程序的主类,2位置选择将项目中的jar包也导入到即将生成的jar包中,3位置一定要改成resources所在的路径,否则生成的jar包不可用。3 在上图中点击OK后会出现一个对话框,其中的内容不需要更改,直接点击确...

2017-03-31 21:51:15

HashMap和IdentifyHashMap

HashMap和IdentifyHashMap是Java中两个常见的Map类,对这两个类感兴趣的可以去看他们的源码。在这里只说他们的区别。 HashMap类判断键k1和k2相等的条件为 (k1==null?k2==null:k1.equals(k2))==trueIdentifyHashMap判断k1和k2相等的条件是(k1==k2) 来看下面的代码: import ...

2017-03-28 17:13:20

HTTP 请求头中的 X-Forwarded-For(XFF)

在Java代码实践中,有两种方式可以从HTTP请求中获得请求者的IP地址。一个是从RemoteAddress中获得,另一个是从X-Forward-For中获得,但他们的安全性和使用场景各有不同。一旦用错,就可能为系统造成漏洞。因此,需要开发者对这两个参数深入的理解。RemoteAddress代表的是当前HTTP请求的远程地址,即HTTP请求的源地址。HTTP协议在三次握手时使用的就是这个R...

2017-03-12 20:39:01

mysql海量数据操作的一些优化方法

点击打开链接

2017-01-05 14:19:59

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。