Jevon's Blog

只是想寻求答案


  • 首页

  • 分类

  • 归档

  • 公益 404

  • 标签

  • 关于

  • 搜索

设计模式-行为型

发表于 2020-05-25 | 分类于 设计模式

写在前面

  1. 什么是行为型的设计模式

    主要是类和对象如何交互,划分相应的责任和算法

  2. 为什么要用

    不仅解决了类和对象如何划分而且还描述了他们之间如何通信,也是为了更好的完成抽象,保证了代码的扩展性和稳定性,在写代码迷茫纠结的时候让你不迷茫

模式类型

阅读全文 »

设计模式-结构型

发表于 2020-05-13 | 更新于 2020-05-19 | 分类于 设计模式

写在前面

  1. 什么是结构型的设计模式
    • 类结构型:多个类组合成更大的类,只存在类继承和实现关系
    • 对象结构型:类和对象组合的关联关系,根据合成复用原则,尽量使用关联关系代替继承
  2. 为什么要用

    组装现有类成为一个更大的结构,扩展出更强大的功能

模式类型

注:按重要程度排序

阅读全文 »

设计模式-创建型

发表于 2020-05-06 | 更新于 2020-05-13 | 分类于 设计模式

写在前面

​ 发现对于落地这件事情还是要静下心一个一个目标完成,设计模式一直搁浅了好久也没个系统整理,作为网上标配开篇,最近还是补上这个作业吧

  1. 为什么用设计模式

    • 设计模式是前人总结下来的经验,对于扩展性和可维护性有很大帮助
    • 也是为了使设计变得简单,容易阅读
  2. 设计模式原则(SOLID)

    • 单一职责原则(Single Responsibility Principle):可以理解为最好一个类只负责一项职责
    • 开闭原则(Open Close Priciple):尽量对扩展开放,对修改关闭
    • 里氏替换原则(Liskov Substitution Principle):引用父类处可以用任意子类代替
    • 接口隔离原则(Interface Segregation priciple):建立单一接口,最好是一个类依赖一个接口,而不是多个类依赖一个接口
    • 依赖倒置原则 (Dependency InVersion Principle) :调用方和实现方都应该依赖抽象,彼此相互独立,实现类应该依赖抽象,而不能反过来
    • 迪米特法则(Law of Demeter):一个对象保持对其他对象最少的了解
    • 合成复用原则(Composite/Aggregate Reuse Principle):尽量使用组合/聚合,不要使用继承,继承基类会暴露实现破坏封装;基类改变,子类实现也需要改变;实现是静态的,不够灵活
  3. 如何使用设计模式

    以上原则只是设计参考的一个约束,并不绝对,对于“最好的设计模式就是不用设计模式”,我们还没有达到这个境界,只有合适的场景用更合适的方法。

阅读全文 »

Relational And Non-Relational Storage System

发表于 2019-05-05 | 更新于 2019-12-21 | 分类于 Database

最近在研究ES的同时,有如下问题

  • 数据存储发展历史
  • 关系型和非关系型对比
  • 非关系型数据库是否支持事物

下面对以上问题进行展开

阅读全文 »

微服务之熔断降级

发表于 2019-04-13 | 更新于 2019-04-14 | 分类于 微服务
Keys
  • 滑动窗口: 滑动窗口协议(Sliding Window Protocol),属于TCP协议的一种应用,用于网络数据传输时的流量控制,以避免拥塞的发生。该协议允许发送方在停止并等待确认前发送多个数据分组。由于发送方不必每发一个分组就停下来等待确认,因此该协议可以加速数据的传输,提高网络吞吐量
常用熔断框架比较
对比 Sentinel Hystrix resilience4j
隔离策略 信号量隔离(并发线程数限流) 线程池隔离/信号量隔离 信号量隔离
熔断降级策略 基于响应时间、异常比率、异常数 基于异常比率 基于异常比率、响应时间
实时统计实现 滑动窗口(LeapArray) 滑动窗口(基于 RxJava) Ring Bit Buffer
动态规则配置 支持多种数据源 支持多种数据源 有限支持
扩展性 多个扩展点 插件的形式 接口的形式
基于注解的支持 支持 支持 支持
限流 基于 QPS,支持基于调用关系的限流 有限的支持 Rate Limiter
流量整形 支持预热模式、匀速器模式、预热排队模式 不支持 简单的 Rate Limiter 模式
系统自适应保护 支持 不支持 不支持
控制台 提供开箱即用的控制台,可配置规则、查看秒级监控、机器发现等 简单的监控查看 不提供控制台,可对接其它监控系统
阅读全文 »

微服务之配置中心

发表于 2019-04-04 | 分类于 微服务

感谢董老师带领入门

概述:微服务架构体系中配置中心是比较重要的组件之一,Spring Cloud官方自身提供了Spring Cloud Config分布式配置中心,由它来提供集中化的外部配置支持,它分为客户端和服务端两个部分

为什么需要配置中心

  • 配置实时生效
  • 配置管理流程: 权限管控、灰度发布、版本管理、格式检验和安全配置等

开源配置中心:

阅读全文 »

Mysql的那些坑

发表于 2019-04-02 | 更新于 2019-04-04 | 分类于 安装环境

windows 免安装版

  • 参照下面这个安装流程

    windows下MySQL免安装版配置教程mysql-5.7.23-winx64.zip版本

  • 当发生报错如下

    发生系统错误 193 。 *** 不是有效的 Win32程序。

    • 解决办法: Mysql安装目录中的bin文件夹中,删除一个mysqld大小为0kb的文件

Hello World

发表于 2019-03-31 | 更新于 2019-04-04 | 分类于 搭建博客

博客搭建初始化

开始写博客!(之前搭过得,又忘记了怎么玩,只能重搞T_T)
今天竟然经历了做开发以来的第二次加班….困
Jevon M

Jevon M

8 日志
5 分类
7 标签
© 2020 Jevon M
由 Hexo 强力驱动 v3.8.0
|
主题 – NexT.Pisces v7.0.1
|