幸运的梦之星

a lucky star

【架构系列】分布式微服务架构设计原理

我们先来张宏观的导图来看看分布式微服务设计架构的原理都有些什么?然后再详细介绍一下。 微服务的演变历史 在了解分布式微服务架构设计原理之前,我们首先应该知道什么是微服务,以及微服务是如何发展而来的。 单体架构——》服务化——》微服务 1、单体架构 JEE架构 早期的企...

2018-05-04 18:18:08

阅读数 277

评论数 2

【高效代码调错系列之静态代码分析】——将错误扼杀在摇篮

前言 什么是静态代码分析 静态代码分析工具的优势 常见的静态代码分析工具 常见的静态代码分析工具对比 总结前言前面我们讲到了代码规范,规范是有了,但是有没有按照规范执行呢,总不能人为的去检查吧,因此我们有了静态代码分析工具,它能够在代码构建过程中帮助开发人员快速、有效的定位代码缺陷并及时纠正这些问...

2017-11-27 21:05:52

阅读数 254

评论数 1

【高效代码调错系列之代码规范】——让软件学会自己寻找缺陷

前言 使用断言 异常与日志处理前言确保你的出错信息可以帮助你调试错误,不能只提醒你需要调试错误。使用断言代码的每一块都建立在一个无数假设的平台上面——某些条件必须是正确的才能让运行结果符合预期。往往缺陷的出现是因为某些假设不成立或者是错误的。避免做出这些假设是不可能的也是无意义的,但是我们不仅可以...

2017-11-27 19:44:24

阅读数 249

评论数 3

【高效代码调错系列之代码规范】——写优雅的代码

前言 规范举例 原则参考 总结 前言我们都喜欢漂亮衣服,同样的一份优雅美丽的代码,也是大家的最爱。优雅的代码不仅能够让自己看着舒服,别人看着也舒服,同时也更加方便我们在出现了问题之后,能够快速的找到问题并解决问题。所谓的规矩,都是人定的。就像买衣服一样,每个人的审美标准不一样,就会导致你觉得这件衣...

2017-11-27 11:02:03

阅读数 328

评论数 4

【高效代码调错系列】——宏观概况

前言 如何避免错误的产生 错误发现后我们应该怎么做 错误解决后我们又该做些什么 总结 附录前言做了很多项目,遇到了很多问题,发现写代码其实很简单,不会花我们很长时间,而我们花费的大部分时间大多在调错,解决问题中。为了提高我们的软件质量,工作效率。所以,小编根据自己多年的项目经验,以及阅读的书籍,整...

2017-11-26 15:08:00

阅读数 246

评论数 4

【JavaEE系列——JPA】——JPA Entities

目录目录 Entities 实体类的要求 实体类中的持久性字段和属性 持久性字段 持久性属性 在实体字段和属性中使用集合 验证持久性字段和属性 实体中的属性 实体关系的多重性 实体关系方向 双向关系 单向关系 查询和关系方向 级联操作和关系Java Persistence API 是一种基于Jav...

2017-09-21 10:52:36

阅读数 474

评论数 3

2017年年中总结——爱在继续……

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富...

2017-08-31 21:31:31

阅读数 396

评论数 9

【高效学习秘诀2】——Know Can Do

在我看到这本书的名字——Know Can Do的时候,我就决定了这就是我今天最重要的一件事情。如果不把这个事情搞清楚,我今天就不工作了,学习工作不急于这一时。所以,8:00之后没有去工作,就立马投入到这本书的阅读中去了。因为我想要寻求答案,在Dynamic,我们接收的思想都是一样的,说思想大家都很...

2017-08-15 10:29:39

阅读数 356

评论数 16

【高效学习秘诀1】——How to study?

目录目录 学习套路how to study 一 设疑 二 宏观 三 合作 四 运用扩展 总结经过了一段时间的训练,发现学习起来真的很简单,妈妈再也不用担心我的学习啦,so Easy!在介绍这个秘诀之前,先给大家介绍几个概念: 三疑三探 全局观 内涵和外延 学习套路——how to study?先来...

2017-08-09 11:10:34

阅读数 399

评论数 15

【JavaSE系列--基础篇7】——定义一个注解类型

许多注解替换代码中的注释。 假设一个软件组传统上开始每个类的正文,提供重要信息:public class Generation3List extends Generation2List { // Author: John Doe // Date: 3/17/2002 // Cur...

2017-08-06 09:49:44

阅读数 244

评论数 2

【MYSQL系列--优化5】——Is Null 优化

MySQL可以对col_name IS NULL执行相同的优化,它可以用于col_name = constant_value。例如,MySQL可以使用索引和范围来使用IS NULL搜索NULL。例如:SELECT * FROM tbl_name WHERE key_col IS NULL;SELE...

2017-08-05 09:20:38

阅读数 4909

评论数 6

【MYSQL系列-优化4】——阻止嵌套循环和批量密钥访问连接

在MYSQL中,可以使用批量秘钥访问连接算法(BKA),它使用对连接的表和连接缓冲区的索引访问。批量秘钥访问连接算法支持内连接,外联结,和半连接操作,包括嵌套外连接。BKA的优点包括通过更有效的表扫描来提高连接性能。此外,先前仅用于内部连接的块嵌套循环(BNL)连接算法被扩展,并且可以用于外连接和...

2017-08-05 09:14:03

阅读数 358

评论数 1

【MySQL系列--优化3】——多范围读取优化

在次级索引上使用范围扫描读取行可能会导致在表格较大并且未存储在存储引擎的高速缓存中时对基表进行多次随机磁盘访问。通过磁盘扫描多范围读取(MRR)优化,MySQL尝试通过首先扫描索引并收集相关行的密钥来减少范围扫描的随机磁盘访问次数。然后对密钥进行排序,最后使用主键的顺序从基表检索行。磁盘扫描MRR...

2017-08-05 08:57:47

阅读数 299

评论数 1

【MySQL系列--优化2】——外连接简化

许多情况下简化了查询的FROM子句中的table 表达式。 在解析器阶段,具有右外连接操作的查询将转换为仅包含左连接操作的等效查询。在一般情况下,执行转换,使得该权限加入:(T1, ...) RIGHT JOIN (T2, ...) ON P(T1, ..., T2, ...)变成相等的左外连接:...

2017-08-04 11:06:20

阅读数 365

评论数 1

【MySQL系列--优化1】——嵌套join优化

表达连接的语法允许嵌套连接。以下讨论参见第13.2.9.2节“join语法”中描述的连接语法。与SQL标准相比,table_factor的语法被扩展。后者仅接受table_reference,而不是一对括号内的列表。如果我们将table_reference项目的列表中的每个逗号都视为与内部连接相同...

2017-08-04 10:07:02

阅读数 461

评论数 1

【Docker系列】——解决Docker容器时间与主机不一致问题

目录目录 背景 解决方法背景公司做的项目是部署到dockerize的tomcat容器上的,将日志映射到了宿主机器的某个目录下,但是出现了一个问题,那就是日志打印的时间有问题,会比宿主机的时间晚8个小时。解决方法一、先查看服务器和容器时区设置是否一致:1、docker容器内的时区是UTC 2、主机...

2017-08-02 10:29:17

阅读数 13839

评论数 9

【JavaSE系列—基础篇7】——注解基础知识

目录目录 注解概念 注解格式 注解用在哪里注解概念注解,元数据的一种形式,提供了和程序有关但不是程序本身的一部分的数据。添加了注解对代码没有直接的影响。 注解有很多用途,其中包含: 编译器的信息——注解可以用来使编译器检测错误或者忽略警告。 编译时和部署时处理——软件工具可以处理注解信息以生成代...

2017-08-01 21:03:15

阅读数 216

评论数 2

【Zookeeper】——Why should we use zookeeper?

Table of contentTable of content why should we use Services Discovery why do we choose zookeeper to do this kind of things what are the challenges o ...

2017-07-25 15:33:08

阅读数 288

评论数 21

【JavaSE系列-基础篇6】——有界类型参数

目录目录 有界类型参数 多重边界 有界类型参数可能有时候要限制在参数化类型中可以用作类型参数的类型。举个例子来说,一个对数字进行操作的方法可能只希望接受Number或其子类的实例。这是有界类型参数。声明一个有界类型参数,列出类型参数的名称,并且跟随extends关键字,后面是它的上限,例如Numb...

2017-07-12 09:58:55

阅读数 725

评论数 16

【JavaSE系列-基础篇6】——泛型方法

泛型方法是引入自己类型参数的方法。和声明一个泛型类型是相似的,但是这个类型参数的范围是在声明的方法体内。静态的和非静态的泛型方法都是允许的,以及泛型类构造函数。泛型方法的语法包括一个在菱形括号内的一个类型参数,并出现在方法返回类型之前。对于静态方法来说,类型参数部分必须出现在方法返回类型之前。 ...

2017-07-12 09:45:13

阅读数 386

评论数 17

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