摘要:
netty 开发的基本流程 实现客户端、服务器端 实现思路 netty 依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www 阅读全文
摘要:
当我们对一类事情处理熟悉之后,通常可以总结形成一定的流程,或者处理这类事情的方法论。往后处理具体类似的事情时,我们使用该方法论进行套用,且做些细微调整即可。 1. 概述 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。这样 阅读全文
摘要:
理解 AQS 的核心问题 AQS 是一个用于构建锁、同步器等线程协作工具类的框架,有了 AQS 以后,很多用于线程协作的工具类就都可以很方便的被写出来,可以极大地减少更上层的开发工作量,避免重复造轮子,同时也避免了上层因处理不当而导致的线程安全问题。基于 AQS 的实现,JDK 已经为我们提供了多个 阅读全文
摘要:
1、安装 注意:替换 master-ip 为 您的实际IP sudo docker run -d \ --restart=unless-stopped \ --name=kuboard \ -p 8080:80/tcp \ -p 10081:10081/udp \ -p 10081:10081/tc 阅读全文
摘要:
安装规划 主机名称 操作系统 IP 系统配置 状态 备注 master24 CentOS-7.9-x86_64 192.168.1.24 4核16G 主节点 主节点 node21 CentOS-7.9-x86_64 192.168.1.21 4核8G 调度 工作节点 node22 CentOS-7. 阅读全文
摘要:
安装 harbor ## 准备 /data/docker-hub/harbor/prepare ## 安装 /data/docker-hub/harbor/install.sh 启动 harbor ## 执行 install 启动 ./install.sh ## 或者 /data/docker-hu 阅读全文
摘要:
安装 Gitlab docker run --name gitlab \ -v /data/gitlab/etc/:/etc/gitlab \ -v /data/gitlab/log:/var/log/gitlab \ -v /data/gitlab/data:/var/opt/gitlab \ - 阅读全文
摘要:
安装 Jenkins docker run -d -p 50000:50000 -p 8008:8080 \ -v /home/jenkins_home:/var/jenkins_home \ -v /etc/localtime:/etc/localtime \ -v /var/run/docker 阅读全文
摘要:
在商品经济萌芽的时候出现以物易物,假如买一件衣服,老板要你拿一头猪换,可是你定不会养猪,你只会编程。你找到养猪户,决定写一个APP换他一头猪,他说换猪可以,但是得用一条金链来换... “所以这里就出现了一连串的对象依赖,从而造成了严重的耦合灾难。解决这个问题的最好的办法就是,买卖双方都依赖于抽象—— 阅读全文
摘要:
一家店一开始只卖酒类,只让成年人进入消费。后续增加了奶制品,宣称可以让未成年人进店消费。我们都知道显然是无法营业的,因为这家店扩展业务之后包含了未成年不允许涉及的东西,甚至会导致原先的业务(酒类)无法开展。这就是一个未遵循里氏替换原则的反例。 1. 概述 里氏替换原则主要阐述了有关继承的一些原则,也 阅读全文
摘要:
1. Spring 概述 1.1 什么是 Spring? Spring 是 java 企业级应用的开源开发框架, Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的 web 应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程 阅读全文
摘要:
网关简介 大家都都知道在微服务架构中,一个系统会被拆分为很多个微服务。那么作为客户端要如何去调用这么多的微服务呢?如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用。 这样的架构,会存在着诸多的问题: 客户端多次请求不同的微服务,增加客户端代码或配置编写的复杂性认证复杂,每个服 阅读全文
摘要:
服务治理介绍 先来思考一个问题 通过上一章的操作,我们已经可以实现微服务之间的调用。但是我们把服务提供者的网络地址(ip,端口)等硬编码到了代码中,这种做法存在许多问题: 一旦服务提供者地址变化,就需要手工修改代码; 一旦是多个服务提供者,无法实现负载均衡功能; 一旦服务变得越来越多,人工维护调用关 阅读全文
摘要:
说在前面:下面初始化环境工作都在 work 节点执行 环境初始化 1、修改 hostname [root@node6 ~]# vim /etc/hostname 将规划好的 node 名称写入 hostname 文件保存即可 2、重启 [root@node6 ~]# reboot 3、关闭防火墙 [ 阅读全文
摘要:
说在前面:下面初始化环境工作都在 master 节点执行 环境初始化 1、修改hostname [root@master ~] vim /etc/hostname 将规划好的主节点名称 master 写入 hostname 文件保存即可 [root@master ~] cat /etc/hostna 阅读全文
摘要:
说在前面:登录集群规划中的 NFS 服务器,逐步执行以下步骤 1、安装 nfs 和 rpc。 #安装nfs服务 [root@localhost ~]# yum install -y nfs-utils #安装rpc服务 [root@localhost ~]# yum install -y rpcbi 阅读全文
摘要:
说在前面:如果没有数据盘或者不需要磁盘挂载,请忽略此章节,如果所有机器都需要挂载磁盘,请逐一执行即可 1、查看磁盘 [root@ecs-c024 ~]# fdisk -l 输出: Disk /dev/vda: 42.9 GB, 42949672960 bytes, 83886080 sectors 阅读全文
摘要:
测试用例(Test Case)是指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。简单地认为,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件 阅读全文
摘要:
测试工程师在测试功能后一般都会提交系统 BUG,在禅道软件中,BUG 也同样需要维护模块,以便更好的组织管理 BUG。如果有规范的产品模块,这些模块将直接同步到 BUG视图、用例下有条件的同步到项目中。同时BUG 模块、用例模块和项目模块也可以单独维护。 “测试视图”是所有产品工程师的日常工作界面, 阅读全文
摘要:
作为产品经理,关注需求的状态流转可以清晰知道每个需求的研发进度甚至整个产品的进度,从而做到更好的产品把控,想必每个产品工程师应该非常清楚者这其中的重要性。因此我们建议产品经理必须时刻关注每个需求的进度,需求研发完毕之后,需要到对应的生产环境进行走查。 在禅道软件中需求有两个字段来跟踪它的变化,一个是 阅读全文
摘要:
产品经理可能都习惯了写需求设计文档,或者规格说明书,通过一个非常完整的 word 文档将某一个产品的需求都定义出来。但在禅道里面,我们提倡按照功能点的方式来写需求。简单来讲,就是将原来需求设计文档中的每一个功能点摘出来,录在禅道里面,作为一个个独立的功能点。如果按照 scrum 标准走的话,我们可以 阅读全文
摘要:
产品经理在创建了产品之后,便是日常产品需求维护,“产品视图”是所有产品工程师的日常工作界面,也是开发工程师、测试工程师工作的重要依据。“产品视图”的维护直接关乎团队日常工作效率和产品的成败。同时该页面的需求维护结果也是产品工程师工作质量的重要考核指标。 产品视图概览 在我们规划好产品的平台和模块之后 阅读全文
摘要:
产品经理在研究了市场和行业竞品之后,通常会对即将实现的产品有个大概的认识。其中至关重要的是:产品关乎的项目集,涉及的平台、划分的模块。这三点在实现产品之前需要做好规划,这很重要,可以有效避免产品管理上的混乱。因此有必要要求产品工程师在录入产品之前已经想好以上罗列的三点,因为后续的所有工作将因此展开。 阅读全文
摘要:
案例准备 技术选型 maven:3.3.9 数据库:MySQL 5.7 持久层: SpingData Jpa 其他: SpringCloud Alibaba 技术栈 模块设计 springcloud-alibaba 父工程 shop-common 公共模块【实体类】 shop-user 用户微服务 阅读全文