04 2017 档案
摘要:简单工厂方法:违背开闭原则,即需要增加实现功能类时需要修改原来的工厂类的,有修改就有可能出现问题,工厂方法却将修改变为了扩展 定义:工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工
阅读全文
摘要:http://www.cnblogs.com/zuoxiaolong/p/pattern1.html 1、 单一职责原则:描述的意思是每个类都只负责单一的功能,切不可太多,并且一个类应当尽量的把一个功能做到极致。 2、里氏替换原则:这个原则表达的意思是一个子类应该可以替换掉父类并且可以正常工作,就是
阅读全文
摘要:http://www.cnblogs.com/zuoxiaolong/p/pattern4.html 定义:从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创
阅读全文
摘要:三大类选项: 1. 标准选项: 功能是很稳定的,所有的标准选项都是以-开头,比如-version, -server等。 2. X选项:以-X开头,这类选项的功能还是很稳定,但官方的说法是它们的行为可能会在后续版本中改变,也有可能不在后续版本中提供了。 3. XX选项:属于实验性,主要是给JVM开发者
阅读全文
摘要:http://www.cnblogs.com/Leo_wl/p/5437059.html java基础(java编程思想) =》web开发(html/css/js servlet/jsp 数据库) =》框架(ssh) =》 设计模式 =>java虚拟机 ,并发
阅读全文
摘要://根据入参增加nginx反向代理#!/bin/bash#set -xlog_path="./proc/logs/shellExecute.log"log_path_back="./proc/logs/shellExecute.log1"nginxBasePath="/home/netnumen/e
阅读全文
摘要:1、cp -r 源文件夹 目的文件夹 // -r 可递归所有子目录及文件 2、grep -r 查找内容 ./* //递归查找当前目录下所有文件指定内容 3、 查看系统运行时间 who -b 查看最后一次系统启动的时间。 who -r 查看当前系统运行时间 4、定位进程被kill auditctl -
阅读全文
摘要:一、概念 饥饿:如果一个线程因为 CPU 时间全部被其他线程抢走而得不到 CPU 运行时间,这种状态被称之为“饥饿”; 二、饥饿原因 三、公平性 1、用锁代替同步代码块
阅读全文
摘要:一、线程通信目标 1、线程通信的目标是使线程间能够互相发送信号 2、线程通信使线程能够等待其他线程的信号 二、几种方式 1、通过共享对象 2、忙等待 线程 B 运行在一个循环里,以等待信号 (不释放cpu) 3、wait,notify和notifyAll wait会使线程进入睡眠或者非运行状态,释放
阅读全文
摘要:一、实例的同步方法 静态方法的同步是指同步在该方法所在的类对象(class)上。因为在 Java 虚拟机中一个类只能对应一个类对象(class实例),所以同时只允许一个线程执行同一个类中的一个静态同步方法。 对于不同类中的静态同步方法,一个线程可以执行每个类中的静态同步方法而无需等待。不管类中的那个
阅读全文
摘要:一、Java 内存模型 java内存模型把 Java 虚拟机内部划分为线程栈和堆 下面这张图演示了调用栈和本地变量存放在线程栈上,对象存放在堆上。 ==》》 一个局部变量可能是原始类型,在这种情况下,它总是“呆在”线程栈上。 一个局部变量也可能是指向一个对象的一个引用。在这种情况下,引用(这个本地变
阅读全文
摘要:允许被多个线程同时执行的代码称作线程安全的代码。线程安全的代码不包含竞态条件。当多个线程同时更新共享资源时会引发竞态条件。因此,了解 Java 线程执行时共享了什么资源很重要。 一、局部变量(函数内定义) 局部变量存储在线程自己的栈中。也就是说,局部变量永远也不会被多个线程共享。 1、基础类型的局部
阅读全文
摘要:并发编程模型 一、并行工作者模型 委派者(Delegator)将传入的作业分配给不同的worker; 每个worker完成整个任务; workers并行运作在不同的线程上,甚至可能在不同的 CPU 上。 缺点: a、处理共享资源复杂; b、worker无状态,需每次重读数据,某些情况下影响性能; c
阅读全文