10 73hulu

尚未进行身份认证

暂无相关描述

等级
TA的排名 6w+

创造性模式之单例模式

单例模式:描述:   确保一个类只有一个实例,并提供对它的全局访问点。   单例模式解决了以下问题:   如何确保一个类只有一个实例?   如何方便地访问类的唯一实例?   一个类如何控制它的实例化?   如何限制类的实例数量?单例模式如何解决这些问题:   隐藏类的构造函数。   定义一个返回类的唯一实例的公共静态操作(getInstance())。这个模...

2018-08-18 15:27:12

设计模式之间的区别

抽象工厂和工厂方法的区别:抽象工厂:   通过对象组合创建抽象产品   创建多系列产品   必须修改父类的接口才能支持新的产品工厂方法:   通过类继承创建抽象产品   创建一种产品   子类化创建者并重载工厂方法以创建新的产品通常,设计开始时使用工厂方法(不那么复杂,更可定制,子类激增),并随着设计师发现需要更多灵活性的地方而向抽象工厂、原型或构建器(更灵活、更复...

2018-08-18 13:37:12

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

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

2018-08-18 13:36:35

创造性模式之建造者模式

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

2018-08-16 17:50:00

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

抽象工厂模式:(主要处理的是对象之间的依赖问题)Abstractfactorypattern(抽象工厂模式)   抽象工厂模式提供了一种方法来封装具有共同主题的一组独立工厂,而无需指定它们的具体类   在正常使用中,客户端软件创建抽象工厂的具体实现,然后使用工厂的通用接口创建作为主题一部分的具体对象。   客户机不知道(或不关心)它从这些内部工厂中获得的具体对象,因为它只使用产品...

2018-08-16 17:48:15

设计模式

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

2018-08-16 17:46:38

计算机基础知识了解

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

2018-08-15 22:59:28

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

进程数与并发数不存在很直接的关系。这取决取server采用的工作方式。如果一个server采用一个进程负责一个request的方式,那么进程数就是并发数。那么显而易见的,就是会有很多进程在等待中。等什么?最多的应该是等待网络传输。其缺点题主应该也感觉到了,此处不述。而nginx的异步非阻塞工作方式正是利用了这点等待的时间。在需要等待的时候,这些进程就空闲出来待命了。因此表现为少数几个进程...

2018-08-15 22:58:20

keyTool详解

生成公私钥:Keytool是一个Java数据证书的管理工具,Keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里,包含两种数据:   (1)密钥实体(Keyentity)——密钥(secretkey)又或者是私钥和配对公钥(采用非对称加密)   (2)可信任的证书实体(trustedcertificate...

2018-08-15 10:22:22

docker入门教程

一、docker安装并使用阿里云的镜像CentOS7(使用yum进行安装)#step1:安装必要的一些系统工具sudoyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2#Step2:添加软件源信息sudoyum-config-manager--add-repohttp://mirrors.al...

2018-07-17 17:32:55

redis简单了解

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

2018-07-16 17:21:43

RabbitMQ简单了解

一、消息确认消息确认是为了让消息不丢失。当消费者在处理消息的时候突然服务器宕机,这个消息还没有处理完成,而RabbitMQ代理服务器又将该消息删除这样就会造成消息的丢失,但是我们又希望这个消息不能就这样丢失而是将这个消息重新推送给新的一个消费者,为了确保消息不会丢失,RabbitMQ支持消息确认。使用者将一个ack(nowledgement)发回给RabbitMQ,告诉它已经接收、处理了一个特定的...

2018-07-09 13:18:49

网站优化浅谈

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

2018-05-23 14:12:01

docker网卡设置

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

2018-05-22 19:58:49

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

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

2018-05-22 11:52:51

dubbo源码分析服务发布

一、dubbo和spring的集成与spring的集成是基于Spring的Schema扩展进行加载。dubbo命名空间对应的实现类是DubboNamespaceHandler,DubboBeanDefinitionParser用来解析xml文件信息。二、服务的发布以dubbo官方提供的dubbo-demo-provider为例来讲解服务的发布过程。demo中xml配置文件内容为:<beans...

2018-04-03 17:39:14

dubbo中ExtensionLoader解析

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

2018-04-03 16:07:23

java中spi机制解读

关于spi机制大部分人都很陌生,因为我们在开发过程中很少用到,但是实际上这个机制从我们接触java开始就跟我们如影随形。有些人认为使用java很简单,都是调用第三方依赖包,然后结合自己的业务逻辑就可以了,这个机制就是跟第三方有关。一、概念SPI的全名为ServiceProviderInterface,目的hi提供接口,让第三方(服务厂商或扩展框架开发者)提供自定义实现的服务功能。例如,JD...

2018-03-29 11:14:57

spring源码解析-加载XML文件

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

2018-03-20 15:29:08

死锁及处理方案

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

2018-03-07 15:05:48

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!