摘要:
1、微服务架构是什么? 微服务架构是一种架构模式或架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行在独立的自己的进程中,服务直接互相协调,互相配合,为用户提供最终价值。 2、微服务和微服务架构? 微服务强调的是一个一个的个体,微服务架构是一个整体。 3、微服务的优缺点是什么? 优点: 阅读全文
摘要:
一、 i++ 的原子性问题 1、问题的引入: i++ 的实际操作分为三个步骤:读--改--写 实现线程,代码如下: 测试类,代码如下: 结果如下图所示: 以上的原子性问题可以使用“原子变量”解决; 二、原子变量 在JDK1.5 之后,提供了 java.util.concurrent.atomic 包 阅读全文
摘要:
1、问题引入 实现线程: 测试类: 结果:flag=true,并且程序不会停止 结果分析:从结果中看到,线程threadDemo 将 flag 被修改为 ture 了,但是 while 循环中的 if 判断中没有进入(即 flag = false);主线程中的flag和threadDemo 中的fl 阅读全文
摘要:
SQL UNION 操作符 1、UNION 操作符用于合并两个或多个 SELECT 语句的结果集。 请注意:UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。 2、UNION用的比较多union all是直接连 阅读全文
摘要:
模板设计模式 1、简介 模板模式定义了一个操作中的算法骨架,将某些步骤延迟到子类中实现。这样,新的子类可以在不改变一个算法结构的前提下重新定义该算法的某些特征步骤。 2、核心 处理某个流程的代码已经都具备,但是其中某个节点的代码暂时不能确定。因此,需要我们采用工厂方法模式,将这个节点的代码实现转移给 阅读全文
摘要:
策略模式(strategy) 策略模式对应于解决某一个问题的一个算法族,允许用户从该算法族中任选一种算法解决某一问题;同时,可以方便的更换算法或增加新的算法;并且由客户决定调用哪个算法。 1、提出问题:实现一个根据客户类型获取商品价格的方法,如下: 以上的实现比较基础,能够解决我们的问题,但是存在以 阅读全文
摘要:
原型模式 通过 new 产生一个对象需要非常繁琐的数据准备或访问权限,则可以使用原型模式。就是 java 中的克隆技术,以某个对象为原型,复制出新的对象。显然,新的对象具备原型对象的特点。 优势:创建对象效率高(直接克隆,避免重新执行构造过程步骤) 克隆类似于 new 但是不同于 new。new 创 阅读全文
摘要:
一、索引 1、分类 (1)主键索引:当一张表的某个字段设置为主键时,该字段就是主键索引; (2)唯一索引:索引列中的值必须是唯一的,但是允许为空值(可以存在多个null); (3)普通索引:基本索引类型,没有什么限制,允许在定义索引的列中插入重复值和空值,纯粹为了查询数据更快一点; (4)全文索引: 阅读全文
摘要:
一、SQL语句优化的一般步骤: (1)通过 show status 命令了解各种 SQL 的执行效率; (2)定位执行效率较低的 SQL 语句(重点是 Select); (3)通过 explain 分析低效率的 SQL 语句的执行情况; (4)确实问题并采取相应的优化措施; 二、优化 1、show 阅读全文
摘要:
1、什么样的表才符合3范式(3 NF)? 表的范式,是首先符合1范式,才能满足2范式,进一步才能满足3范式;(现在最高级别是6范式) 第一范式:1NF 是对属性的原子性约束,要求表的属性(列)具有原子性,不可再分解;(只要是关系型数据库[mysql/oracle/db2/sql server/sys 阅读全文