5 篮战丶

尚未进行身份认证

我要认证

那万一赢了呢?

等级
TA的排名 2w+

设计模式 – 代理模式

1 概述在生活中,我们经常见到这样的场景,如:租房中介、售票黄牛、婚介、经纪人、快递、事务代理、非侵入式日志监听等,这些都是代理模式的实际体现。代理模式(ProxyPattern)的定义也非常简单,是指为其他对象提供一种代理,以控制对这个对象的访问。代理对象在客服端和目标对象之间起到中介作用,代理模式属于结构型设计模式。使用代理模式主要有两个目的:一保护目标对象,二增强目标对象。下面我们来看一下代理模式的类结构图:Subject 是顶层接口,RealSubject 是真实对象(被代理对象),Pro

2020-10-21 15:43:34

设计模式 –单例模式

1 概念所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。实现方法:(1) 构造器私有化 。(2) 类的内部创建对象。(3) 向外暴露一个静态的公共方法。2 饿汉式优点:这种写法比较简单,就是在类装载的时候就完成实例化。避免了线程同步问题。缺点:在类装载的时候就完成实例化,没有达到Lazy Loading的效果。如果从始至终从未使用过这个实例,则会造成内存的浪费public class Hung

2020-10-20 22:23:11

设计模式 – 工厂模式

1 简单工厂模式简单工厂模式是属于创建型模式,是工厂模式的一种。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式。优点:客户端不需要再负责对象的创建,仅仅调用工厂,工厂帮你创建需要的对象。并且把对象的创建和使用进行解耦,方便管理。缺点:违反了开闭原则。demo:水果工厂制作水果public abstract class Fruit { public abstract String getName();}public clas

2020-10-20 16:17:30

分布式事务解决方案之TCC(Hmily)

1 什么是TCC事务TCC是Try、Confirm、Cancel三个词语的缩写,TCC要求每个分支事务实现三个操作:预处理Try、确认Confirm、撤销Cancel。Try操作做业务检查及资源预留,Confirm做业务确认操作,Cancel实现一个与Try相反的操作即回滚操作。TM首先发起所有的分支事务的try操作,任何一个分支事务的try操作执行失败,TM将会发起所有分支事务的Cancel操作,若try操作全部成功,TM将会发起所有分支事务的Confirm操作,其中Confirm/Cancel操作若执

2020-10-15 00:49:50

分布式事务解决方案之2PC(Seata)

1 分布式事务解决方案之2PC(两阶段提交)2PC即两阶段提交协议,是将整个事务流程分为两个阶段,准备阶段(Prepare phase)、提交阶段(commit phase),2是指两个阶段,P是指准备阶段,C是指提交阶段。举例:张三和李四好久不见,老友约起聚餐,饭店老板要求先买单,才能出票。这时张三和李四分别抱怨近况不如意,囊中羞涩,都不愿意请客,这时只能AA。只有张三和李四都付款,老板才能出票安排就餐。但由于张三和李四都是铁公鸡,形成了尴尬的一幕:准备阶段:老板要求张三付款,张三付款。老板要求李四

2020-10-15 00:41:57

企业级 kubernetes SpringCloud 持续集成,从0到1

1 环境概述192.168.38.50 master192.168.38.51 node1192.168.38.52 node2192.168.38.100 harbor/nfs192.168.38.45 gitlab/sonarqube2 Kubernetes安装Jenkins2.1 PV/PVC#创建命名空间kubectl create namespace jenkins-k8s(1) 创建PVvim jenkins-pv.yaml apiVersion:

2020-09-30 02:39:18

Kubernetes SpringCloud持续集成 - 安装jenkins、配置模板pod(一)

1 k8s环境概述192.168.38.50 master192.168.38.51 node1192.168.38.52 node2192.168.38.100 harbor/nfs2 PV/PVC#创建命名空间kubectl create namespace jenkins-k8s2.1 创建PVvim jenkins-pv.yaml apiVersion: v1kind: PersistentVolumemetadata: name: jenkins-p

2020-09-29 20:39:19

K8s部署springboot

1 Docker部署SpringBoot1.1 部署(1) springboot项目概述(2) 打成jar包(3) 上传至Docker服务器,制作DockerfileFROM java:8ADD springboot-web-1.0-SNAPSHOT.jar app.jarRUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo "Asia/Shanghai" > /etc/timezoneRUN

2020-09-22 01:30:08

SpringCloud 持续集成解决方案(Jenkins+Docker+Harbor+Sonarqube)

1 什么是DevOps软件开发最高效的组织形式是“One Man Work”,只有一个人干活,写个小项目,从需求到开发,从测试到部署全部独立完成,非常高效。但随着业务的增长,项目开始逐渐变得庞大,变成团队,出现了分工,出现了产品经理、项目经理、开发、数据、测试、运维等等角色。这些角色间存在天然的工作目标上的矛盾。举个例子,对于运维来说,稳定压倒一切,新 Feature 越少越好。而对于研发来说,却希望能开发更多的功能。这种矛盾会导致大量的资源和时间的浪费。就像两匹马拉一辆车,如果马头向着的方向不一致,

2020-09-04 00:42:09

Jenkins 集成 SonarQube(五)

1 安装插件2 配置生成sonarqube令牌:73f631bb0e020919b1a42a0c4d60ee7e60ecf51c创建凭证:配置sonarqube:3 sonar-project.properties配置文件#SonarQube 实例名称,唯一sonar.projectKey=springboot-web#项目名称sonar.projectName=springboot-web#版本号sonar.projectVersion=1.0#指定扫描目

2020-08-30 01:36:10

Jenkins Gitlab Hook自动触发构建(四)

1 插件安装2 Jenkins配置#记录地址http://192.168.38.45:8000/jenkins/project/demo-pipeline修改pipeline构建配置开启gitlab访问3 Gitlab配置

2020-08-29 20:18:30

Jenkins Pipeline(三)

1 概述1.1 概念Pipeline,简单来说,就是一套运行在 Jenkins 上的工作流框架,将原来独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排和可视化的工作。1.2 优点代码:Pipeline以代码的形式实现,通常被检入源代码控制,使团队能够编辑,审查和迭代其传送流程。持久:无论是计划内的还是计划外的服务器重启,Pipeline都是可恢复的。可停止:Pipeline可接收交互式输入,以确定是否继续执行Pipeline。多功能:Pipeline支持现实世界中

2020-08-29 14:36:33

Jenkins集成Gitlab、Jdk、Maven(二)

1 集成Gitlab1.1 安装插件Credentials Binding1.2 git安装#Jenkins 服务器上要有git环境yum install git -y #查看版本git --version1.3 生成公钥/私钥#生成命令ssh-keygen -t rsacd /root/.ssh/#查看公钥cat id_rsa.pub#查看私钥cat id_rsa1.4 gitlab设置公钥1.5 Jenkins设置私钥2 集成JDK、Maven2.

2020-08-29 10:21:40

jenkins环境搭建(一)

1 解压tomcat把jenkins.war放入webapp下2 修改端口cd /usr/local/apache-tomcat-9.0.8/confvim server.xml3 启动tomcatcd /usr/local/apache-tomcat-9.0.8/bin./startup.sh4 访问http://192.168.38.45:8000/jenkins/5 更新镜像源#命令cd /root/.jenkins#进入cd updates#命令

2020-08-26 20:01:36

Sonarqube安装及基本使用

1 需要环境2 解压包#解压unzip sonarqube-6.7.4.zip3 创建数据库4 修改配置文件cd /usr/local/sonarqube-6.7.4/confvim sonar.propertiessonar.jdbc.username=rootsonar.jdbc.password=123456sonar.jdbc.url=jdbc:mysql://192.168.38.45:3306/sonar?useUnicode=true&characterE

2020-08-24 21:03:14

Nexus 搭建及基础使用

1 解压tar -zxvf nexus-3.19.1-01-unix.tar.gz2 启动cd /usr/local/nexus-3.19.1-01/bin./nexus start3 删除刚才的进程4 新建账户useradd nexuschown -R nexus:nexus /usr/local/nexus-3.19.1-01/5 切换用户su nexuscd /usr/local/nexus-3.19.1-01/bin#启动./nexus start#查看是

2020-08-22 13:15:30

GitLab汉化版搭建

1 环境安装yum -y install lokkityum -y install curl openssh-server openssh-clients postfix cronie service postfix start chkconfig postfix on lokkit -s http -s ssh2 使用rpm包安装rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.4.4-

2020-08-20 23:31:36

KuberSphere安装

1 安装helm#创建目录mkdir /usr/local/bin#执行脚本curl -L https://git.io/get_helm.sh | bash2 配置权限#权限kubectl apply -f helm-rbac.yaml#初始化helm init --service-account=tiller --tiller-image=sapcc/tiller:v2.16.3 --history-max 300#helm-rbac.yamlapiVersion: v1

2020-08-13 20:01:32

kubernetes之kubeadmin安装部署

1 脚本地址链接:https://pan.baidu.com/s/1uut9qXxVmcnlZXq3v7Dw-g 提取码:qujc2 前置准备2.1 环境192.168.38.38 master 4g192.168.38.39 node1 4g192.168.38.40 node2 4g2.2 安装基础软件包yum -y install wget net-tools nfs-utils lrzsz gcc gcc-c++ make cmake libxml2-devel opens

2020-08-13 19:56:17

SpringCloud Gateway Security oauth2.0 搭建微服务统一认证授权

1 概述SpringCloud Gateway Security oauth2.0 搭建微服务统一认证授权。项目概述:common:公用代码,实体、工具类等等…gateway:网关uaa:用户登录认证服务school:微服务环境概述:SpringBoot 版本:2.3.1.RELEASESpringCloud版本:Hoxton.SR6SpringCloudAlibaba:2.2.1.RELEASEMybatisPlus:3.3.2技能要求:需要掌握SpringCloud 、

2020-07-25 16:05:29

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 分享精英
    分享精英
    成功上传11个资源即可获取