• 程序员修炼秘籍(未完)
  • 微信公众号文章采集 爬取微信文章
  • 随机函数扩大,如rand5()构造rand7()
设计模式

Java设计模式——桥接模式

动机 有圆形、矩形2个形状,还有红色、绿色2个颜色。如果想实现不同形状和不同颜色的组合,我们有两种方案:第一种,为每一种形状的每一种颜色设计一个类,问题冗余,类过多;第二种,根据实际的需要,对形状和颜色进行组合。 第二种方案就是最佳方案,在多维度影响因素下,将他们分离,也就是桥接...

yan 2017 年 2 月 22 日 21℃ 0评论 0喜欢

设计模式

Java设计模式——适配器模式

动机 将一个类的接口,通过适配器转换成另外一个期望的接口。(使原本不兼容的接口 而能够相互兼容一起工作)这就是适配器模式的模式动机。 接口A(实际接口)  ===适配器(转换的过程)====》 接口B(不同的,期望的接口) 比如: 三相插头  ===适配器(插口转换器)====》...

yan 2017 年 2 月 21 日 15℃ 0评论 0喜欢

设计模式

Java设计模式——单例模式

动机 有些系统中只有一个实例工作很重要,比如递增ID的生成器,多个线程使用该生成器要保证生成唯一递增的ID,那必然需要调用同一个生成器,如何保证大家调用的都是同一个实例呢? 让类自身保存它的唯一实例,该类不可以实例化出实例,但是对外提供方法可以提供一个可访问的实例,以此保证所有通...

yan 2017 年 2 月 19 日 39℃ 0评论 2喜欢

设计模式

Java设计模式——建造者模式

动机 说道建造者肯定联想到建筑工人,比如在建筑一个茅草屋和一个砖瓦房时,过程一样只是用的材料不同。比如第一步建立地基:茅草屋用工具,砖瓦房用机器;第二步建立框架:茅草屋用树木,砖瓦房用混凝土;第三步建立房屋:茅草屋用茅草,砖瓦房用砌砖。 可以看出过程是一样的,只是用到的材料不同。...

yan 2017 年 2 月 18 日 17℃ 0评论 1喜欢

网站架构

Java Web分布式集群搭建(四)——NFS文件共享集群

服务器集群搭建后,若系统中存在文件的上传功能,那么如何保证上传文件的一致性呢?通常的解决思路有两种:第一种是建立文件服务器,所有的文件上传都到该服务器上;第二种就是做文件共享,每一台服务器的文件都相同。本文以第二种为例,介绍NFS文件共享集群。 NFS介绍 NFS(Network...

yan 2017 年 1 月 5 日 347℃ 6评论 0喜欢

网站架构

Java Web分布式集群搭建(三)——Session同步

对于一个业务系统的Tomcat集群来说,必须保证同一个用户访问到任一台服务器上都可以维持之前操作的身份。比如在服务器A进行了登陆,那么在服务器B中也要同步该用户已登录的状态,这里就用到了Session的同步。 同步方式 sticky模式、复制模式、Terracotta模式(非To...

yan 2017 年 1 月 1 日 110℃ 0评论 0喜欢

网站架构

Java Web分布式集群搭建(一)——Mysql集群

MySQL Cluster 是MySQL 适合于分布式计算环境的高实用、可拓展、高性能、高冗余版本,其研发设计的初衷就是要满足许多行业里的最严酷应用要求,这些应用中经常要求数据库运行的可靠性要达到99.999%。 MySQL Cluster的特点是在内存中部署服务器的集群,这样的...

yan 2016 年 12 月 25 日 208℃ 1评论 0喜欢

数据库

深入学习数据库——索引结构(多维)

利用传统的B树或者散列表进行建立单维索引,在处理多维数据时会遇到问题。例如地理信息系统,其中数据是两维的(如经度、维度),因此利用传统索引无法高效的解决问题,所以需要多维索引。 本文主要介绍两类多维索引:类散列表方法和类树方法。类散列方法包括:网格文件、分段散列;类树方法包括:多...

yan 2016 年 12 月 5 日 308℃ 6评论 2喜欢

数据库

深入学习数据库——索引结构(单维)

索引的重要性:能够加速在一个或多个属性上对特定值的查询。具体来说就是,我们只需查看所有可能记录中的小部分就能找到所需记录。 索引的基础结构 稠密索引、稀疏索引、主索引(聚集索引)、辅助索引(非聚集索引) 主索引(聚集索引) 能够确定记录在数据文件中的位置,索引的顺序与物理顺序相对...

yan 2016 年 12 月 2 日 107℃ 0评论 0喜欢