01 2021 档案
摘要: 1. 主从复制介绍 存在的问题: 互联网项目老生常谈的三高问题: 高可用 高性能 高并发 那么对于单点的Redis 服务器,有什么问题呢? 问题1.机器故障 (硬盘故障、系统崩溃 ) 导致数据丢失,很可能对业务造成灾难性打击 问题2.容量瓶颈 (:内存不足,从16G升级到64G,从64G升级到1
阅读全文
摘要:## 1.Redis相关配置信息 服务器端设定 设置服务器以守护进程的方式运行 daemonize yes|no 绑定主机地址 (只能此ip访问) bind 127.0.0.1 设置服务器端口号 port 6379 设置数据库数量 databases 16 日志配置 设置服务器以指定日志记录级别
阅读全文
摘要:## 1. 过期数据 通过前面的学习, 我们知道Redis中的数据可以设置有效期,到期自动删除 可以通过TTL指令获取其状态 ,不同的类型的数据,返回不同的数字 (具体剩余时间):具有时效性的数据 -1 :永久有效的数据 -2 :已经过期的数据 或 被删除的数据 或 未定义的数据 但是,生命周期到
阅读全文
摘要:## 1. 基本介绍 存在的问题: Redis执行指令过程中,多条连续执行的指令被干扰,打断,插队 ,例如, 当客户端一 set一个name为张三时,在取的一刻, 另一个客户端set另外一个值,将打乱原先的设定 所以就需要事务的控制 redis事务就是一个命令执行的队列,将一系列预定义命令包装成一
阅读全文
摘要:## 1.持久化简介 我们知道,Redis中的数据存在于内存中,如果Redis服务器突然宕机,数据将会全部丢失,为了解决这个问题,Redis我们提供了两种持久化机制. 什么是持久化: 利用永久性存储介质将数据进行保存,在特定的时间将保存的数据进行恢复的工作机制称为持久化。 防止数据的意外丢失,确保
阅读全文
摘要:1. Redis基本介绍 1.1 传统数据存储出现的问题 海量用户 高并发 罪魁祸首——关系型数据库: 性能瓶颈:磁盘IO性能低下 扩展瓶颈:数据关系复杂,扩展性差,不便于大规模集群 解决思路 降低磁盘IO次数,越低越好 —— 内存存储 去除数据间的关系,越简单越好 —— 不存储关系,仅存储数据 1
阅读全文
摘要:克隆羊问题描述 : 现在有一只羊tom, 姓名为: tom,年龄为: 1, 颜色为:白色,请编写程序创建和tom羊属性完全相同的10只羊 类图: 代码实现: 羊的实体类 public class Sheep { private String name; private int age; privat
阅读全文
摘要:手机操作问题 现在对不同手机类型、不同品牌的手机实现操作编程(比如:开机、关机、上网,打电话等) 传统方式实现类图: 传统方案解决手机操作问题分析: 扩展性问题, 如果我们再增加手机的样式(旋转式),就需要增加各个品牌手机的类,同样如果我们增加一个手机品牌,也要在各个手机样式类下增加 违反了单一职责
阅读全文
摘要:现实生活中的适配器例子 对于不同国家的电源插口,如果我们想要使用,就需要使用对应的适配器 1. 适配器模式介绍 适配器模式(Adapter Pattern)将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。 适配器的别名为包装器(W
阅读全文
摘要:影院管理项目 组建一个家庭影院:DVD 播放器、 投影仪、 自动屏幕、 环绕立体声、 爆米花机,要求完成使用家庭影院的功能, 其过程为:直接用遥控器统筹各设备开关 开爆米花机 放下屏幕 开投影仪 开音响 开 DVD, 选 DVD 去拿爆米花 调暗灯光 播放 观影结束后, 关闭各种设备 传统方式解决影
阅读全文
摘要:看一个学校院系展示需求 编写程序展示一个学校院系结构:需求是这样,要在一个页面中展示出学校的院系组成,一个学校有多个学院,一个学院有多个系。 传统方式如图使用继承的关系: 传统方案解决学校院系展示存在的问题分析 将学院看做是学校的子类,系是学院的子类,这样实际上是站在组织大小来进行分层次的 实际上我
阅读全文
摘要:星巴克咖啡订单项目 咖啡种类/单品咖啡:Espresso(意大利浓咖啡)、 ShortBlack、 LongBlack(美式咖啡)、 Decaf(无因咖啡) 调料: Milk、 Soy(豆浆)、 Chocolate 要求在扩展新的咖啡种类时,具有良好的扩展性、改动方便、维护方便 使用OO的来计算不同
阅读全文
摘要:1.代理模式的基本介绍 代理模式:为一个对象提供一个替身,以控制对这个对象的访问。 即通过代理对象访问目标对象。 代理对象的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能。 被代理的对象可以是远程对象、 创建开销大的对象或需要安全控制的对象 代理模式有不同的形式,主要有
阅读全文
摘要:1. 传统方案的缺陷 展示网站项目需求 小型的外包项目,给客户A做一个产品展示网站, 客户A的朋友感觉效果不错,也希望做这样产品展示网站,但是要求都有些不同: 有客户要求以新闻的形式发布 客户人要求以博客的形式发布 有客户希望以微信公众号的形式发布 传统方案描述: 直接复制粘贴一份,然后根据客户不同
阅读全文
摘要:1. 豆浆制作问题 制作豆浆的流程:选材—>添加配料—>浸泡—>放到豆浆机打碎 通过添加不同的配料, 可以制作出不同口味的豆浆 选材、 浸泡和放到豆浆机打碎这几个步骤对于制作每种口味的豆浆都是一样的 请使用模板方法模式完成 (说明:因为模板方法模式,比较简单,很容易就想到这个方案, 因此就直接使用,
阅读全文
摘要:1. 智能生活项目需求 我们买了一套智能家电, 有照明灯、 风扇、 冰箱、 洗衣机, 我们只要在手机上安装 app 就可以控制对这些家电工作。 这些智能家电来自不同的厂家, 我们不想针对每一种家电都安装一个 App, 分别控制, 我们希望只要一个 app 就可以控制全部智能家电。 要实现一个 app
阅读全文
摘要:盖房项目实际需求 需要建房子:这一过程为打桩、 砌墙、封顶 房子有各种各样的,比如普通房,高楼,别墅,各种房子的过程虽然一样,但是各自实现的细节不同 请编写程序,完成需求 传统方式: 房子的抽象父类,指定建造房子的规范,以及建造房子的具体流程 public abstract class Abstra
阅读全文
摘要:1. 单例模式介绍 所谓类的单例设计模式, 就是采取一定的方法保证在整个的软件系统中, 对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。 比如 Hibernate 的 SessionFactory, 它充当数据存储源的代理, 并负责创建 Session 对象。Ses
阅读全文
摘要:1. 天气预报项目需求 天气预报项目需求,具体要求如下: 气象站可以将每天测量到的温度,湿度,气压等等以公告的形式发布出去(比如发布到自己的网站或第三方) 需要设计开放型API,便于其他第三方也能接入气象站获取数据 提供温度、气压和湿度的接口 测量数据更新时,要能实时的通知给第三方 传统方式解决天气
阅读全文
摘要:1. 学校院系展示需求 编写程序展示一个学校院系结构:需求是这样,要在一个页面中展示出学校的院系组成,一个学校有多个学院,一个学院有多个系。 传统的方式的问题分析 将学院看做是学校的子类,系是学院的子类,这样实际上是站在组织大小来进行分层次的 实际上我们的要求是 : 在一个页面中展示出学校的院系组成
阅读全文
摘要:1. 测评系统的需求 将观众分为男人和女人,对歌手进行测评,当看完某个歌手表演后,得到他们对该歌手不同的评价(评价有不同的种类,比如成功、失败等) 传统方式完成评测系统: 两个类, Man 和 Woman 分别继承超类Person, 有各自的成功 失败方法 问题分析: 如果系统比较小,还是ok的,但
阅读全文
摘要:1. 游戏角色状态恢复问题 游戏角色有攻击力和防御力,在大战Boss前保存自身的状态(攻击力和防御力), 当大战Boss后攻击力和防御力下降, 然后从备忘录对象恢复到大战前的状态 传统方案解决游戏角色恢复 类图: 传统的方式的问题分析 一个对象,就对应一个保存对象状态的对象, 这样当我们游戏的对象很
阅读全文
摘要:1. 智能家庭项目 智能家庭项目: 智能家庭包括各种设备,闹钟、咖啡机、电视机、窗帘 等 主人要看电视时,各个设备可以协同工作,自动完成看电视的准备工作,比如流程为: 闹铃响起 --> 咖啡机开始做咖啡 --> 窗帘自动落下 --> 电视机开始播放 传统方式: 类图: 传统的方式的问题分析 由上图可
阅读全文
摘要:1. 关于鸭子的项目 编写鸭子项目,具体要求如下: 有各种鸭子(比如野鸭、北京鸭、水鸭等, 鸭子有各种行为,比如叫、飞行等) 显示鸭子的信息 传统方案解决方案 示意图: 代码实现: 鸭子的抽象父类 public abstract class Duck { public Duck() { } publ
阅读全文
摘要:1. APP 抽奖活动问题 具体要求如下: 假如每参加一次这个活动要扣除用户50积分,中奖概率是10% 奖品数量固定,抽完就不能抽奖 活动有四个状态:可以抽奖、不能抽奖、发放奖品和奖品领完 活动的四个状态转换关系图 2. 状态模式基本介绍 状态模式(State Pattern):它主要用来解决对象在
阅读全文
摘要:1.四则运算问题 通过解释器模式来实现四则运算,如计算a+b-c的值,具体要求 先输入表达式的形式,比如 a+b+c-d+e,要求表达式的字母不能重复 在分别输入 a, b, c, d, e 的值 最后求出结果:如图 传统方案解决四则运算问题分析 编写一个方法,接收表达式的形式,然后根据用户输入的数
阅读全文
摘要:1. OA 系统采购审批需求 学校 OA 系统的采购审批项目: 需求是采购员采购教学器材 如果金额 小于等于 5000,由教学主任审批 (0<=x<=5000) 如果金额 小于等于 10000, 由院长审批 (5000<x<=10000) 如果金额 小于等于 30000,由副校长审批 (10000<
阅读全文
摘要:看一个披萨的项目:要便于披萨种类的扩展,要便于维护 披萨的种类很多(比如 GreekPizz、CheesePizz 等) 披萨的制作有 prepare、bake、cut、box 完成披萨店订购功能 类图: 传统简单代码实现: Pizza抽象类 //将Pizza 类做成抽象 public abstra
阅读全文
摘要:1. 设计模式的概述 设计模式是程序员在面对同类软件工程设计问题所总结出来的有用的经验, 模式不是代码, 而是某类问题的通用解决方案, 设计模式(Design pattern) 代表了最佳的实践。 这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。 设计模式的本质提高 软件的
阅读全文
摘要:1. UML 基本介绍 UML——Unified modeling language UML(统一建模语言),是一种用于软件系统分析和设计的语言工具,它用于帮助软件开发人员进行思考和记录思路的结果 UML本身是一套符号的规定,就像数学符号和化学符号一样,这些符号用于描述软件模型中的各个元素和他们之间
阅读全文
摘要:编写软件过程中,程序员面临着来自 耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性 等多方面的挑战, 设计模式是为了让程序(软件),具有如下更好的特性 代码重用性 (即:相同功能的代码,不用多次编写) 可读性 (即:编程规范性,便于其他程序员的阅读和理解) 可扩展性 (即:当需要增加新的功能时,
阅读全文
摘要:1. 错误信息 basic.result.exception.OtherException: feign error:系统异常:Content type 'multipart/form-data;boundary 679449061975336133574827;charset=UTF-8' not
阅读全文

浙公网安备 33010602011771号