自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 系统架构技能之设计模式-组合模式

本文将会讲述结构性模式中的另外一个常用的模式-组合模式,我们平时在面向对象的设计中,我想有一个原则经常被提及就是,我们在设计的时候,对象组合>类的继承,本篇将会将结合简单的实例来说明这方面的优势,并且完成对组合模式的主题思想的掌握。我们这样来简单的理解组合模式,组合模式就是把一些现有的对象或者元素,经过组合后组成新的对象,新的对象提供内部方法,可以让我们很方便的完成这些元素或者内部对象的访问和操作。我。

2023-09-07 07:42:56 618

原创 设计模式系列-外观模式

本文主要是讲述结构型模式中一个比较常用的模式-外观模式,这个模式呢,有个最大的特点将细粒度的对象包装成粗粒度的对象,应用程序通过访问这个外观对象,来完成细粒度对象的调用,外观模式一般是分布式应用和系统架构中的应用服务层的设计中常用的方式,并且一般结合外观模式+DTO来完成服务层的设计,提供分布式应用服务的高效服务,外观模式我们可以这样理解,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。

2023-09-07 07:42:07 758

原创 设计模式系列-原型模式

本文主要是讲述创建型模式中一个比较特殊的模式-原型模式,这个模式呢,有个最大的特点是克隆一个现有的对象,这个克隆的结果有2种,一种是是浅复制,另一种是深复制,这里我们也会探讨下深复制和浅复制的原理,这样可能更方便大家理解这个原型模式的使用。我们都知道,创建型模式一般是用来创建一个新的对象,然后我们使用这个对象完成一些对象的操作,我们通过原型模式可以快速的创建一个对象而不需要提供专门的new()操作就可以快速完成对象的创建,这无疑是一种非常有效的方式,快速的创建一个新的对象。

2023-09-03 10:43:42 930

原创 设计模式系列-创建者模式

本文主要是针对创建型模式中的创建者模式进行讲述,创建者模式是创建型模式中最负责的一个设计模式了,创建者负责构建一个对象的各个部分,并且完成组装的过程,我们可以这么理解创建者模式,创建者模式类似与一个步骤基本固定,但是每个步骤中的具体形式却又可以变化的这类对象的创建。也许这样说还是太抽象了,我们这么来理解吧,我感觉让人最容易理解的形式还是图形化的形式,不但接受起来容易,并且让人映象深刻,不知道大家是不是和我有同感呢?

2023-09-03 10:42:49 623

原创 系统架构技能之设计模式-抽象工厂模式

本文主要是针对创建型模式中的抽象工厂模式进行讲述,抽象工厂模式是在简单工厂模式的基础上扩展而成的新模式,将简单工厂中的对象的创建过程进行了很优雅的动态配置来完成无缝的扩展,当然通过一些扩展,可以构建出可支持动态新增或者删除对象的抽象工厂模式。本文将会给出具体的实现方案,相比工厂模式,抽象工厂模式是一个工厂负责多个对象的创建,返回的具体的类型是这个对象的抽象类型。这样,在客户端引用的时候只需要使用这个工厂返回的对象类型,抽象工厂会自动根据对象的类型动态的创建这个类型对象的实例。

2023-09-02 08:33:55 664

原创 系统架构技能之设计模式-工厂模式

本文将会主要是结合项目中的一些实例作为实例来分析工程模式的使用方式和何时使用工程模式,并且分析工程模式的有点和它解决的问题,在我们实际的项目中何时能使用到它,或者说我们在什么情况下,应该考虑使用工厂模式来解决项目中的问题,一般情况下我们可以这样理解设计模式,设计模式是一种方案,为我们遇到与设计模式提出的应用场景想象或者相仿的场景中,这类问题通常是经常发生或者是经常遇到的问题的通用解决方案。本文依然是采用图文讲解的形式来分析工程模式在项目中出现的位置,并且给出几个灵活的实现方案。

2023-09-02 08:32:56 1110

原创 设计模式-系列索引

园子里面有太多优秀的设计模式文章了,但是可能每个人的出发角度和关注点不同,可能会对每个模式理解的角度和切面不同,我想以我自己理解的方式来跟大家共同探讨下常用的设计模式,并且我会结合工作中的开发实际场景来说明每个模式的用法和特点,希望能对大家有所帮助,当然这些内容都是个人在实际项目中的总结和实践,错误或者理解有误之处,还请大家多多指正,多谢大家前来交流!

2023-09-01 08:05:41 77

原创 系统架构技能之设计模式-单件模式

本文将主要讲解创建型模式中的单例模式先来讲解,因为单例模式是最简单也是最容易理解的设计模式,上手快,易使用的设计模式。本文将从下面的流程来讲解单例模式,后面讲述的设计模式也将使用这样的方式。1、什么是单例模式?2、单例模式的应用场景。3、举例说明单例模式的使用。4、总结单例模式的用法。本章我们将来讲述下单例模式的使用,首先我们来看看单例模式的定义:单例模式:是一种软件设计中常用的设计模式,主要是用来控制某个类必须在某个应用程序中只能有一个实例存在。

2023-09-01 08:04:37 985

原创 SpringCloud学习笔记(十三)_Zipkin使用SpringCloud Stream以及Elasticsearch

在前面的文章中,我们已经成功的使用Zipkin收集了项目的调用链日志。但是呢,由于我们收集链路信息时采用的是http请求方式收集的,而且链路信息没有进行保存,ZipkinServer一旦重启后就会所有信息都会消失了。基于性能的考虑,我们可以对它进行改造,使用SpringCloud Stream进行消息传递,使用Elasticsearch进行消息的存储。

2023-08-28 07:58:15 868

原创 SpringCloud学习笔记(十二)_Zipkin全链路监控

Zipkin是SpringCloud官方推荐的一款分布式链路监控的组件,使用它我们可以得知每一个请求所经过的节点以及耗时等信息,并且它对代码无任何侵入,我们先来看一下Zipkin给我们提供的UI界面都是提供了哪些信息。

2023-08-27 16:04:39 514

原创 SpringCloud学习笔记(十一)_Hystrix仪表盘

我们来看一下如何使用它吧。

2023-08-27 16:03:21 403

原创 SpringCloud学习笔记(十)_SpringCloud监控

今天我们来学习一下actuator这个组件,它不是SpringCloud之后才有的,而是SpringBoot的一个starter,Spring Boot Actuator。我们使用SpringCloud的时候需要使用这个组件对应用程序进行监控与管理虽然actuator默认给我们提供了这么多的端点供我们使用,但是为了安全起见,在SpringBoot2.0中它仅仅开放了health和info两个端口,如果想要使用其他的端口就需要我们增加一些配置了,一起来看一下如何使用actuator吧。

2023-08-26 09:22:38 513

原创 SpringCloud学习笔记(九)_使用Java类加载SpringBoot、SpringCloud配置文件

怎么样,学会这个以后Leader还会担心你的代码臃肿么。本文出自,转载请保留。

2023-08-26 09:21:30 413

原创 SpringCloud学习笔记(八)_使用Apollo做配置中心

由于Apollo支持的图形化界面相对于我们更加的友好,所以此次我们使用Apollo来做配置中心本篇文章实现了使用Apollo配置了dev和fat两个环境下的属性配置。Apollo官方文档。

2023-08-25 07:54:52 451

原创 SpringCloud学习笔记(七)_路由器和过滤器-Zuul

先来看一下下方这个图[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KKzFMT0A-1692921015947)(https://zhixiang.org.cn/usr/local/blogImg/cd704830-4f9f-43a0-a972-d0ae09190687.png)]假如现在我们具有四个微服务,分别是用户、订单、支付、催收微服务,它们的调用方式分别是使用http、restful、thrift、kafka。

2023-08-25 07:50:40 444

原创 SpringCloud学习笔记(六)_Ribbon服务调用

Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时、重试等。简单的说,就是在配置文件中列出Load Balance(简称LB)后面所有的机器,Ribbon会自动的帮组你基于某种规则(如简单轮询,随机连接等)去连接这些机器,我们很容易使用Ribbon实现自定义的负载均衡算法。

2023-08-24 07:59:32 570

原创 SpringCloud学习笔记(五)_Consul注册中心

本章使用的Consul版本是 1.7.2。

2023-08-24 07:58:28 285

原创 SpringCloud学习笔记(四)_ZooKeeper注册中心

基于Spring Cloud实现服务的发布与调用。而在18年7月份,Eureka2.0宣布停更了,将不再进行开发,所以对于公司技术选型来说,可能会换用其他方案做注册中心。本章学习便是使用ZooKeeper作为注册中心。本章使用的zookeeper版本是 3.6.0。

2023-08-23 07:56:55 1110

原创 SpringCloud学习笔记(三)_服务提供者集群与服务发现Discovery

既然SpringCloud的是微服务结构,那么对于同一种服务,当然不可能只有一个节点,需要部署多个节点架构图如下:由上可以看出存在多个同一种服务提供者(Service Provider)

2023-08-23 07:55:19 890

原创 SpringCloud学习笔记(二)_Eureka注册中心

Eureka是一项基于REST(代表性状态转移)的服务,主要在AWS云中用于定位服务,以实现负载均衡和中间层服务器的故障转移。我们称此服务为Eureka Server。Eureka还带有一个基于Java的客户端组件Eureka Client,它使与服务的交互更加容易。客户端还具有一个内置的负载均衡器,可以执行基本的循环负载均衡。在Netflix,更复杂的负载均衡器将Eureka包装起来,以基于流量,资源使用,错误条件等多种因素提供加权负载均衡,以提供出色的弹性。服务治理。

2023-08-22 06:56:13 1389

原创 SpringCloud学习笔记(一)_快速入门

Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式环境中运行良好,包括开发人员自己的笔记本电脑,裸机数据中心,以及Cloud Foundry等托管平台。

2023-08-22 06:54:38 486

原创 Python学习笔记_实战篇(二)_django多条件筛选搜索

多条件搜索在很多网站上都有用到,比如京东,淘宝,51cto,等等好多购物教育网站上都有,当然网上也有很多开源的比楼主写的好的多了去了,仅供参考,哈哈先来一张效果图吧,不然幻想不出来是什么样的,前端样式很low,毕竟主要是说后台的嘛,前端为了简单测试就简单的写出来啦,喜欢好的样式可以自己去调哈写后台的应该都知道先从数据库方面入手,所以我们先来设计数据库。

2023-08-21 07:39:15 1484

原创 Python学习笔记_实战篇(一)_模拟登陆之下载

下面就给大家挨个说一下,刚拿到需求其实还是很模糊的,因为一个都没做过,等静下心来去理解的时候,发现并没有那么难,反而很简单。

2023-08-21 07:37:49 212

原创 Python学习笔记_进阶篇(四)_django知识(三)

django为用户实现防止跨站请求伪造的功能,通过中间件 django.middleware.csrf.CsrfViewMiddleware 来完成。而对于django中设置防跨站请求伪造功能有分为全局和局部。全局:中间件 django.middleware.csrf.CsrfViewMiddleware。

2023-08-20 14:19:26 1078

原创 Python学习笔记_进阶篇(三)_django知识(二)

本章内容。

2023-08-20 14:18:19 1838

原创 Python学习笔记_进阶篇(二)_django知识(一)

Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的软件设计模式,即模型M,视图V和控制器C。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。Django的主要目标是使得开发复杂的、数据库驱动的网站变得简单。Django注重组件的重用性和“可插拔性”,敏捷开发和DRY法则(Don’t Repeat Yourself)。

2023-08-19 08:46:47 1452

原创 Python学习笔记_进阶篇(一)_浅析tornado web框架

就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本。Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其 非阻塞的方式和对的运用,Tornado 每秒可以处理数以千计的连接,因此 Tornado 是实时 Web 服务的一个 理想框架。

2023-08-19 08:45:41 467

原创 Python学习笔记_基础篇(十二)_nmap使用及案例

NMap,也就是Network Mapper,最早是Linux下的网络扫描和工具包。nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。正如大多数被用于网络安全的工具,nmap 也是不少黑客及骇客(又称脚本小子)爱用的工具。

2023-08-18 06:23:31 411

原创 Python学习笔记_基础篇(十一)_socket编程

我们都知道计算机是由硬件和软件组成的。硬件中的CPU是计算机的核心,它承担计算机的所有任务。操作系统是运行在硬件之上的软件,是计算机的管理者,它负责资源的管理和分配、任务的调度。程序是运行在系统上的具有某种功能的软件,比如说浏览器,音乐播放器等。每次执行程序的时候,都会完成一定的功能,比如说浏览器帮我们打开网页,为了保证其独立性,就需要一个专门的管理和控制执行程序的数据结构——进程控制块。进程一般由程序、数据集、进程控制块三部分组成。我们编写的程序用来描述进程要完成哪些功能以及如何完成;

2023-08-18 06:22:21 329

原创 Python学习笔记_基础篇(十)_socket编程

I/O分为磁盘io和网络io,这里说的是网络io。

2023-08-17 07:40:03 159

原创 Python学习笔记_基础篇(九)_面向对象编程

属性的定义有两种方式: 1、装饰器 即:在方法上应用装饰器 2、静态字段 即:在类中定义值为property对象的静态字段。

2023-08-17 07:38:38 146

原创 Python学习笔记_基础篇(八)_正则表达式

正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语言里使用过正则表达式,只需要简单看一看就可以上手了。

2023-08-16 07:37:43 1181

原创 Python学习笔记_基础篇(七)_常用模块

Python之所以应用越来越广泛,在一定程度上也依赖于其为程序员提供了大量的模块以供使用,如果想要使用模块,则需要导入。

2023-08-16 07:36:16 371

原创 Python学习笔记_基础篇(六)_Set集合,函数,深入拷贝,浅入拷贝,文件处理

Python Set集合,函数,深入拷贝,浅入拷贝,文件处理

2023-08-15 21:19:31 213

原创 Python学习笔记_基础篇(五)_数据类型之字典

字典是python当中的一种数据类型,其结果跟之前学过的列表、元组有很大区别,字典内部是一个一对一映射的数据关系。

2023-08-15 21:17:30 797

原创 Python学习笔记_基础篇(四)_数据类型之元祖

注:所有的数据类型都存在想对应的类列里,元祖和列表功能一样,列表可以修改,元祖不能修改。字符串:str(注:\t等于一个tab键)

2023-08-15 07:29:35 59

原创 Python学习笔记_基础篇(三)_数据类型之列表

字符串:str(注:\t等于一个tab键)注:所有的数据类型都存在想对应的类列里。列表:list (元素的集合)

2023-08-15 07:24:08 545

原创 Python学习笔记_基础篇(二)_数据类型之字符串

整数:int字符串:str(注:\t等于一个tab键)布尔值: bool列表:list列表用[]元祖:tuple元祖用()字典:dict注:所有的数据类型都存在想对应的类列里strPython的字符串格式化有两种方式: 百分号方式、format方式百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存。(name) 可选,用于选择指定的keyflags 可选,可供选择的值有:+ 右对齐;正数前加正好,负数前加负号;

2023-08-14 22:48:46 281

原创 Python学习笔记_基础篇(一)_初识python

python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。C 和 Python、Java、C#等C语言: 代码编译得到 机器码 ,机器码在处理器上直接执行,每一条指令控制CPU工作其他语言: 代码编译得到 字节码 ,虚拟机执行字节码并转换成机器码再后在处理器上执行Python 和 C Python这门语言是由C开发而来。

2023-08-14 22:46:19 408

原创 MySQL入门学习教程(三)

索引是对数据库表中一个或多个列(例如,employee 表的姓名 (name) 列)的值进行排序的结构。如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息。例如这样一个查询:select * from table1 where id=10000。如果没有索引,必须遍历整个表,直到ID等于10000的这一行被找到为止;有了索引之后(必须是在ID这一列上建立的索引),即可在索引中查找。由于索引是经过某种算法优化过的,因而查找次数要少的多。

2023-08-13 21:56:45 452 1

素色简约纸飞机毕业答辩模板.pptx

素色简约纸飞机毕业答辩模板.pptx

2023-08-18

唯美清新毕业论文答辩模板.pptx

唯美清新毕业论文答辩模板.pptx

2023-08-18

纸张风格背景【论文答辩PPT模板】.pptx

纸张风格背景【论文答辩PPT模板】.pptx

2023-08-17

严谨实用论文答辩学术模板课题汇报.ppt

严谨实用论文答辩学术模板课题汇报.ppt

2023-08-17

毕业答辩紫蓝高雅开题报告毕业答辩通用模板.ppt

【毕业答辩】紫蓝高雅开题报告毕业答辩通用模板.ppt

2023-08-16

水墨中国风通用简约商务报告论文答辩PPT模板

水墨中国风通用简约商务报告论文答辩PPT模板

2023-08-15

向天歌【简约扁平化】大学生实习社会实践报告

向天歌【简约扁平化】大学生实习社会实践报告

2023-08-15

Excel和 Word简易工具类

EasyPoi Excel和 Word简易工具类 easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板 语言(熟悉的表达式语法),完成以前复杂的写法

2023-08-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除