自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

深擎王祖龙

深擎信息科技有限公司,资深软件工程师

原创 Java工程师进阶之路(一)——Java基础知识

1. 面向对象和面向过程的区别 面向过程 面向对象 2. Java 语言有哪些特点? 3. 关于 JVM JDK 和 JRE 最详细通俗的解答 JVM JDK 和 JRE 4. Oracle JDK 和 OpenJDK 的对比 5. Java和C++的区别? 6. 什么是 Java 程...

2019-05-30 21:44:38

阅读数 240

评论数 0

原创 CAP 定理的含义

分布式系统(distributed system)正变得越来越重要,大型网站几乎都是分布式的。 分布式系统的最大难点,就是各个节点的状态如何同步。CAP 定理是这方面的基本定理,也是理解分布式系统的起点。 本文介绍该定理。它其实很好懂,而且是显而易见的。下面的内容主要参考了 Michael Whi...

2019-05-09 21:58:19

阅读数 39

评论数 0

原创 [设计模式]——生成器模式(Builder)

Intent 封装一个对象的构造过程,并允许按步骤构造。 Class Diagram Implementation 以下是一个简易的 StringBuilder 实现,参考了 JDK 1.8 源码。 public class AbstractStringBuilder { protect...

2019-04-17 09:35:05

阅读数 40

评论数 0

原创 java8-Stream集合操作快速上手

目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足...

2019-04-16 16:32:32

阅读数 36

评论数 0

原创 学习资料(持续更新)

图说设计模式 https://design-patterns.readthedocs.io/zh_CN/latest/index.html SpringBoot教程 http://blog.didispace.com/tags/Spring-Boot/ SpringCloud教程 http://b...

2019-04-08 06:28:46

阅读数 72

评论数 2

原创 架构之美

架构的完美性 《团队之美》这本书里面有对 Mike Cohn 的一段采访,他提到: “一个应用中所有的代码不一定要处于同样的质量水平”。 “不是每件事都要做到第一流,在大多数情况下,我们根本没机会做到第一流”。 软件架构设计其实更加类似于大自然“设计”一个生物,通过演化让生物适应环境,逐步变得更...

2019-04-07 20:32:15

阅读数 389

评论数 0

原创 [设计模式]——工厂模式(Factory)

文章目录简单工厂(Simple Factory)IntentClass DiagramImplementation工厂方法(Factory Method)IntentClass DiagramImplementation抽象工厂(Abstract Factory)IntentClass Diagr...

2019-04-07 19:56:06

阅读数 17

评论数 0

原创 [设计模式]——单例模式(Singleton)

单例(Singleton) Intent 确保一个类只有一个实例,并提供该实例的全局访问点。 Class Diagram 使用一个私有构造函数、一个私有静态变量以及一个公有静态函数来实现。 私有构造函数保证了不能通过构造函数来创建对象实例,只能通过公有静态函数返回唯一的私有静态变量。 Imple...

2019-04-07 19:29:48

阅读数 25

评论数 0

原创 50道Redis面试题

1、什么是Redis? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的K...

2019-04-03 21:02:30

阅读数 107

评论数 0

原创 gulp 打包报错:ReferenceError: internalBinding is not defined

> gulp build internal/util/inspect.js:31 const types = internalBinding('types'); ^ ReferenceError: internalBinding is no...

2019-03-28 19:57:33

阅读数 439

评论数 0

原创 工作三到五年,你迈过这些坎了吗?

毕业,就像一个大大的句号,从此,我们告别了一段纯真的青春、一段年少轻狂的岁月、一个充满幻想的时代,纷纷走向了社会。 刚毕业的时候,作为职场新人,我们都拿着接近的薪水,干着相似的事情,大家都过得差不多。 然而三到五年过去了,渐渐大家的差距就出来了。小伙伴A已经成了公司里的技术骨干...

2019-03-07 21:49:44

阅读数 1764

评论数 2

原创 微服务(Microservices)——Martin Flower【翻译】

微服务 “微服务架构(Microservice Architecture)”一词在过去几年里广泛的传播,它用于描述一种设计应用程序的特别方式,作为一套独立可部署的服务。目前,这种架构方式还没有准确的定义,但是在围绕业务能力的组织、自动部署(automated deployment)、端智能(int...

2019-03-07 21:42:53

阅读数 318

评论数 0

原创 SRVE0255E: A WebGroup/Virtual Host to handle /p2pd/servlet/dispatch has not been defined.

Technote (troubleshooting) Problem(Abstract) When setting up IBM Cognos within IBM WebSphere, the URI is not accessible. The error message when t...

2019-02-24 12:52:34

阅读数 9092

评论数 0

原创 阿里巴巴Java开发手册之MySQL数据库和工程结构

文章目录MySQL 数据库(一) 建表规约(二) 索引规约(三) SQL 语句(四) ORM 映射工程结构(一) 应用分层(二) 二方库依赖(三) 服务器 MySQL 数据库 (一) 建表规约 【强制】表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tin...

2019-02-24 12:37:08

阅读数 130

评论数 0

原创 阿里巴巴Java开发手册之异常日志、单元测试和安全规约

文章目录异常日志异常处理日志规约单元测试安全规约 异常日志 异常处理 【强制】Java 类库中定义的一类 RuntimeException 可以通过预先检查进行规避,而不应该 通过catch 来处理,比如:IndexOutOfBoundsException,NullPointerExceptio...

2019-02-23 19:01:12

阅读数 70

评论数 0

原创 阿里巴巴Java开发手册之编程规约

编程规约 命名风格 【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 反例: _name / __name / Object/name/nameObject / name_ / nameObject/name/​name / Object$ 【强制】代码中...

2019-02-23 18:10:12

阅读数 105

评论数 0

原创 Linux组管理和权限管理

文章目录1.1 Linux 组基本介绍1.2 文件/目录 所有者1.2.2 修改文件所有者1.3 组的创建1.3.1 基本指令1.3.2 应用实例:1.4 文件/目录 所在组1.5 其他组1.6 改变用户所在组1.6.1 改变用户所在组1.6.2 应用实例1.7 权限的基本介绍1.8 rwx 权...

2019-02-17 22:10:30

阅读数 131

评论数 0

原创 Linux实用指令

文章目录1.1 指定运行级别1.2 切换到指定运行级别的指令1.2.1 基本语法1.2.2 应用实例1.2.3面试题1.2.4课堂练习1.3 帮助指令1.3.1 介绍1.3.2 man获得帮助信息1.3.3 help指令1.3.4 当一个指令不熟悉如何学习的建议1.4 文件目录类1.4.1 pw...

2019-02-17 21:57:59

阅读数 2653

评论数 0

原创 BlockChain - Merkle Tree学习

/*最近在看Ethereum,其中一个重要的概念是Merkle Tree,以前从来没有听说过,所以查了些资料,学习了Merkle Tree的知识,因为接触时间不长,对Merkle Tree的理解也不是很深入,如果有不对的地方,希望各位大神指正*/ Merkle Tree概念    ...

2017-10-19 11:27:58

阅读数 980

评论数 0

原创 BlockChain技术系列(七)- 应用编程接口

一个遵循MVC-B架构的应用– Model, View, Control, BlockChain. VIEW LOGIC – 与控制逻辑集成的移动或WEB 用户界面。CONTROL LOGIC – 协调用户界面、数据模型和交易与链码的APIDATA MODEL – 应用数据模型– 管理包括文...

2016-08-24 14:30:06

阅读数 1549

评论数 0

原创 BlockChain技术系列(六)- 应用编程接口

fabric的主要接口是REST API。 REST API允许应用注册用户,查询区块链,并发布交易。 CLI为了开发,同样提供有效API的子集。CLI允许开发人员能够快速测试链码或查询交易状态。 应用程序通过REST API与非验证的 peer 节点,这将需要某种形式的认证,以确保实体有适当的...

2016-08-24 14:23:43

阅读数 5628

评论数 1

原创 BlockChain技术系列(五)- 拜占庭共识

obcpbft包是PBFT共识协议[1]的实现,其中提供了验证器之间的共识,虽然验证器的阈作为Byzantine,即,恶意的或不可预测的方式失败。在默认的配置中,PBFT容忍t 处理提供PBFT共识协议的参考实现,obcpbft 插件还包含了新颖的Sieve共识协议的实现。基本上Sieve背后的...

2016-08-24 14:21:39

阅读数 3151

评论数 2

原创 BlockChain技术系列(四)- fabric安全介绍

这一节将讨论下面的图所展示的设置描述。特别的,系统是由下面这些实体构成的:成员管理基础架构,如从一个实体集合中区分出不同用户身份的职责(使用系统中任意形式的标识,如:信用卡,身份证),为这个用户注册开户,并生成必要的证书以便通过fabric成功的创建交易,部署或调用链码。 Peers, 它们...

2016-08-24 14:18:50

阅读数 6953

评论数 0

原创 BlockChain技术系列(三)- fabric协议介绍

fabric的点对点(peer-to-peer)通信是建立在允许双向的基于流的消息gRPC上的。它使用Protocol Buffers来序列化peer之间传输的数据结构。Protocol buffers 是语言无关,平台无关并具有可扩展机制来序列化结构化的数据的技术。数据结构,消息和服务是使用 ...

2016-08-09 10:08:06

阅读数 6261

评论数 0

原创 BlockChain技术系列(二)- fabric架构介绍

fabric是由下面这个小节所描述的核心组件所组成的。 2.1 架构 这个架构参考关注在三个类别中:会员(Membership),区块链(Blockchan)和链码(chaincode)。这些类别是逻辑结构,而不是物理上的把不同的组件分割到独立的进程,地址空间,(虚拟)机器中。 2.1...

2016-08-09 09:15:08

阅读数 6664

评论数 1

原创 BlockChain技术系列(一)- fabric介绍

1. 介绍 这份文档规范了适用于工业界的区块链的概念,架构和协议。 1.1 什么是 fabric? fabric 是在系统中数字事件,交易调用,不同参与者共享的总账。总账只能通过共识的参与者来更新,而且一旦被记录,信息永远不能被修改。每一个记录的事件都可以根据参与者的协议进行加密验证。 ...

2016-08-09 09:04:02

阅读数 5971

评论数 0

原创 区块链大有用武之地的20大行业

作为一种分散式数字化货币,比特币能存在,完全有赖于一种所谓的区块链技术,这实际上是一种公共账簿,可通过数字化方式,安全、自动化地验证和记录大量交易。 企业家们已逐渐相信,使用这项技术,有望颠覆更多的行业。就使用一种分散式平台来验证和组织的交易而言,眼下商业界存在大量的使用场合。这种平台不...

2016-08-05 11:50:10

阅读数 4459

评论数 1

原创 Blockchian区块链:IBM HyperLedger fabric 简述

在我看来,比特币就是现实中的V字仇杀队,当然现实是更残酷的世界政府,这场博弈关乎着人类文明、政治、社会属性、经济和人权。  IBM HyperLeger 又叫 fabric,你可以把它想象成一个由全社会来共同维护的一个超级账本,没有中心机构拥揽权力,你的每一笔交易都是全网公开且安全的,信用由全社...

2016-07-28 14:43:00

阅读数 9736

评论数 0

原创 区块链:起源、原理及应用

近年来,区块链技术正在经历快速发展,并吸引了超过10亿美元的投资规模。而我们认为,最值得重视的是,区块链正在走进金融机构、大型企业、政府决策层的视野,大有从“草根力量”引发经济变革的态势。 证券交易所:2015年12月,纳斯达克首次在个股交易商使用区块链技术,其合作伙伴Chain.com在对一位...

2016-07-25 10:33:10

阅读数 52300

评论数 5

原创 区块链介绍

定义:区块链(Blockchain)是比特币的底层技术,像一个数据库账本,记载所有的交易记录。这项技术也因其安全、便捷的特性逐渐得到了银行与金融业的关注。简介:区块链(Blockchain)是比特币的一个重要概念,本质上是一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方法相...

2016-07-06 14:08:19

阅读数 3900

评论数 0

原创 vi 操作笔记

1.关于退出 :wq! ----强制保存退出 :wq ---- 保存退出 :x ----- 作用和:wq 一样 ZZ ---- 作用和:wq一样,(注意Z是大写的,并且不是在命令模式) :q ---- 退出 :q! --- 强制退出 ===================...

2015-02-16 22:25:21

阅读数 680

评论数 0

原创 结构-06. 复数四则运算(15)

本题要求编写程序,计算2个复数的和、差、积、商。 输入格式: 输入在一行中按照“a1 b1 a2 b2”的格式给出2个复数C1=a1+b1*i和C2=a2+b2*i的实部和虚部。题目保证C2不为0。 输出格式: 分别在4行中按照“(a1+b1i) 运算符 (a2+b2i) = 结果”的格式...

2015-02-15 11:05:34

阅读数 1060

评论数 0

原创 数组-09. 求矩阵的局部极大值(15)

给定M行N列的整数矩阵A,如果A的非边界元素A[i][j]大于相邻的上下左右4个元素,那么就称元素A[i][j]是矩阵的局部极大值。本题要求给定矩阵的全部局部极大值及其所在的位置。 输入格式: 输入在第1行中给出矩阵A的行数M和列数N(3 输出格式: 每行按照“元素值 行号...

2015-02-15 10:23:01

阅读数 3271

评论数 0

原创 数组-07. 求一批整数中出现最多的个位数字(20)

给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。 输入格式: 输入在第1行中给出正整数N( 输出格式: 在一行中按格式“M: n1 n2 ...”输出,其中M是最大次数,n1、n2...

2015-02-15 10:05:28

阅读数 4519

评论数 0

原创 结构-03. 平面向量加法(10)

本题要求编写程序,计算两个二维平面向量的和向量。 输入格式: 输入在一行中按照“x1 y1 x2 y2”的格式给出两个二维平面向量V1=(x1, y1)和V2=(x2, y2)的分量。 输出格式: 在一行中按照“(x, y)”的格式输出和向量,坐标输出小数点后1位(注意不能输出-0.0)。...

2015-02-13 14:32:10

阅读数 2088

评论数 0

原创 数组-12. 简易连连看(20)

本题要求实现一个简易连连看游戏模拟程序。 给定一个2Nx2N的方阵网格游戏盘面,每个格子中放置一些符号。这些符号一定是成对出现的,同一个符号可能不止一对。程序读入玩家给出的一对位置(x1, y1)、(x2, y2),判断这两个位置上的符号是否匹配。如果匹配成功,则将两个符号消为“*”并输出消去后...

2015-02-13 13:47:38

阅读数 1867

评论数 0

原创 循环-08. 二分法求多项式单根(20)

二分法求函数根的原理为:如果连续函数f(x)在区间[a, b]的两个端点取值异号,即f(a)f(b) 二分法的步骤为: 检查区间长度,如果小于给定阈值,则停止,输出区间中点(a+b)/2;否则如果f(a)f(b)如果f((a+b)/2)正好为0,则(a+b)/2就是要求的根;否则如果f((...

2015-02-10 10:41:45

阅读数 1298

评论数 0

原创 字符串-03. 字符串的冒泡排序(20)

我们已经知道了将N个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的K( 输入格式: 输入在第1行中给出N和K(1 输出格式: 输出冒泡排序法扫描完第K遍后的中间结果序列,每行包含一个字符串。 输入样例: 6 2 best cat east a free da...

2015-02-08 20:15:53

阅读数 989

评论数 0

原创 循环-23. 找完数(20)

所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。 输入格式: 输入在一行中给出2个正整数m和n(0 输出格式: 逐行输出给定范围内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数...

2015-02-08 20:02:35

阅读数 1619

评论数 0

原创 循环-17. 简单计算器(20)

模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,4种运算符的优先级相同,按从左到右的顺序计算。 输入格式: 输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。 输出格式: 在一行中输出算式的运算结果,或者如...

2015-02-08 19:54:22

阅读数 1045

评论数 0

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