09 2021 档案

摘要:接口 普通类:只有具体实现 抽象类:具体实现和规范(抽象方法)都有 接口:只有规范!约束和实现分离 接口就是规范,定义的是一组规则,体现了现实世界中“如果你是…则必须能…”的思想。如果你是天使,则必须能飞。如果你是汽车,则必须能跑。如果你是好人,则必须干掉坏人。 接口的本质是契约,就像我们人间的法律 阅读全文
posted @ 2021-09-24 18:37 葛老头 阅读(194) 评论(0) 推荐(0) 编辑
摘要:抽象类 作用:抽象类就是来实现封装,多态的增强代码的可扩展性 大白话理解:抽象类作为父类来规范子类必需的实现,例如将狗抽象为父类方法,因为不同种类的狗在吃的方面有所不同,所以父类没有办法完成具体实现,就用抽象方法来约束子类去实现自己的方法,抽象方法只能写在抽象类里 abstract修饰符可以用来修饰 阅读全文
posted @ 2021-09-24 18:13 葛老头 阅读(59) 评论(0) 推荐(0) 编辑
摘要:场景一:静态变量 package oop.demo07; public class Student { private static int age;//静态的变量 一般多线程用的比较多 private double score;//非静态变量 public static void main(Str 阅读全文
posted @ 2021-09-24 18:11 葛老头 阅读(43) 评论(0) 推荐(0) 编辑
摘要:一、持续集成相关概念 1.1、什么是持续集成? 随着软件开发复杂度的不断提高,团队开发成员间如何更好的协同工作以确保软件开发的质量已经成为开发过程中不可回避的问题。尤其是近年来敏捷开发在软件领域越来越火,如何能在不间断变化的需求中快速适应和保证软件的质量显得尤其重要。持续集成正是针对这一问题的一种软 阅读全文
posted @ 2021-09-24 11:42 葛老头 阅读(21457) 评论(11) 推荐(25) 编辑
摘要:instanceof 先看引用类型的类和instanceof比较的类有没有父子关系,有则可以编译,IDEA不报错 new一个对象,对象new所在的类和instanceof比较的类有没有父子关系,有则为True,无则为Fals 即编译看左边,运行结果True还是False看右边 例子关系 //Obje 阅读全文
posted @ 2021-09-21 23:29 葛老头 阅读(108) 评论(0) 推荐(0) 编辑
摘要:多态 即同一方法可以根据发送对象的不同而采取不同的行为方式 一个对象的实际类型是确定的,但可以指向对象的引用类型有很多 多态存在的条件 有继承关系 子类重写父类方法 父类引用指向子类对象 注意:多态是方法的多态,属性没有多态性 instanceof package oop.demo06; publi 阅读全文
posted @ 2021-09-21 23:28 葛老头 阅读(72) 评论(0) 推荐(0) 编辑
摘要:为什么需要重写? 父类的功能,子类不一定需要,或者不一定满足 场景一 重写都是方法的重写,和属性无关 父类的引用指向了子类 用B类新建了A类的对象,把A赋值给了B,这时候B是A,A又继承了B类,向上转型。所以调用B类方法的时候,也就是B=>test 定义的是static,new一个对象时,左边引用的 阅读全文
posted @ 2021-09-21 23:26 葛老头 阅读(79) 评论(0) 推荐(0) 编辑
摘要:场景一 场景二 场景三 场景四 注意:调用父类的构造器,super()必须在子类构造器的第一行 场景五 场景六 super注意点 super调用父类得构造方法(即构造器),必须在构造方法得第一个 super必须只能出现在子类的方法或者构造方法中 super和this不能同时调用构造方法(构造器) s 阅读全文
posted @ 2021-09-14 21:15 葛老头 阅读(96) 评论(0) 推荐(0) 编辑
摘要:继承 继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模 extands的意思是“扩展”。子类是父类的扩展 JAVA中类只有单继承,没有多继承 继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等 继承关系的两个类。一个为子类(派生类),一个为父类(基类)。子类继承父 阅读全文
posted @ 2021-09-14 20:17 葛老头 阅读(98) 评论(0) 推荐(0) 编辑
摘要:封装 该露的露,该藏得藏 我们程序设计要追求“高内聚,低耦合”。高内聚就是类得内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量得方法给外部使用 封装(数据得隐藏) 通常,应禁止直接访问一个对象中数据得实际表示,而应通过操作接口来访问,这称为信息隐藏 记住这句话就够了:属性私有,get/s 阅读全文
posted @ 2021-09-14 19:33 葛老头 阅读(122) 评论(0) 推荐(0) 编辑
摘要:构造器: 和类名相同 没有返回值 作用: new本质在调用构造器 初始化对象的值 注意点: 定义了有参构造之后,如果想要使用有参构造,必须显示的定义一个无参构造 IDEA快捷键: Alt + Insert 👇方法名和类名一样的方法是构造器,类似于python的__init__文件 package 阅读全文
posted @ 2021-09-13 21:51 葛老头 阅读(74) 评论(0) 推荐(0) 编辑
摘要:类与对象的关系 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是不能代表某一个具体的事物 动物、植物、手机…… Person类、Pet类、Car类等,这些类都是用来描述/定义某一类具体的事物应该具备的特点和行为 对象是抽象概念的具体实例 张三就是人的一个具体实例,张三家里的旺财就是狗的一 阅读全文
posted @ 2021-09-13 21:14 葛老头 阅读(75) 评论(0) 推荐(0) 编辑
摘要:方法的调用 静态方法 非静态方法 形参和实参 值传递和引用传递 this关键字(继承篇讲解) 静态方法 非静态方法 形参和实参 package oop.demo01; public class Demo03 { public static void main(String[] args) { //因 阅读全文
posted @ 2021-09-13 20:40 葛老头 阅读(46) 评论(0) 推荐(0) 编辑
摘要:方法的定义 修饰符 返回类型 break:跳出switch,结束循环和return的区别 方法名:注意规范,见名知意 参数列表:(参数类型,参数名) 异常抛出 package oop.demo01; import java.io.IOException; //Demo01类 public class 阅读全文
posted @ 2021-09-13 20:38 葛老头 阅读(32) 评论(0) 推荐(0) 编辑
摘要:面向过程 & 面向对象 面向过程思想 步骤清晰清楚,第一步做什么,第二步做什么…… 面对过程适合处理一些较为简单的问题 面向对象思想 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索 面向对象适合处理复杂的问题,适 阅读全文
posted @ 2021-09-13 20:37 葛老头 阅读(43) 评论(0) 推荐(0) 编辑
摘要:冒泡排序 冒泡排序无疑是最为出名的排序算法之一,总共有八大排序 冒泡的代码还是相当简单的,两层循环,外层冒泡轮数,里层依次比较,江湖中人人尽皆知 我们看到的嵌套循环,应该立马就可以得出这个算法的时间复杂度为O(n2) package array; import java.util.Arrays; / 阅读全文
posted @ 2021-09-10 09:00 葛老头 阅读(40) 评论(0) 推荐(0) 编辑
摘要:Arrays类 数据的工具类java.util.Arrays 由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本的操作 查看JDK帮助文档 Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名进 阅读全文
posted @ 2021-09-10 08:59 葛老头 阅读(43) 评论(0) 推荐(0) 编辑
摘要:多维数组 多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。 二维数组 int a[][]=new int[2][5]; 解析:以上二维数组a可以看成一个两行五列的数组 package array; public class Demo07 { publi 阅读全文
posted @ 2021-09-10 08:58 葛老头 阅读(36) 评论(0) 推荐(0) 编辑
摘要:数组的使用 For-Each循环 数组作方法入参 数组作返回值 For-Each循环 普通型 package array; import sun.security.util.Length; public class Demo03 { public static void main(String[] 阅读全文
posted @ 2021-09-10 08:57 葛老头 阅读(41) 评论(0) 推荐(0) 编辑
摘要:数组的四个基本特点 其长度是确定的,数组一旦被创建,它的大小就是不可以改变的 其元素必须是相同类型,不允许出现混合类型 数组中的元素可以是任何数据类型,包括基本类型和引用类型 数组变量属于引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量 数组本身就是对象,Java中对象是在堆中 阅读全文
posted @ 2021-09-10 08:56 葛老头 阅读(258) 评论(0) 推荐(0) 编辑
摘要:内存分析 数组三种初始化 静态初始化 int[] a = {1,2,3}; Man[] mans = {new Man(1,1),new Man(2,2)} 动态初始化 int[] a = new int[2]; a[0]=1; a[1]=2; 数组的默认初始化:数组是引用类型,它的元素相当于类的实 阅读全文
posted @ 2021-09-10 08:55 葛老头 阅读(45) 评论(0) 推荐(0) 编辑
摘要:数组声明创建 首先必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法: dataType[] arrayRefVar; //首选的方法 或 dataType arrayRefVar[]; //效果相同,但不是首选方法 Java语言使用new操作符来创建数组,语法如下: dataType 阅读全文
posted @ 2021-09-10 08:54 葛老头 阅读(100) 评论(0) 推荐(0) 编辑
摘要:数组的定义 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们 阅读全文
posted @ 2021-09-10 08:53 葛老头 阅读(54) 评论(0) 推荐(0) 编辑
摘要:package method; import java.util.Scanner; public class Demo09 { static double result; static String ys = "运算符"; static double num1=0; static double nu 阅读全文
posted @ 2021-09-09 09:00 葛老头 阅读(37) 评论(0) 推荐(0) 编辑
摘要:递归 A方法调用B方法,我们很容易理解 递归就是:A方法调用A方法!就是自己调用自己 利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大减少了程序的代码量。递归的 阅读全文
posted @ 2021-09-09 08:59 葛老头 阅读(54) 评论(0) 推荐(0) 编辑
摘要:可变参数 JDK1.5开始,Java支持传递同类型的可变参数给一个方法 在方法声明中,在指定参数类型后加一个省略号(...) 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明 package method; public class Demo06 { pub 阅读全文
posted @ 2021-09-09 08:58 葛老头 阅读(28) 评论(0) 推荐(0) 编辑
摘要:命令行传参 有时候你希望运行一个程序的时候再传递给它消息。这就要靠传递命令行参数main()函数实现 package method; public class CommandLine { public static void main(String[] args) { for (int i=0;i< 阅读全文
posted @ 2021-09-09 08:57 葛老头 阅读(37) 评论(0) 推荐(0) 编辑
摘要:方法的重载 重载就是在一个类中,有相同的函数名称,但形参不同的函数 方法重载的规则: 方法名称必须相同 参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等) 方法的返回类型可以相同也可以不相同 仅仅返回类型不同不足以成为方法重载 实现理论: 方法名称相同时,编译器会根据调用方法的参数个位、参 阅读全文
posted @ 2021-09-09 08:56 葛老头 阅读(40) 评论(0) 推荐(0) 编辑
摘要:方法的定义 Java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,一般情况下,定义一个方法包含以下语法: 修饰符 返回值类型 方法名(参数类型 参数名){ …… 方法体 …… return 返回值; } 方法包含一个方法头和一个方法体。下面是一个方法的所有部分: 修饰符:修饰符,这是 阅读全文
posted @ 2021-09-09 08:55 葛老头 阅读(102) 评论(0) 推荐(0) 编辑
摘要:何谓方法 System.out.println();它是什么呢 # System:类 # out:对象 # println():方法 Java方法是语句的集合,它们在一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则: 方 阅读全文
posted @ 2021-09-09 08:54 葛老头 阅读(45) 评论(0) 推荐(0) 编辑
摘要:package struct; public class TestDemo { public static void main(String[] args) { for (int i = 1; i <= 5; i++) { for (int j=5;j>=i;j--){ System.out.pri 阅读全文
posted @ 2021-09-09 08:53 葛老头 阅读(41) 评论(0) 推荐(0) 编辑
摘要:break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用) continue语句用于在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定 关于go 阅读全文
posted @ 2021-09-09 08:52 葛老头 阅读(61) 评论(0) 推荐(0) 编辑
摘要:增强for循环 这里我们先只是见一面,做个了解,之后数组部分会重点使用 Java5引入了一种主要用于数组或集合的增强型for循环 Java增强for循环语法格式如下 for(声明语句:表达式){ //代码句子 } 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语 阅读全文
posted @ 2021-09-09 08:51 葛老头 阅读(49) 评论(0) 推荐(0) 编辑
摘要:package struct; public class ForDemo03 { public static void main(String[] args) { for (int line = 1;line<=9;line++){ for (int row = 1;row <= line;row+ 阅读全文
posted @ 2021-09-08 08:52 葛老头 阅读(48) 评论(0) 推荐(0) 编辑
摘要:For循环 虽然所有循环结构都可以用while和dowhile表示,但是Java提供了另外一种语句for循环,使一些循环结构变动更加简单 for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构 for循环执行的次数是在执行前就确定的。语法格式如下 for(初始化;布尔表达式;更新){ / 阅读全文
posted @ 2021-09-08 08:51 葛老头 阅读(401) 评论(0) 推荐(0) 编辑
摘要:do…while循环 对于while语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次 do…while循环和while循环相似,不同的是,do…while循环至少会执行一次 do{ //代码语句 }while(布尔表达式); while和do…while的区别 阅读全文
posted @ 2021-09-08 08:50 葛老头 阅读(102) 评论(0) 推荐(0) 编辑
摘要:循环结构 while循环 do…循环 for循环 在java5中引入了一种主要用于数组的增强型for循环 while循环 while是最基本的循环,它的结构为 while(布尔表达式){ //循环内容 } 只要布尔表达式为true,循环就会一直执行下去 我们大多数情况下是会让循环停止下来的,我们需要 阅读全文
posted @ 2021-09-08 08:49 葛老头 阅读(88) 评论(0) 推荐(0) 编辑
摘要:package struct; public class SwitchDemo01 { //case穿透 //switch 匹配一个具体的值 public static void main(String[] args) { char garden = 'C'; switch (garden){ ca 阅读全文
posted @ 2021-09-08 08:48 葛老头 阅读(73) 评论(0) 推荐(0) 编辑
摘要:if单选择结构 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示 语法 if (布尔表达式){ //如果布尔表达式为True将执行的语句 } package struct; import java.util.Scanner; public class I 阅读全文
posted @ 2021-09-08 08:47 葛老头 阅读(47) 评论(0) 推荐(0) 编辑
摘要:顺序结构 JAVA的基本结构就是顺序结构,除非特别说明,否则就按照顺序一句一句执行 顺序结构是最简单的算法结构 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构 选择结构 if单选择结构 if双选择结构 if多选择结 阅读全文
posted @ 2021-09-08 08:46 葛老头 阅读(39) 评论(0) 推荐(0) 编辑
摘要:了解更多的sanner方法 Ctrl+鼠标左键,点击【Scanner】 点击Structure 看到了Scanner类下面的所有方法,以及具体方法实现的底层封装逻辑 拓展例子_nextInt()获取和hasNextInt()判断 package scanner; import java.util.S 阅读全文
posted @ 2021-09-08 08:45 葛老头 阅读(63) 评论(0) 推荐(0) 编辑
摘要:Scanner对象 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是Java5的新特征。我们可以通过Scanner类来获取用户的输入 基本语法: Scanner scanner = new Sca 阅读全文
posted @ 2021-09-08 08:44 葛老头 阅读(35) 评论(0) 推荐(0) 编辑
摘要:JavaDoc JavaDoc是一种将注释生成HTML文档的技术,生成的HTML文档类似于Java的API,易读且清晰明了 参数信息 @author 作者名 @version 版本号 @since 指明需要最早使用的jdk版本 @param 参数名 @return 返回值情况 @throws 异常抛 阅读全文
posted @ 2021-09-06 15:17 葛老头 阅读(71) 评论(0) 推荐(0) 编辑
摘要:包机制 为了更好的组织类,Java提供了包机制,用于区别类名的命名空间 包语句的语法格式为: package pkg1[. pkg2[. pkg3...]]; 一般利用公司域名倒置作为报名 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用import语句可完成此功能 impor 阅读全文
posted @ 2021-09-03 18:06 葛老头 阅读(36) 评论(0) 推荐(0) 编辑
摘要:运算符 算数运算符:+ - * / % ++ -- 赋值运算符:= += -= *= /= 关系运算符:> < >= <= == != instanceof 逻辑运算符:&& || ! 位运算符:& | ^ ~ >> << >>> 条件运算符?: 自增理解 int a = 3; int b = a+ 阅读全文
posted @ 2021-09-03 17:17 葛老头 阅读(65) 评论(0) 推荐(0) 编辑
摘要:变量 变量是什么:就是可以变化的量 Java是一种强类型语言,每个变量都必须声明其类型 Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域 type varName [=value] [{,varName[=value]}]; // 数据类型 变量名 = 值;也可以使用逗号隔开 阅读全文
posted @ 2021-09-03 16:16 葛老头 阅读(80) 评论(0) 推荐(0) 编辑
摘要:类型转换 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。运算中,不同类型的数据先转换为同一类型,然后进行运算。 低 高 byte,short,char > int > long > float > double 类型转换常见有两种:强制转换和自动转换 由低到高自动转换 由高到 阅读全文
posted @ 2021-09-03 14:37 葛老头 阅读(56) 评论(0) 推荐(0) 编辑
摘要:整数拓展 // 整数拓展: 进制 二进制0b 十进制 八进制0 十六进制0x // 同一个数字在不同进制中,结果是不同的,进制换算 int i = 10; int i2 = 010; // 八进制 int i3 = 0x10; // 十六进制 System.out.println(" ↓↓↓↓整数拓 阅读全文
posted @ 2021-09-03 10:26 葛老头 阅读(45) 评论(0) 推荐(0) 编辑
摘要:数据类型 强类型语言 要求变量的使用合乎规定,所有的变量都必须先定义才能使用。Java是强类型语言。 弱类型语言 变量定义比较随意,比如“12”+3,可以是int型123,也可以是String型123 Java数据类型 ​ 分为两大类: 基本类型(primitive type) 数值类型 整数类型 阅读全文
posted @ 2021-09-02 19:53 葛老头 阅读(93) 评论(0) 推荐(0) 编辑
摘要:关键字 标识符 Java所有的组成部分都需要名字。类名、变量名、方法名都称为标识符 首字母以字母(A-Z或者a-z),美元符号($),或者下划线(_)开头 首字母之后可以用字母、美元符号、下划线、数字的任意字符组合 不能使用关键字作为变量名或方法名 大小写敏感 不建议使用中文或者拼音命名,太low 阅读全文
posted @ 2021-09-02 19:52 葛老头 阅读(46) 评论(0) 推荐(0) 编辑
摘要:注释 平时我们编写代码,在代码量比较少的时候,我们还可以看懂自己写的,但是当项目结构一旦复杂起来,我们就需要用到注释了 注释不会被执行,是给开发人员看的 书写注释是一个非常好的习惯 Java中的注释有三种: 单行注释 //注释内容 多行注释 /*注释内容*/ 文档注释 /**注释内容*/ 有趣的代码 阅读全文
posted @ 2021-09-02 19:45 葛老头 阅读(33) 评论(0) 推荐(0) 编辑
摘要:IDEA开发 下载安装IDEA https://www.cnblogs.com/gltou/p/14956060.html 使用IDEA编写helloworld 踩坑总结 run的时候提示”Cannot start compilation: the output path is not specif 阅读全文
posted @ 2021-09-02 18:15 葛老头 阅读(54) 评论(0) 推荐(0) 编辑
摘要:概念 有一个外国人要看一本中文的书,有两种方式可以看,一种是把这本书翻译成英文版,另外一种是请一个中文翻译,想看哪边,翻译就翻译哪边。 针对上述的描述,翻译成英文版本的书籍对应的就是编译型,将代码编译成计算机能识别的语言 解释型就是上述的翻译过程,用到哪边解释哪边 Java是先编译(通过javac进 阅读全文
posted @ 2021-09-02 16:21 葛老头 阅读(96) 评论(0) 推荐(0) 编辑
摘要:HelloWorld 1.新建一个java文件 文件后缀名为.java Hello.java 【注意点】系统可能没有显示文件后缀名,我们需要手动打开 2.编写代码 public class Hello{ public static void main(String[] args){ System.o 阅读全文
posted @ 2021-09-02 15:57 葛老头 阅读(233) 评论(0) 推荐(0) 编辑
摘要:JDK下载与安装 安装JDK 1.百度搜素JDK8,找到下载地址 2.下载电脑对应的版本 3.双击安装JDK 4.记住安装的路径,可以自定义,默认路径如图 卸载JDK 删除Java安装目录 删除环境变量JAVA_HOME 删除path下关于Java的目录 cmd命令java -version检查是否 阅读全文
posted @ 2021-09-02 15:35 葛老头 阅读(46) 评论(0) 推荐(0) 编辑
摘要:Java三大版本(Write Once;Run Anywhere) JavaSE:标准版 JavaME:嵌入式开发 JavaEE:E企业级开发 JDK、JRE、JVM JDK是开发工具包 JRE是编译器,相当于运行环境 JVM相当虚拟机 阅读全文
posted @ 2021-09-02 14:43 葛老头 阅读(82) 评论(0) 推荐(0) 编辑
摘要:nginx文件结构 ... #全局块 events { #events块 ... } http #http块 { ... #http全局块 server #server块 { ... #server全局块 location [PATTERN] #location块 { ... } location 阅读全文
posted @ 2021-09-02 09:55 葛老头 阅读(171) 评论(0) 推荐(0) 编辑
摘要:Linux # 命令需要在Nginx的sbin目录下执行 cd /usr/local/nginx/sbin/ ./nginx #启动./nginx -s stop #停止 ./nginx -s quit #安全退出 ./nginx -s reload #重新加载配置文件 ps aux|grep ng 阅读全文
posted @ 2021-09-01 17:16 葛老头 阅读(68) 评论(0) 推荐(0) 编辑
摘要:Docker环境下部署Nginx https://www.cnblogs.com/gltou/p/15186971.html 阅读全文
posted @ 2021-09-01 17:04 葛老头 阅读(41) 评论(0) 推荐(0) 编辑
摘要:# 开启 service firewalld start # 重启 service firewalld restart # 关闭 service firewalld stop # 查看防火墙规则 firewall-cmd --list-all # 查询端口是否开放 firewall-cmd --qu 阅读全文
posted @ 2021-09-01 17:00 葛老头 阅读(65) 评论(0) 推荐(0) 编辑
摘要:step-1 安装gcc 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装: [root@localhost ~]# yum install gcc-c++ step-2 PCRE pcre-devel 安装 PCRE(Perl Compa 阅读全文
posted @ 2021-09-01 16:51 葛老头 阅读(48) 评论(0) 推荐(0) 编辑
摘要:背景 修改nginx配置文件nginx.conf后,想要重启nginx使配置生效。cmd进入nginx安装目录,输入命令: nginx -s reload 报错:nginx: [error] CreateFile() "D:\nginx-1.20.1/logs/nginx.pid" failed ( 阅读全文
posted @ 2021-09-01 15:52 葛老头 阅读(2236) 评论(0) 推荐(0) 编辑
摘要:启动Windows版本的Nginx时候,cmd报错,报错信息为[emerg] 4276#4280: bind() to 0.0.0.0:80 failed(10013: An attempt was made to access a socket in a way forbidden by its 阅读全文
posted @ 2021-09-01 15:39 葛老头 阅读(541) 评论(0) 推荐(0) 编辑
摘要:下载 访问官网,选择稳定版对应的Windows系列 安装解压即可 启动nginx 有很多种方法启动nginx 直接双击nginx.exe,双击后一个黑色的弹窗一闪而过 打开cmd命令窗口,切换到nginx解压目录下,输入命令 nginx.exe ,回车即可 关闭nginx 如果使用cmd窗口启动ng 阅读全文
posted @ 2021-09-01 15:12 葛老头 阅读(67) 评论(0) 推荐(0) 编辑
摘要:负载均衡 Nginx提供的负载均衡策略有两种: 内置策略为轮询、加权轮询、ip hash 扩展策略,就天马行空了,只有你想不到的没有它做不到的 轮询 加权轮询(根据权重来) iphash对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端的ip的请求分发给同一台服务器进行处理,可以 阅读全文
posted @ 2021-09-01 14:21 葛老头 阅读(43) 评论(0) 推荐(0) 编辑
摘要:Nginx作用 Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理 正向代理是代理客户端,反向代理是代理服务端 正向代理要知道访问服务器的地址,反向代理不需要知道访问服务器的真实地址 正向代理 反向代理 阅读全文
posted @ 2021-09-01 14:05 葛老头 阅读(47) 评论(0) 推荐(0) 编辑
摘要:公司产品出现瓶颈 公司项目刚上线的时候,并发量小,用户使用少,所以在低并发的情况下,一个jar包启动应用就够了,然后内部tomcat返回内容给用户 但是慢慢的,使用平台的用户越来越多,并发量慢慢增大了,这时候一台服务器满足不了我们的需求了 于是我们横向扩展,又增加了服务器。这个时候几个项目启动在不同 阅读全文
posted @ 2021-09-01 11:36 葛老头 阅读(78) 评论(0) 推荐(0) 编辑
摘要:Jenkins关联GitLab Gitlab仓库配置Webhooks 上传项目到GitLab,Jenkins构建 阅读全文
posted @ 2021-09-01 10:15 葛老头 阅读(88) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示