2017年4月9日
摘要: 1.意图 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。 2.动机 框架使用抽象类定义和维护对象之间的关系。这些对象的创建通常也由框架负责。 3.适用性 当一个类不知道它所必须创建的对象的类的时候。 当一个类希望由它的子类来指定它所创 阅读全文
posted @ 2017-04-09 20:51 郑兴鹏 阅读(123) 评论(0) 推荐(0)
摘要: 1.意图 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 2.动机 通过拷贝或者“克隆”一个类的实例来创建新的实例。 3.适用性 当一个系统应该独立于它的产品创建、构成和表示时,要使用Prototype模式;以及 当要实例化的类是在运行时刻指定时,例如,通过动态装载;或者 为了避免 阅读全文
posted @ 2017-04-09 20:50 郑兴鹏 阅读(180) 评论(0) 推荐(0)
摘要: 1.意图 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 2.动机 对一些类来说,只有一个实例是很重要的。让类自身负责保存它唯一的实例,这个类可以保证没有其他实例可以被创建(通过截取创建新对象的请求),并且它可以提供一个访问该实例的方法。 3.适用性 当类只能有一个实例而且客户可以从一个周所 阅读全文
posted @ 2017-04-09 20:49 郑兴鹏 阅读(141) 评论(0) 推荐(0)
摘要: 1.意图 将抽象部分与它的实现部分分离,使它们都可以独立地变化。 2.动机 在抽象类与它的实现之间起到桥梁作用,使它们可以独立地变化。 3.适用性 不希望在抽象和它的实现部分之间有一个固定的绑定关系。这种情况可能是因为,在程序运行时刻实现部分可以被选择或切换。 类的抽象以及它的实现部分都应该可以通过 阅读全文
posted @ 2017-04-09 20:48 郑兴鹏 阅读(199) 评论(0) 推荐(0)
摘要: 1.意图 将一个类接口转换成客户希望的另外一个接口。Adapter模式使那些原本不能一起工作的类,可以一起工作。 2.别名 包装器 Wrapper. 3.动机 一个应用可能会有一些类具有不同的接口,并且这些接口互不兼容,可以专门定义一个类,用来适配互不兼容的类。 4.适用性 你想使用一个已经存在的类 阅读全文
posted @ 2017-04-09 20:48 郑兴鹏 阅读(138) 评论(0) 推荐(0)
摘要: 1.意图 动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。 2.别名 包装器 Wrapper. 3.动机 给某个对象而不是整个类添加一些功能。一个较为灵活的方式时将组件嵌入另一个对象中。 4.适用性 在不影响其它对象的情况下,以动态、透明的方式给单个对 阅读全文
posted @ 2017-04-09 20:47 郑兴鹏 阅读(131) 评论(0) 推荐(0)
摘要: 1.意图 将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。 2.动机 可以组合多个简单组件以形成一些较大的组件,这些组件又可以组合成更大的组件。Composite模式描述了如何使用递归组合,使得用户不必对这些类进行区别。 3.适用性 阅读全文
posted @ 2017-04-09 20:47 郑兴鹏 阅读(193) 评论(0) 推荐(0)
摘要: 学习最好的方式,是有个好师傅。他根据你的不同阶段,教导你不同的技能,循序渐进;师傅不单教你练功,还会教你做人,使你内修于心,外化于形。教你的一些道理,你可能当时不太懂,但等你苦练多日,历经曲折,终有一日茅塞顿开,再去学艺做事,事半功倍,大有精进; 有一个位好导师自然是得之我幸的事情,但实际工作中很难 阅读全文
posted @ 2017-04-09 20:45 郑兴鹏 阅读(144) 评论(0) 推荐(0)
摘要: 一、事出 近期乌云漏洞平台等科技新闻,爆出Docker虚拟化 端口漏洞,本着热爱开源,实践动手的精神,我也去尝试了下,漏洞严重性确实很高,可以拿到root 登陆账户。 二、还原 2.1 通过扫描,我们找到了一些主机,下面是其中一台运行了docker 主机的服务器,并且开了ssh 端口 知道了22端口 阅读全文
posted @ 2017-04-09 20:39 郑兴鹏 阅读(229) 评论(0) 推荐(0)
摘要: 一、为什么? 在中小型企业,公司不同运维人员基本都是以root 账户进行服务器的登陆管理,缺少了账户权限审计制度。不出问题还好,出了问题,就很难找出源头。 这里介绍下,如何利用编译bash 使不同的客户端在使用root 登陆服务器使,记录各自的操作,并且可以在结合ELK 日志分析系统,来收集登陆操作 阅读全文
posted @ 2017-04-09 20:37 郑兴鹏 阅读(278) 评论(0) 推荐(0)
摘要: 一、需求 由于在测试环境中使用了docker官网的centos 镜像,但是该镜像里面默认没有安装ssh服务,在做测试时又需要开启ssh。所以上网也查了查资料。下面详细的纪录下。在centos 容器内安装ssh后,转成新的镜像用于后期测试使用。 二、镜像定制 第一种方式(手动修改容器镜像) 1.先下载 阅读全文
posted @ 2017-04-09 20:36 郑兴鹏 阅读(15793) 评论(1) 推荐(0)
摘要: 1.查询dockers 某个容器的ip地址。 查询 容器mac 地址 查询登陆环境 查看端口映射 查看容器运行过的记录(test 为容器的名字) 修改容器的名称(重命名),rename 现有名字 新名字 批量删除已停止容器 查看容器运行状态(网络、cpu、内存) 每个人都应是守望者,守望我们的心智, 阅读全文
posted @ 2017-04-09 20:36 郑兴鹏 阅读(143) 评论(0) 推荐(0)
摘要: 一. 安装环境 系统环境:centos6.5 IP:192.168.30.242 hostname:vpn.org 软件:LAMP均已安装。(请确保这些正常安装,并能使用)。 系统核心包:(摘自官方数据) 二.安装(先安装python基础模块) 本次是在root 目录下创建 lepus,之后关于本机 阅读全文
posted @ 2017-04-09 20:35 郑兴鹏 阅读(215) 评论(0) 推荐(0)
摘要: 一. 安装环境 系统环境:centos6.5 IP:192.168.30.242 hostname:vpn.org 软件:PPTP、LAMP均已安装。(请确保这些正常安装,并能使用)。 二. 软件包 ppp-2.4.5.tar.gz、daloradius-0.9-8.tar.gz、go-pear.p 阅读全文
posted @ 2017-04-09 20:35 郑兴鹏 阅读(8962) 评论(1) 推荐(0)
摘要: 一.剧情 剧情是这样的,本次的多边缘节点负载均衡实验,1个LVS四层负载均衡集群和1个Nginx为反向代理的七层负载均衡集群,由Bind dns解析作为 主负载均衡服务器,调度两个集群,中间层有一台Web服务器。前端是一台客户端。如下图所示: 二.基础环境 1.硬件信息 4G内存、50G硬盘、2核 阅读全文
posted @ 2017-04-09 20:34 郑兴鹏 阅读(1744) 评论(0) 推荐(0)
摘要: 一.DNS主从的理解 主从服务器,在一开始的理解中,以为是主的dns服务器挂掉后,(dns服务自动转向辅助dns服务器),客户端还能继续解析。事实貌似不是这样的。当我把主dns停掉的时候,客户端只设一个dns服务器后,事实证明,解析是失败的。但当我将客户端的dns服务器切换到从dns的ip上后,解析 阅读全文
posted @ 2017-04-09 20:28 郑兴鹏 阅读(235) 评论(0) 推荐(0)
摘要: 前言 StoryBoard是iOS开发中很直观的开发工具,它可以极大的提高开发效率,但是StoryBoard由于能直接描述多个控制器页面,也会引发一些问题。 当团队开发时,StoryBoard中的拖入的控制器过多会导致界面错综复杂。并且协同开发中特别容易出现冲突。如果冲突出现了也会特别难以解决,各种 阅读全文
posted @ 2017-04-09 20:26 郑兴鹏 阅读(292) 评论(0) 推荐(0)
摘要: 最近做到的项目涉及一个大数据量缓存重传,其中要用到的sqlite技术,把自己的学习心得整理了一下。 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起My 阅读全文
posted @ 2017-04-09 20:25 郑兴鹏 阅读(3133) 评论(0) 推荐(0)
摘要: 前言 上篇介绍了sqlite3的一些常用插入操作方法和注意事项,在实际项目中遇到了图片缓存的问题,由于服务器不是很稳定,且受到外界环境的干扰(例如断电,图片存储挂掉,图片存储速度过慢,造成的接口调用失败等等),一个数据结构中除了普通字段(int string),还包括图片数据,所以还需要将图片数据进 阅读全文
posted @ 2017-04-09 20:24 郑兴鹏 阅读(1716) 评论(1) 推荐(0)
摘要: 关于C++单例模式下m_pinstance指向空间销毁问题,m_pInstance的手动销毁经常是一个头痛的问题,内存和资源泄露也是屡见不鲜,能否有一个方法,让实例自动释放。 解决方法就是定义一个内部垃圾回收类,并且在Singleton中定义一个此类的静态成员。程序结束时,系统会自动析构此静态成员, 阅读全文
posted @ 2017-04-09 20:23 郑兴鹏 阅读(284) 评论(0) 推荐(0)
摘要: 乱码是我们在日常的工作中经常遇到的问题,你可能从网上好不容易下载了一个炫酷的jQuery插件,但是却在打开的时候,发现某几个js文件都是类似“澶у0?閬?”这样的怪异符号,其实这就是编码和解码不一致导致的,就好像我用英文给你写了篇信,你不懂英文用中文去解析它,自然觉得他是乱码。 本篇文章将会从计算机 阅读全文
posted @ 2017-04-09 20:22 郑兴鹏 阅读(179) 评论(0) 推荐(0)
摘要: 在我的前面几篇文章中,我们介绍了流的概念,使用流我们可以任意读取写入文件中的内容,而对于文件的操作来说,更多的是对文件的存储进行操作,创建文件再磁盘上,移动文件到指定位置上,更改文件的文件名等。这些操作更多的是和操作系统以及文件系统打交道。首先我们看File类。 一个File类对象可以存放的是目录, 阅读全文
posted @ 2017-04-09 20:21 郑兴鹏 阅读(199) 评论(0) 推荐(0)
摘要: 从本篇文章开始,我会用文章记录下我在学习Java EE过程中的一些笔记和感悟,至于还没有更新结束的Java SE还是会继续写的,只是我觉得一直写语法很枯燥,自己也没法继续下去,所以带着点web学习,会有趣些。我主要学习的书籍是李刚老师的轻量级企业应用实战,后续博文不再声明。本文将从以下几个方面总结一 阅读全文
posted @ 2017-04-09 20:20 郑兴鹏 阅读(237) 评论(0) 推荐(0)
摘要: 之前的文章中我们介绍过有关字节流字符流的使用,当时我们对于将一个对象输出到流中的操作,使用DataOutputStream流将该对象中的每个属性值逐个输出到流中,读出时相反。在我们看来这种行为实在是繁琐,尤其是在这个对象中属性值很多的时候。基于此,Java中对象的序列化机制就可以很好的解决这种操作。 阅读全文
posted @ 2017-04-09 20:19 郑兴鹏 阅读(264) 评论(0) 推荐(0)
摘要: 可能大家都知道,java中的ArrayList类,是一个泛型集合类,可以存储指定类型的数据集合,也知道可以使用get(index)方法通过索引来获取数据,或者使用for each 遍历输出集合中的内容,但是大家可能对其中的具体的方法是怎么实现的不大了解,本篇就将从jdk源码的角度看看什么是动态扩容数 阅读全文
posted @ 2017-04-09 20:18 郑兴鹏 阅读(279) 评论(0) 推荐(0)
摘要: 上篇文章我们介绍了ArrayList类的基本的使用及其内部的一些方法的实现原理,但是这种集合类型虽然可以随机访问数据,但是如果需要删除中间的元素就需要移动一半的元素的位置,效率低下。并且它内部是用数组来实现的,数组要求连续的存储空间,当数据量大的时候就极耗内存。本篇我们介绍使用链表实现的集合Link 阅读全文
posted @ 2017-04-09 20:17 郑兴鹏 阅读(275) 评论(0) 推荐(0)
摘要: 在上一篇的java编程风格学习(二)中我们学习了一些在Java编码过程中的格式规范,遵循这些规范毋庸置疑是我们的书写高质量代码的前提与基础。今天我们更进一步,一起来学习Java编程的命名规范,向着编写高质量代码的终极目标进发。 (一)编程语言的通用规范 在详细介绍Java元素的命名规范之前我们首先来 阅读全文
posted @ 2017-04-09 18:22 郑兴鹏 阅读(245) 评论(0) 推荐(0)
摘要: 二、格式规范 在上一篇的Java编程风格学习(一)中我们讲述了在Java编码中的一般原则,虽然这些原则并不涉及具体的代码规范,但是这些原则却是我们在Java开发过程中所应该遵循的规范与思想。今天我们将学习一些涉及具体代码书写的格式规范。 (一)缩进嵌套的代码 为了增强代码的可读性,我们常常把一些单独 阅读全文
posted @ 2017-04-09 18:22 郑兴鹏 阅读(287) 评论(0) 推荐(0)
摘要: 最近在看一本有关Java编程规范的书,书中精炼阐述了使用java语言时应该遵循的一些原则。接下来的一段时间我将在这里总结我的学习内容,也希望这一系列文章能够对有需要的人有所帮助。不考虑任何编码规范的代码往往存在很多Bug,严重情况下还会制约软件开发的进度。良好的编程规范不仅能使团队里的每个人都能轻松 阅读全文
posted @ 2017-04-09 18:21 郑兴鹏 阅读(215) 评论(0) 推荐(0)
摘要: 前言 因为对图像方面感兴趣,所以有空学学OpenCV的使用,并且希望以此为引子,带领自己入门图像领域。 先post上几个参考网站,上面有完整源码: http://docs.opencv.org/2.4.9/ (英文文档,主要参看) http://www.opencv.org.cn/opencvdoc 阅读全文
posted @ 2017-04-09 18:20 郑兴鹏 阅读(183) 评论(0) 推荐(0)
摘要: 前言 经过前面一节的怎样读取图片,我们可以做一些有趣的图像变换,下面我们首先介绍使用遍历的方法实现,然后我们使用内置的函数实现。 矩阵掩码实现 矩阵掩码,和卷积神经网络中的卷积类似。一个例子如下: 现在我们看看怎么实现: 我们看看结果: 因为掩码是增强中间,削弱四周,下面如果我们换掩码,使用内置函数 阅读全文
posted @ 2017-04-09 18:20 郑兴鹏 阅读(170) 评论(0) 推荐(0)
摘要: 前言 以STL的实现角度而言,第一个需要介绍的就是空间配置器,因为整个STL的操作对象都存放在容器之中。 你完全可以实现一个直接向硬件存取空间的allocator。 下面介绍的是SGI STL提供的配置器,配置的对象,是内存。(以下内容来自《STL源码剖析》) 引子 因为这篇写得太长,断断续续都有几 阅读全文
posted @ 2017-04-09 18:19 郑兴鹏 阅读(240) 评论(0) 推荐(0)
摘要: 前言 这里要介绍各种语句和表达式,将通过一个桌面计算器的程序做些事情,该计算器提供四种座位浮点数的中缀运算符的标准算术运算。 这个计算器由四个部分组成:一个分析器,一个输入函数,一个符号表和一个驱动程序。 分析器 语法分析器采用通常的递归下降的风格。终结符由词法分析程序get_token()识别,而 阅读全文
posted @ 2017-04-09 18:18 郑兴鹏 阅读(240) 评论(0) 推荐(0)

友情链接:上海回力鞋专卖店 | 中老年高档女装 | 新航道 | 雅思培训一般多少钱 | 托福网课