创造性模式之单例模式

单例模式: 描述:     确保一个类只有一个实例,并提供对它的全局访问点。      单例模式解决了以下问题:     如何确保一个类只有一个实例?     如何方便地访问类的唯一实例?     一个类如何控制它的实例化?     如何限制类的实例数量? 单例模式如何解决这些问题:     隐藏...

2018-08-18 15:27:12

阅读数 44

评论数 0

设计模式之间的区别

抽象工厂和工厂方法的区别: 抽象工厂:     通过对象组合创建抽象产品     创建多系列产品     必须修改父类的接口才能支持新的产品 工厂方法:     通过类继承创建抽象产品     创建一种产品     子类化创建者并重载工厂方法以创建新的产品 通常,设计开始时使用工厂方法(不那么复...

2018-08-18 13:37:12

阅读数 117

评论数 0

创造性模式之工厂方法模式

工厂方法模式:(针对的对象的创建,通过工厂方法而不是构造函数) 描述:定义一个接口用于创建单个对象,但让子类决定实例化哪个类。工厂方法允许类将实例化推迟到子类; 目的:使用工厂方法来处理创建对象的问题,而无需指定将要创建的对象的确切类。 工厂方法模式解决了以下问题:     如何创建一个对象,使子...

2018-08-18 13:36:35

阅读数 83

评论数 0

创造性模式之建造者模式

建造者模式:(主要处理的是对象复杂创建过程问题)     建造者模式: 描述:将复杂对象的构造与它的表示分离,允许相同的构造过程创建各种表示。 目的:     将复杂对象的构造与其表示分离开;旨在为面向对象编程中的各种对象创建问题提供灵活的解决方案 建造者解决了以下问题:     一个类(相同的...

2018-08-16 17:50:00

阅读数 59

评论数 0

创造性模式之抽象工厂模式

抽象工厂模式:(主要处理的是对象之间的依赖问题) Abstract factory pattern(抽象工厂模式)     抽象工厂模式提供了一种方法来封装具有共同主题的一组独立工厂,而无需指定它们的具体类     在正常使用中,客户端软件创建抽象工厂的具体实现,然后使用工厂的通用接口创建作为主题...

2018-08-16 17:48:15

阅读数 52

评论数 0

设计模式

设计模式:     软件设计模式是一种通用的、可重用的解决方案,用于解决软件设计中给定上下文中常见的问题。它不是可以直接转换成源代码或机器代码的已完成设计。     它是一种描述或模板,用于描述如何解决可以在许多不同情况下使用的问题。     面向对象的设计模式通常显示类或对象之间的关系和交互,而...

2018-08-16 17:46:38

阅读数 45

评论数 0

计算机基础知识了解

 linux文件系统:  先说一下格式化:每种操作系统所设置的文件属性/权限并不相同,为了存放这些文件所需的数据,因此就需要将分区格式化,以成为操作系统能够利用的文件系统格式。linux的文件格式为Ext2/Ext3,现在好像已经到了Ext4.windows 操作系统为vfat或者NTFS。 li...

2018-08-15 22:59:28

阅读数 505

评论数 0

Nginx 多进程模型是如何实现高并发的

进程数与并发数不存在很直接的关系。这取决取server采用的工作方式。 如果一个server采用一个进程负责一个request的方式,那么进程数就是并发数。那么显而易见的,就是会有很多进程在等待中。等什么?最多的应该是等待网络传输。其缺点题主应该也感觉到了,此处不述。 而nginx 的异步非阻...

2018-08-15 22:58:20

阅读数 529

评论数 0

keyTool详解

生成公私钥: Keytool 是一个Java 数据证书的管理工具 ,Keytool 将密钥(key)和证书(certificates)存在一个称为keystore的文件中 在keystore里,包含两种数据:     (1)密钥实体(Key entity)——密钥(secret key)又或者是私...

2018-08-15 10:22:22

阅读数 358

评论数 0

docker入门教程

一、docker安装并使用阿里云的镜像 CentOS 7 (使用yum进行安装) # step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加软件源信息 s...

2018-07-17 17:32:55

阅读数 60

评论数 0

redis简单了解

Redis 是单进程程序 redis与memcache对比 1、redis能够用不同的两种方式将数据写入磁盘(时间点转储即快照;只追加文件AOF,将所有修改了数据库的命令都写入一个只追加文件里面,用户可以根据数据的重要程度,将只 追加写入设置为从不同步、每秒同步一次或者每写入一个命令就同步一次)...

2018-07-16 17:21:43

阅读数 54

评论数 0

RabbitMQ简单了解

一、消息确认消息确认是为了让消息不丢失。当消费者在处理消息的时候突然服务器宕机,这个消息还没有处理完成,而RabbitMQ代理服务器又将该消息删除这样就会造成消息的丢失,但是我们又希望这个消息不能就这样丢失而是将这个消息重新推送给新的一个消费者,为了确保消息不会丢失,RabbitMQ支持消息确认。...

2018-07-09 13:18:49

阅读数 88

评论数 0

网站优化浅谈

一、访问网站流程        用户在浏览器发起请求、经过网络层,将请求发送到指定的IP服务器,通过应用程序处理获取数据库服务器相关的数据并原路返回最终结果给浏览器展示。        在这整个过程不论网络传输以及从数据库服务器获取数据都比较耗时,因此我们可以针对这几点进行优化二、优化      ...

2018-05-23 14:12:01

阅读数 91

评论数 0

docker网卡设置

1、Vmware的网卡设置(1)Bridged(桥接)方式       用这种方式虚拟机的IP可设置成与本机在同一网段,虚拟机相当于网络内的一台独立的机器,网络内其他机器可访问虚拟机,虚拟机也可访问网络内其他机器,当然与本机系统的双向访问也不成问题。       这个时候vmware就模拟成一个网...

2018-05-22 19:58:49

阅读数 2797

评论数 0

用户登录以及分布式session功能

一、两次md5    在前端处理,用户在页面上进行登录、网络传输使用的是明文传输。所以第一次在客户端进行md5加密即明文+固定salt进行加密。这个只能防范密码明文传输,因为在前端是在js写,所以如果有人特意去破解,密码还是会被看到。    在后台处理,加密后的密码传输到后台之后,还需要进行md5...

2018-05-22 11:52:51

阅读数 269

评论数 0

dubbo源码分析服务发布

一、dubbo和spring的集成与spring的集成是基于Spring的Schema扩展进行加载。dubbo命名空间对应的实现类是DubboNamespaceHandler,DubboBeanDefinitionParser用来解析xml文件信息。二、服务的发布以dubbo官方提供的dubbo-...

2018-04-03 17:39:14

阅读数 238

评论数 0

dubbo中ExtensionLoader解析

在上一篇《java中spi机制解读》中指出java的SPI机制存在以下缺点:只能获取配置中所有的接口实现,不能按照需要获取。所以ExtensionLoader加强了java中SPI机制的功能:可以按照名字加载实现类;在加载实现类过程中新增本文以获取Protocol接口实现类为例进行说明: priv...

2018-04-03 16:07:23

阅读数 210

评论数 0

java中spi机制解读

关于spi机制大部分人都很陌生,因为我们在开发过程中很少用到,但是实际上这个机制从我们接触java开始就跟我们如影随形。有些人认为使用java很简单,都是调用第三方依赖包,然后结合自己的业务逻辑就可以了,这个机制就是跟第三方有关。一、概念SPI 的全名为 Service Provider Inte...

2018-03-29 11:14:57

阅读数 1582

评论数 0

spring源码解析-加载XML文件

最近在阅读郝佳老师编写的《Spring源码深度解析》这本书,这本书的书的1-7章可以归纳为三大模块:xml文件的载入、bean的加载以及AOP模块。接下来我们从xml文件的载入开始讲解。一、流程图二、流程说明从上面的流程图可以很清晰的看清整个spring框架关于ioc读取配置文件的整个流程,下面我...

2018-03-20 15:29:08

阅读数 123

评论数 0

死锁及处理方案

一、原因:    线程间互相等待资源,但是又不释放自己自身的资源,导致无穷无尽的等待,其结果是系统任务永远无法执行完成。例如过独木桥,A和B分别走在桥上,想通过独木桥,但是他们都希望对方先退出,两个人就一直处在等待状态。二、产生条件:    1、互斥条件:一个资源每次只能被一个进程使用。独木桥每次...

2018-03-07 15:05:48

阅读数 82

评论数 0

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