08 2020 档案

摘要:项目部署到Jenkins 1、开启tomcat:双击startup.bat文件。 2、登录Jenkins 3、创建自由风格任务item: 4、设置触发器: 5、设置构建:Execute Windows batch command,运行项目的主函数 6、查看控制台输出: 注意事项 1、部署到Jenki 阅读全文
posted @ 2020-08-31 04:16 Whatever_It_Takes 阅读(371) 评论(0) 推荐(0)
摘要:我自己的项目 github链接:https://github.com/jimmy688/pythonDemo 下面的这个项目框架,以后可在此基础上修改完善使用: 阅读全文
posted @ 2020-08-31 02:28 Whatever_It_Takes 阅读(186) 评论(0) 推荐(0)
摘要:发送邮件 import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart #如果要添加附件,必须使用MIMEMultipart from email.header i 阅读全文
posted @ 2020-08-31 00:57 Whatever_It_Takes 阅读(172) 评论(0) 推荐(0)
摘要:操作mysql 安装pymysql:pip install pymysql 常用对象: Connection:代表一个与MySQL Server的socket连接,使用connect方法来创建一个连接实例。 Cursor:代表一个与MySQL数据库交互对象,使用Connection.Cursor() 阅读全文
posted @ 2020-08-31 00:37 Whatever_It_Takes 阅读(181) 评论(0) 推荐(0)
摘要:数据驱动 ddt python 的unittest 没有自带数据驱动功能。所以如果使用unittest,同时又想使用数据驱动,那么就可以使用DDT来完成。 一般进行接口测试时,每个接口的传参都不止一种情况,一般会考虑正向、逆向等多种组合。所以在测试一个接口时通常会编写多条case,而这些case除了 阅读全文
posted @ 2020-08-31 00:34 Whatever_It_Takes 阅读(380) 评论(0) 推荐(0)
摘要:unittest模块 unittest官方文档:https://docs.python.org/zh-cn/3.7/library/unittest.html#assert-methods Unittest是python里面 的单元测试框架,方便组建测试用例,一键执行用例,并生成可视化测试报告 un 阅读全文
posted @ 2020-08-31 00:33 Whatever_It_Takes 阅读(220) 评论(0) 推荐(0)
摘要:requests模块 requests模块支持的请求方式 1 requests.get(‘https://github.com/timeline.json’) # GET请求 2 requests.post(“http://httpbin.org/post”) # POST请求 3 requests 阅读全文
posted @ 2020-08-31 00:31 Whatever_It_Takes 阅读(263) 评论(0) 推荐(0)
摘要:算法练习 冒泡排序法 普通的冒泡排序: listToSort=[32,1,56,34,89,56] def bubbleSort(listToSort): for i in range(len(listToSort)-1): for j in range(len(listToSort)-i-1): 阅读全文
posted @ 2020-08-31 00:30 Whatever_It_Takes 阅读(198) 评论(0) 推荐(0)
摘要:装饰器@ 函数装饰器 内置函数装饰器 @staticmethod 被@staticmethod修饰的方法是静态方法,从而可以实例化使用 C().f(),也可以不实例化调用该方法 C.f()。 @classmethod @classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但 阅读全文
posted @ 2020-08-31 00:28 Whatever_It_Takes 阅读(130) 评论(0) 推荐(0)
摘要:json数据解析 Python3 中可以使用 json 模块来对 JSON 数据进行编解码,它包含了两个函数: json.dumps(): 对数据进行编码。 json.loads(): 对数据进行解码。 python 原始类型向 json 类型的转化对照表: Python JSON dict obj 阅读全文
posted @ 2020-08-31 00:26 Whatever_It_Takes 阅读(219) 评论(0) 推荐(1)
摘要:正则表达式 正则表达式在线测试工具:http://c.runoob.com/front-end/854 使用正则表达式进行匹配的流程: 常用语法 re.match函数 re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。 re.match 阅读全文
posted @ 2020-08-31 00:01 Whatever_It_Takes 阅读(173) 评论(0) 推荐(0)
摘要:日期和时间 Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。 时间间隔是以秒为单位的浮点小数。 每个时间戳都以自从 1970 年 1 月 1 日午夜(历元)经过了多长时间来表示。 Python 的 time 模块下有很多函数可以转换常见日期格式。如函数 tim 阅读全文
posted @ 2020-08-30 23:59 Whatever_It_Takes 阅读(166) 评论(0) 推荐(0)
摘要:多线程 多线程的优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理。 用户界面可以更加吸引人,比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度。 程序的运行速度可能加快。 在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况 阅读全文
posted @ 2020-08-30 23:58 Whatever_It_Takes 阅读(112) 评论(0) 推荐(0)
摘要:面向对象 Python从设计之初就已经是一门面向对象的语言。 类定义 类对象 类对象支持两种操作:属性引用和实例化。 属性引用使用和 Python 中所有的属性引用一样的标准语法:obj.name。 #!/usr/bin/python3 class MyClass: """一个简单的类实例""" i 阅读全文
posted @ 2020-08-30 23:57 Whatever_It_Takes 阅读(189) 评论(0) 推荐(0)
摘要:错误和异常 异常处理 try...except..else...finally , except和finally可有可没有。 try: print(2/0) except ZeroDivisionError: print("出错了") else: print("没错") finally: print 阅读全文
posted @ 2020-08-30 23:56 Whatever_It_Takes 阅读(168) 评论(0) 推荐(0)
摘要:读和写文件 open() 将会返回一个 file 对象,基本语法格式如下: open(filename, mode) filename:包含了你要访问的文件名称的字符串值。 mode:决定了打开文件的模式:只读,写入,追加等。默认文件访问模式为只读(r)。 模式总结:(Truncate表示清除的意思 阅读全文
posted @ 2020-08-30 23:53 Whatever_It_Takes 阅读(207) 评论(0) 推荐(0)
摘要:模块&包 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库(sys等)的方法。 import 语句 import module1[, module2[,... moduleN] 当解释器遇到 impor 阅读全文
posted @ 2020-08-30 23:50 Whatever_It_Takes 阅读(146) 评论(0) 推荐(0)
摘要:函数 Python 定义函数使用 def 关键字,一般格式如下: def 函数名(参数列表): 函数体 带参数: def area(width, height): return width * height 参数传递 在 python 中,类型属于对象,变量是没有类型的: a=[1,2,3] a=" 阅读全文
posted @ 2020-08-30 23:49 Whatever_It_Takes 阅读(172) 评论(0) 推荐(0)
摘要:迭代器与生成器 迭代器 迭代器是一个可以记住遍历的位置的对象。 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 迭代器有两个基本的方法:iter() 和 next()。 字符串,列表或元组对象都可用于创建迭代器: >>> list=[1,2,3,4] >> 阅读全文
posted @ 2020-08-30 23:46 Whatever_It_Takes 阅读(184) 评论(0) 推荐(0)
摘要:控制语句 python的真值对照表: # coding:utf-8 a = None b = '' c = 0 print(bool(a)) # False print(bool(b)) # False print(bool(c)) # False d = 1 e = -1 f = '0' prin 阅读全文
posted @ 2020-08-30 23:37 Whatever_It_Takes 阅读(146) 评论(0) 推荐(0)
摘要:运算符 Python算术运算符 以下假设变量a为10,变量b为21: 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 31 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -11 * 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 21 阅读全文
posted @ 2020-08-30 23:35 Whatever_It_Takes 阅读(131) 评论(0) 推荐(0)
摘要:数据类型 变量赋值 #!/usr/bin/python # -*- coding: UTF-8 -*- counter = 100 # 赋值整型变量 miles = 1000.0 # 浮点型 name = "John" # 字符串 print counter print miles print na 阅读全文
posted @ 2020-08-30 23:32 Whatever_It_Takes 阅读(156) 评论(0) 推荐(0)
摘要:基本使用 打印: print("") print("hello \n world") #换行 连接符+: name="yoy" print("hello"+name) 格式化输出: name="yoy" age=26 print("%s is %d years old " %(name,age)) 阅读全文
posted @ 2020-08-30 23:29 Whatever_It_Takes 阅读(164) 评论(0) 推荐(0)
摘要:收集监控系统 influxdb+grafana+telegra监控系统的简单理解:telegraf收集系统cpu等数据,并写入数据到influxdb中,jmeter运行脚本,也写入测试数据到influxdb中,最终由grafana以图形化实时展示系统和测试数据。 influx 官方文档:https: 阅读全文
posted @ 2020-08-30 23:28 Whatever_It_Takes 阅读(643) 评论(0) 推荐(0)
摘要:jenkins邮件通知设置 本次以163网易邮箱为例,设置jenkins的邮件通知。若使用其它邮箱,也是基本一样的步骤。 第一步:网页登录163邮箱,设置开启smtp服务 登录163邮箱: 点击开启IMAP/SMTP服务后,会弹出二维码,然后使用手机微信扫描,扫描后会自动跳到发送短信界面: 手机发送 阅读全文
posted @ 2020-08-30 23:14 Whatever_It_Takes 阅读(396) 评论(0) 推荐(1)
摘要:jenkins构建触发器 定时构建 举个例子:每天上班前跑一遍你的脚本 定时规则如下: 字段 * * * * * 含义 分钟 小时 日期 月份 星期 取值范围 0-59 0-23 1月31日 1月12日 0-7 示例 每隔15分钟执行一次 H/15 * * * * 每隔2个小时执行一次 H H/2 阅读全文
posted @ 2020-08-30 23:09 Whatever_It_Takes 阅读(150) 评论(0) 推荐(0)
摘要:jmeter-ant-jenkins轻量级接口自动化测试 安装的工具: jdk1.8 Jmeter4.0 ant1.9(蚂蚁) jenkins2.1(詹金斯) windows安装Ant 下载安装包:https://mirrors.tuna.tsinghua.edu.cn/apache//ant/bi 阅读全文
posted @ 2020-08-30 23:07 Whatever_It_Takes 阅读(267) 评论(0) 推荐(0)
摘要:网络七层模型 下面是协议层从底层至顶层的一个模型图: 1.1计算机的发展 有人说:“20世纪最伟大的发明就是计算机”,自漏生伊始,计算机经历了一系列发展,从大亚通用计算机、超级计算机、小型机、个人电脑,工作站以及现如今笔记本、平饭、僧能手机等,计算机已经彻底融入了我们的生活 1.2协议的必要性 简单 阅读全文
posted @ 2020-08-30 23:06 Whatever_It_Takes 阅读(176) 评论(0) 推荐(0)
摘要:计算机网络基础 http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议。有状态的话,会占用服务器的资源 一、DNS域名解析 我们在浏览器输入网址,其实就是要向服务器请求我们想要的页面内容,所有浏览器首先要确认的是域名所对应的服务器在哪里。将域名解析成对应的服务器ip地址这项工作 阅读全文
posted @ 2020-08-30 23:04 Whatever_It_Takes 阅读(298) 评论(0) 推荐(0)
摘要:fiddler抓App包 1、保证手机与电脑处在同一个局域网中 2、修改fiddler配置: 2、windows dos输入ipconfig查看ip: 3、手机修改代理方式(改为手动)、ip和端口(端口跟fiddler上设置的一致): 4、用手机随便访问一个网页,抓包: 阅读全文
posted @ 2020-08-30 23:02 Whatever_It_Takes 阅读(163) 评论(0) 推荐(0)
摘要:fiddler抓包篡改数据 Before Request 案例需求:在招生系统新建学校,发送请求之前,进行篡改请求的数据,修改要新建的学校名称。 1、打开jmeter来新建学校,或者打开浏览器新建学校也行: 2、设置fiddler:Rulers –Automatic Breakpoints—Befo 阅读全文
posted @ 2020-08-30 23:00 Whatever_It_Takes 阅读(624) 评论(0) 推荐(0)
摘要:#Jmeter跨线程组调用 待写。。。 阅读全文
posted @ 2020-08-30 22:59 Whatever_It_Takes 阅读(153) 评论(0) 推荐(0)
摘要:jmeter用户自定义变量 方式1:Testplan中添加 方式2:User Defined Variable中添加 方式3:User Parameters中添加 在User Parameters里面添加变量,添加用户。 这样一来,就可以实现一个变量,不同用户对应不同的值。 设置好User Para 阅读全文
posted @ 2020-08-30 22:58 Whatever_It_Takes 阅读(1634) 评论(0) 推荐(0)
摘要:jmeter连接mysql jmeter连接mysql的步骤: 创建testplan,创建线程组 testplan需要设置导入mysql驱动包(mysql-connector-java-xxx.jar包) 创建JDBC Connection Configuration 创建JDBC Request 阅读全文
posted @ 2020-08-30 22:56 Whatever_It_Takes 阅读(300) 评论(0) 推荐(0)
摘要:JMeter上传下载 1、下载 下载api:http://192.168.239.130/recruit.students/studentManagement/loadTemplet,该api是自己部署的招生系统下载学生模板的api,所以,要想下载,先要登录招生系统。 本次下载需要使用到BeanSh 阅读全文
posted @ 2020-08-29 22:02 Whatever_It_Takes 阅读(171) 评论(0) 推荐(0)
摘要:# 线程的基本概念 首先理解些基本概念:程序--》进程--》线程 程序(program):是指为完成特定任务、用某种编程语言编写的一组指令的集合。即指一段静态的代码,静态对象。 进程(process):是程序的一次执行过程,或者正在运行的一个程序。动态过程:有它自身的产生、存在和消亡的过程。 比如 阅读全文
posted @ 2020-08-29 10:06 Whatever_It_Takes 阅读(274) 评论(0) 推荐(0)
摘要:JAVA比较器 java的比较器主要分为两种,第一种是实现Comparable接口的内部比较器,第二种是实现Comparator接口的外部比较器。 Comparabel接口的部分源码如下: public interface Comparable<T> { public int compareTo(T 阅读全文
posted @ 2020-08-29 10:03 Whatever_It_Takes 阅读(636) 评论(0) 推荐(0)
摘要:java正则表达式 正则表达式 规则 可以匹配 A 指定字符 A \u548c 指定Unicode字符 和 . 任意字符 a,b,&,0 \d 数字0~9 0~9 \w 大小写字母,数字和下划线 az,AZ,0~9,_ \s 空格、Tab键 空格,Tab \D 非数字 a,A,&,_,…… \W 非 阅读全文
posted @ 2020-08-29 09:41 Whatever_It_Takes 阅读(133) 评论(0) 推荐(0)
摘要:JAVA反射机制 反射是什么? 反射就是reflection,Java的反射是指程序在运行期可以拿到一个对象的所有信息。 正常情况下,如果我们要调用一个对象的方法,或者访问一个对象的字段,通常会传入对象实例: // Main.java import com.itranswarp.learnjava. 阅读全文
posted @ 2020-08-29 09:38 Whatever_It_Takes 阅读(263) 评论(0) 推荐(0)
摘要:IO流+File类 File类 讲IO流之前先来讲以下File类。Java的标准库Java.io提供了File类来操作文件和目录。操作可以有:新建、删除、重命名等,但是不能访问文件本身的内容,如果想要访问,需要使用IO流。 新建File对象: package day01; import java.i 阅读全文
posted @ 2020-08-29 09:37 Whatever_It_Takes 阅读(236) 评论(0) 推荐(0)
摘要:枚举类enum 枚举类通过enum关键字声明,枚举类跟普通类没多大的区别。 枚举类的特点: 定义的enum类型总是继承自java.lang.Enum,且无法被继承,因为默认被final修饰 public enum color{} //相当于public final class color exten 阅读全文
posted @ 2020-08-29 09:36 Whatever_It_Takes 阅读(1126) 评论(0) 推荐(1)
摘要:集合 Java集合类存放于Java.util包中,是一个用来存放对象的容器。 集合只能用来存放对象。如果存放一个int整型数据进入集合中,会自动将int转换成Integer包装类。 集合存放的是多个对象的引用,对象本身存放在堆内存中。 集合可以存放不同类型,不同数量的数据类型。jdk5之后,Java 阅读全文
posted @ 2020-08-29 09:32 Whatever_It_Takes 阅读(209) 评论(0) 推荐(0)
摘要:异常处理 Java异常介绍 Java在程序执行过程中的不正常情况称为异常。捕获错误最理想时间是编译时候,但是有些错误在运行时才会报错。 Java程序运行过程中的异常主要分为两大类: Error:JVM系统内部错误、资源耗尽等情况。(程序员只能处理Exception,对Error无能为力。) Exce 阅读全文
posted @ 2020-08-29 09:30 Whatever_It_Takes 阅读(273) 评论(0) 推荐(0)
摘要:classpath和jar包 classpath(很少设置,一般默认) classpath是JVM用到的一个环境变量,它用来指示JVM如何搜索class。所以,classpath就是一组目录的集合,它设置的搜索路径与操作系统相关。 在windows系统中,可能长这样,分隔符为";" : C:\wor 阅读全文
posted @ 2020-08-29 09:27 Whatever_It_Takes 阅读(1009) 评论(0) 推荐(0)
摘要:内部类 一个定义在另一个类里面的类称为内部类。内部类可以分为四种形式:成员内部类, 成员内部类 内部调用外部的属性和方法 成员内部类可以无条件访问外部类的所有成员属性和方法。 其他类(例子中的RunC类)访问一个内部类的形式有三种: Outter.Inner outin=new Outter().n 阅读全文
posted @ 2020-08-29 09:15 Whatever_It_Takes 阅读(195) 评论(0) 推荐(0)
摘要:接口 接口(interface)是一种特殊的类,是抽象方法和常量值的定义的集合,没有变量和方法的实现。 接口中的所有成员变量都默认是public static final修饰的,所有方法都默认是public abstract修饰的,跟抽象类一样,接口没有构造器。 package day01; pub 阅读全文
posted @ 2020-08-29 09:11 Whatever_It_Takes 阅读(161) 评论(0) 推荐(0)
摘要:抽象类 当父类的方法实现没有意义时,通常用abstract将方法修饰为抽象方法,如Animal父类的run()方法,把该方法体写出来是没有意义的(动物的跑的方式不能确定)。因为抽象方法的存在,也要将类用abstract修饰,这样的类称为抽象类。 含有抽象方法的类必须被声明为抽象类 public cl 阅读全文
posted @ 2020-08-29 09:04 Whatever_It_Takes 阅读(383) 评论(0) 推荐(0)
摘要:多态性(面向对象特征三) 多态性在Java中有三种体现: 方法的重载overload 方法的重写override 对象的多态性——主要应用在抽象类和接口上 对象的多态性:Java引用变量有两个类型,编译时类型,运行时类型。编译时类型有声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。 阅读全文
posted @ 2020-08-29 09:00 Whatever_It_Takes 阅读(157) 评论(0) 推荐(0)
摘要:java转型问题 基本数据类型的casting: 自动类型转换:小的数据类型可以自动转换为大的数据类型,如: long a=20; double b=12.0f; 强制类型转换:可以把大的数据类型转换成小的数据类型,如: int c=(int)1200L; 对JAVA对象的类型转换(造型) 需要记住 阅读全文
posted @ 2020-08-29 08:59 Whatever_It_Takes 阅读(156) 评论(0) 推荐(0)
摘要:继承(面向对象特征二) Java使用extends关键字来实现继承 package test; public class Person { private int age; private String name; public void fun1(){ System.out.println(thi 阅读全文
posted @ 2020-08-29 08:58 Whatever_It_Takes 阅读(222) 评论(0) 推荐(0)
摘要:构造方法 (构造器constructor) 功能:初始化实例 1、使用方法 构造方法的名称就是类名,且修饰符跟类一致 构造方法的参数没有限制,在方法内部,可以编写任意语句 和普通方法相比,构造方法没有返回值,也没有void关键字 调用构造方法,必须使用new操作符 public class Hell 阅读全文
posted @ 2020-08-29 08:44 Whatever_It_Takes 阅读(198) 评论(0) 推荐(0)
摘要:方法重载 一系列方法,功能类似,但是参数不同,这成为方法的重载(overload) 比如下列的String类提供了多个重载方法valueOf() package test; public class TestOne{ public static void main(String[] args) { 阅读全文
posted @ 2020-08-29 08:42 Whatever_It_Takes 阅读(141) 评论(0) 推荐(0)
摘要:封装和隐藏(面向对象特征一) 利用getter、setter、private进行封装。将数据声明为私有的(private),再提供公共的public方法getter和setter实现对该属性的操作 案例原始代码 class TestM { public int age;//TestM类的age属性被 阅读全文
posted @ 2020-08-29 08:40 Whatever_It_Takes 阅读(122) 评论(0) 推荐(0)
摘要:Java修饰符 Java修饰符分为两大类: 访问修饰符:default、private、public、protected 非访问修饰符:static、final、abstract、synchronized和volatile 访问修饰符 public(修饰类、变量、方法、接口) default(修饰类 阅读全文
posted @ 2020-08-29 07:10 Whatever_It_Takes 阅读(264) 评论(0) 推荐(0)
摘要:this关键字 this代表当前类的引用对象(代表当前类的一个对象) 案例: 源文件Demo.java:(与下面文件在同一个包中) public class Demo { private int age=23; public void SetAge(int age) { this.age=age; 阅读全文
posted @ 2020-08-29 07:06 Whatever_It_Takes 阅读(160) 评论(0) 推荐(0)
摘要:Java方法 Java 方法简介: 在前面几个章节中我们经常使用到 System.out.println(),那么它是什么呢? println() 是一个方法。 System 是系统类。 out 是标准输出对象。 这句话的用法是调用系统类 System 中的标准输出对象 out 中的方法 print 阅读全文
posted @ 2020-08-29 07:03 Whatever_It_Takes 阅读(139) 评论(0) 推荐(0)
摘要:Java源文件声明规则 1、一个源文件中只能有一个public类 2、一个源文件可以有多个非public类 3、源文件的名称应该和public类的类名保持一致。例如:源文件中public类的类名是Hello,那么源文件应该命名为Hello.java。 4、如果一个类定义在某个包中,那么package 阅读全文
posted @ 2020-08-29 06:57 Whatever_It_Takes 阅读(588) 评论(0) 推荐(0)
摘要:Java类和对象 类和对象简介 1、类是对象的一个模板,它描述一类对象的行为和状态。 2、对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态(属性)有:颜色、名字、品种;行为(方法)有:摇尾巴、叫、吃等。 创建类和对象及使用方法 public class Hel 阅读全文
posted @ 2020-08-28 20:32 Whatever_It_Takes 阅读(170) 评论(0) 推荐(0)
摘要:Java控制语句 Java 条件语句 if类型 语法格式如下: if( x < 20 ){ System.out.print("这是 if 语句"); } if-else类型 if最多有一个else语句 语法格式如下: if( x < 20 ){ System.out.print("这是 if 语句 阅读全文
posted @ 2020-08-28 00:21 Whatever_It_Takes 阅读(141) 评论(0) 推荐(0)
摘要:Java数组 数组是Java重要数据结构之一,和类一样,数组也是引用数据类型,数组是用来存储固定大小的同类型元素。 声明和创建数组 声明数组: dataType[] arrayRefVar; //如:double[] myList; 创建数组: arrayRefVar = new dataType[ 阅读全文
posted @ 2020-08-28 00:18 Whatever_It_Takes 阅读(116) 评论(0) 推荐(0)
摘要:Java String类 String 类是不可改变的,所以你一旦创建了 String 对象,那它的值就无法改变了 如果需要对字符串做很多修改,那么应该选择使用 StringBuffer & StringBuilder 类。 String字符串的操作 创建字符串 通过双引号“”创建。 String 阅读全文
posted @ 2020-08-28 00:10 Whatever_It_Takes 阅读(143) 评论(0) 推荐(0)
摘要:Java入门知识 Java标识符 自己定义的东西的名字就是标识符(类名,变量名,方法名,包名) 命名规则 1、标识符对大小写敏感 2、关键字不能做标识符 3、可由字母、数字、下划线_ 美元符$ 4、不能以数字开头 命名规范(驼峰命名,见名只意) 包名: 全部小写,以域名开头,如:com.sikied 阅读全文
posted @ 2020-08-28 00:05 Whatever_It_Takes 阅读(295) 评论(0) 推荐(0)
摘要:安装JDK 1、安装JDK(直接搜索JDKdownload去oracle官网下载jdk.exe) **下载地址:**http://www.oracle.com/technetwork/java/javase/downloads/index.html 我的Oracle账户: 974643517@qq. 阅读全文
posted @ 2020-08-28 00:03 Whatever_It_Takes 阅读(105) 评论(0) 推荐(0)
摘要:Java简介 Java的诞生 SUN公司James Gosling 为手持设备开发的嵌入式编程语言 原名Oak,1995年改名为Java正式推出 Java的版本 Java SE:Standard Edition 标准版 Java EE:Enterprise Edition 企业版 Java ME: 阅读全文
posted @ 2020-08-27 23:49 Whatever_It_Takes 阅读(278) 评论(0) 推荐(0)
摘要:常用的dos命令 目录操作 d:切换盘符 dir 列出来当前目录的所有文件 md创建目录 rd删除空目录 cd打开目录 tab自动补全 . 一个点为当前目录..两个点为上一级目录 cd \或者cd\退回到当前盘符的根目录(与linux的斜杆方向不同) 文件操作 del a.txt del *.txt 阅读全文
posted @ 2020-08-27 23:45 Whatever_It_Takes 阅读(106) 评论(0) 推荐(0)
摘要:软件结构 C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。 B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。 两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的 阅读全文
posted @ 2020-08-27 23:43 Whatever_It_Takes 阅读(171) 评论(0) 推荐(0)
摘要:TCP通信协议 1️⃣TCP通信原理: TCP通信协议是一种可靠的网络协议,它在通信的两端各建立一个Socket对象。 通信之前要保证连接已经建立,否则报错 通过Socket产生IO流来进行网络通信 2️⃣TCP发送数据的步骤: 创建客户端的Socket对象与指定服务端连接 》Socket(Stri 阅读全文
posted @ 2020-08-27 23:41 Whatever_It_Takes 阅读(194) 评论(0) 推荐(0)
摘要:UDP通信协议 1️⃣UDP通信程序 观看下图:喜羊羊要怎么把东西给到村长? 首先要找到码头,然后把所有东西装进包裹中,装进包裹后,包裹上面贴着村长的地址,然后发送包裹 所以,发送礼物**(UDP发送数据)**的步骤大致如下: 找码头 》创建发送端的DatagramSocket对象 打包礼物 》创建 阅读全文
posted @ 2020-08-27 23:39 Whatever_It_Takes 阅读(248) 评论(0) 推荐(0)
摘要:# 网络编程三要素 网络编程是什么? 在网络通信协议下,不同计算机上运行的程序,可以进行数据传输。 思考一个问题? `A`电脑中的飞秋,发送消息给B电脑中的飞秋。那么需要知道哪些条件才能发送? 举个例子:你想找一个银行柜台的女生并取钱,要做什么? 第一步:你先找到这家银行,也就是银行的地址 第二步 阅读全文
posted @ 2020-08-27 23:38 Whatever_It_Takes 阅读(335) 评论(0) 推荐(0)
摘要:DockerFile解析 1️⃣是什么? Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本。 DockerFile构建的三步骤: 1、编写dockerfile文件 2、docker build ... 4、docker run DockerFile文件一般都长 阅读全文
posted @ 2020-08-27 23:35 Whatever_It_Takes 阅读(222) 评论(0) 推荐(0)
摘要:Docker数据卷 1️⃣是什么? 先来看看Docker的理念: 将运用与运行的环境打包形成容器运行 ,运行可以伴随着容器,但是我们对数据的要求希望是持久化的 容器之间希望有可能共享数据 Docker容器产生的数据,如果不通过docker commit生成新的镜像,使得数据做为镜像的一部分保存下来, 阅读全文
posted @ 2020-08-27 23:31 Whatever_It_Takes 阅读(175) 评论(0) 推荐(0)
摘要:Docker镜像 1️⃣docker镜像是什么? 镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。 联合文件系统 UnionFS(联合文件系统):Union文件系统(UnionFS)是一种 阅读全文
posted @ 2020-08-27 23:24 Whatever_It_Takes 阅读(254) 评论(0) 推荐(0)
摘要:Docker常用命令 1️⃣帮助命令 docker version docker info docker help 2️⃣镜像命令 1、列出本地主机上的镜像 docker images -a:列出本地所有的镜像(包含中间映像层) -q:只显示镜像id --digests:显示镜像的摘要信息 --no 阅读全文
posted @ 2020-08-27 23:22 Whatever_It_Takes 阅读(201) 评论(0) 推荐(0)
摘要:1️⃣前提说明 CentOS Docker 安装 Docker支持以下的CentOS版本: CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本 前提条件 目前,CentOS 仅发行版本中的内核支持 Docker。 Docker 运行在 CentOS 7 上,要求 阅读全文
posted @ 2020-08-27 23:21 Whatever_It_Takes 阅读(259) 评论(0) 推荐(0)
摘要:# Docker简介 1️⃣docker是什么 🥈为什么会有docker的出现? 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验 D 阅读全文
posted @ 2020-08-27 23:19 Whatever_It_Takes 阅读(178) 评论(0) 推荐(0)
摘要:Jmeter CSV随机参数化 本案例以登录xiaoqiang系统,随机购买商品为例进行讲解: 本案例的jmx文件下载链接:https://github.com/jimmy688/jmeter_jmx_files 复制生成的随机函数到商品id处,如下: 阅读全文
posted @ 2020-08-27 20:31 Whatever_It_Takes 阅读(937) 评论(0) 推荐(0)
摘要:Jmeter 关联案例(正则表达式提取器+Json提取器) 本次案例使用到正则表达式提取器,利用招生系统http://192.168.239.130:8080/recruit.students/login/view,实现新建学校和立马禁用学校的关联,也就是新建学校和禁用学校这两个步骤处在同一个线程内 阅读全文
posted @ 2020-08-27 20:29 Whatever_It_Takes 阅读(666) 评论(0) 推荐(0)
摘要:Jmeter 案例:不同用户登录,买不同的商品 需求: 对登录的用户进行参数化,设置一个线程,多次循环(6次),每循环一次都是不同的用户登录。 关键点: 1、对账号和密码进行CSV参数化 2、对添加到购物车一步的商品id进行CSV参数化: 3、勾选反复清楚cookie,因为cookie能保持用户的登 阅读全文
posted @ 2020-08-26 23:59 Whatever_It_Takes 阅读(551) 评论(0) 推荐(0)
摘要:Jmeter CSV参数化案例 下面以注册xiaoqiangshop账户为例,进行一次CSV参数化的演示: CSV参数化学习链接:https://www.cnblogs.com/wwho/p/7292006.html 6.1新建CSV Data Set Config 6.2填写配置信息 6.3创建c 阅读全文
posted @ 2020-08-26 23:57 Whatever_It_Takes 阅读(378) 评论(0) 推荐(0)
摘要:JMeter使用案例2(Json response+Header manager) 本案例的使用网址:http://192.168.239.130:8080/recruit.students/login/view (招生部署系统),账号密码: admin test123 先整体看一下最终的效果: 这 阅读全文
posted @ 2020-08-26 23:55 Whatever_It_Takes 阅读(416) 评论(0) 推荐(1)
摘要:JMeter常用目录介绍 启动JMeter时,我们会发现一些提示信息: 这几句话的意思是:不要使用GUI模式来进行压力测试(负载测试),此模式仅适用于测试创建和测试调试,对于压力测试,请使用CLI命令行模式(Non GUI) 。 既然有可能要使用CLI命令行模式,那我们就来了解一些JMeter常用的 阅读全文
posted @ 2020-08-26 23:51 Whatever_It_Takes 阅读(647) 评论(0) 推荐(0)
摘要:fiddler抓包+Jmeter入门 以linux系统(xiaoqiang)的网站为例,学习抓包和Jmeter的使用。账号密码:xiaoqiang1和123123 前备知识: Jmeter基本操作: 1、新建testplan测试计划,新建线程组Thread Group 新建http request( 阅读全文
posted @ 2020-08-26 23:50 Whatever_It_Takes 阅读(283) 评论(0) 推荐(0)
摘要:Jmeter初步学习 1. Jmeter简介 1.1什么是Jmeter Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、C 阅读全文
posted @ 2020-08-26 23:48 Whatever_It_Takes 阅读(250) 评论(0) 推荐(0)
摘要:Fiddler介绍 % ## Fiddler工作原理 % ​ 终端设备(web、app)发出请求,fiddler作为代理,传给服务器;服务器返回数据,fiddler拦截后,再传给终端设备。 % % # Fiddler安装及设置 % 双击Fiddler安装包,即可安装。安装后,如果需要抓https协议 阅读全文
posted @ 2020-08-26 23:46 Whatever_It_Takes 阅读(127) 评论(0) 推荐(0)
摘要:推荐学习网址链接: https://www.cnblogs.com/poloyy/category/1746599.html https://www.cnblogs.com/poloyy/tag/ 认识接口测试 我们一起来认识一下接口测试,首先从我们熟悉的普通基于图形界面做的手工测试开始。 手工测试 阅读全文
posted @ 2020-08-26 23:41 Whatever_It_Takes 阅读(187) 评论(0) 推荐(0)
摘要:http协议 http是什么 HTTP(超文本传输协议)是一个基于请求与响应模式的、无状态的(所以浏览器要依靠cookie、token等保持登录状态)、应用层的协议。 HTTP协议是一个基于TCP协议之上的请求-响应协议。 http协议的url解析 http://apis.juhe.cn/mobil 阅读全文
posted @ 2020-08-26 23:39 Whatever_It_Takes 阅读(165) 评论(0) 推荐(0)
摘要:hdfs小文件解决方案总结 小文件的问题弊端 HDFS上每个文件都要在NameNode上建立一个索引,这个索引的大小约为150byte,这样当小文件比较多的时候,就会产生很多的索引文件,一方面会大量占用NameNode的内存空间,另一方面就是索引文件过大使得索引速度变慢。 小文件的解决方案 小文件的 阅读全文
posted @ 2020-08-26 23:34 Whatever_It_Takes 阅读(365) 评论(0) 推荐(0)
摘要:hadoop的企业级调优 HDFS参数调优hdfs-site.xml (1) 设置参数dfs.namenode.handler.count dfs.namenode.handler.count=20 * log2(Cluster Size) //该参数用来调整namenode处理客户端的线程数,根据 阅读全文
posted @ 2020-08-26 23:32 Whatever_It_Takes 阅读(295) 评论(0) 推荐(0)
摘要:yarn的任务调度器 资源调度器是YARN最核心的组件之一,是一个插拔式的服务组件,负责整个集群资源的管理和分配。YARN提供了三种可用的资源调度器:FIFO、Capacity Scheduler、Fair Scheduler。 先进先出调度器(FIFO) FIFO按照先到先得的原则,进行分配资源。 阅读全文
posted @ 2020-08-26 23:30 Whatever_It_Takes 阅读(2025) 评论(0) 推荐(1)
摘要:yarn工作机制 大致过程 MR程序提交到客户端所在的节点。 YarnRunner向ResourceManager申请一个Application。 RM将该应用程序的资源路径返回给YarnRunner。 该程序将运行所需资源提交到HDFS上。 程序资源提交完毕后,申请运行mrAppMaster。 R 阅读全文
posted @ 2020-08-26 23:27 Whatever_It_Takes 阅读(330) 评论(0) 推荐(0)
摘要:yarn介绍 yarn(Yet Another Resource Negotiator)是一个新的资源管理器,hadoop2.0的时候开始引入yarn,引入yarn是为了分离hadoop的资源管理和计算组件。yarn是一个通用的管理框架,在yarn上不仅仅可以运行Mapreduce,还可以支持其它的 阅读全文
posted @ 2020-08-26 23:25 Whatever_It_Takes 阅读(295) 评论(0) 推荐(0)
摘要:Mapreduce当中的join操作 案例需求 订单数据表t_order: id date pid amount 1001 20150710 P0001 2 1002 20150710 P0002 3 1002 20150710 P0003 3 1003 20150812 P0003 1 商品信息表 阅读全文
posted @ 2020-08-26 23:22 Whatever_It_Takes 阅读(345) 评论(0) 推荐(0)
摘要:MapReduce当中的计数器 计数器 计数器是收集作业统计信息的有效手段之一,用于质量控制或应用级统计。计数器还可辅助诊断系统故障。如果需要将日志信息传输到map 或reduce 任务, 更好的方法通常是看能否用一个计数器值来记录某一特定事件的发生。对于大型分布式作业而言,使用计数器更为方便。除了 阅读全文
posted @ 2020-08-26 23:20 Whatever_It_Takes 阅读(268) 评论(0) 推荐(0)
摘要:shuffle当中的数据压缩 为什么要压缩? 在shuffle阶段,可以看到数据通过大量的拷贝,从map阶段输出的数据,都要通过网络拷贝,发送到reduce阶段,这一过程中,涉及到大量的网络IO,如果数据能够进行压缩,那么数据的发送量就会少得多,而且也不会占用那么多本地磁盘空间。 压缩步骤大致处于m 阅读全文
posted @ 2020-08-26 23:13 Whatever_It_Takes 阅读(280) 评论(0) 推荐(0)
摘要:MapTask工作机制(重点) Read阶段--》Map阶段--》Collect阶段--》spill阶段--》Combine阶段 Read阶段 有个文件hello.txt大小为200M,客户端首先获取待处理文件信息,然后根据参数配置,形成一个任务分配的规划。 再调用submit()方法,把要执行的j 阅读全文
posted @ 2020-08-26 23:10 Whatever_It_Takes 阅读(657) 评论(0) 推荐(0)
摘要:自定义OutputFormat类 思考一个问题:我们前面编程的时候可以发现,一个reducetask默认会把结果输出到一个文件。那如果我们想要让一个reducetask的结果分类输出到不同文件中,要怎么实现,我们可以通过自定义outputformat类来解决。 案例需求 现在有一些订单的评论数据,需 阅读全文
posted @ 2020-08-26 23:06 Whatever_It_Takes 阅读(240) 评论(0) 推荐(0)
摘要:Mapreduce--分区(shuffle) 分区partition 我们来回顾一下mapreduce编程指导思想中的第三个步骤(shuffle阶段的分区): 第三步:对输出的key,value对进行分区:相同key的数据发送到同一个reduce task里面去,相同key合并,value形成一个集 阅读全文
posted @ 2020-08-26 00:00 Whatever_It_Takes 阅读(2722) 评论(0) 推荐(1)
摘要:自定义Inputformat类 mapreduce框架当中已经给我们提供了很多的文件输入类,用于处理文件数据的输入,如果以上提供的文件数据类还不够用的话,我们也可以通过自定义InputFormat来实现文件数据的输入 案例需求 现在有大量的小文件,我们通过自定义InputFormat实现将小文件的内 阅读全文
posted @ 2020-08-25 23:58 Whatever_It_Takes 阅读(318) 评论(0) 推荐(0)
摘要:Inputformat类 InputFormat是mapreduce当中用于处理数据输入的一个组件,是最顶级的一个抽象父类,主要用于解决各个地方的数据源的数据输入问题。其中InputFormat的UML类图可以通过idea进行查看(只有商业版本才有这个功能),如下图。 查看类图的方式:进行要查看的类 阅读全文
posted @ 2020-08-25 23:57 Whatever_It_Takes 阅读(272) 评论(0) 推荐(0)
摘要:Mapreduce编程实现案例2(上下行) Writable是Hadoop的序列化格式,hadoop定义了这样一个Writable接口。 一个类要支持可序列化只需实现这个接口即可。 另外Writable有一个子接口是WritableComparable,writableComparable是既可实现 阅读全文
posted @ 2020-08-25 23:55 Whatever_It_Takes 阅读(401) 评论(0) 推荐(0)
摘要:Mapreduce的运行模式 本地模式 我们的上面的案例1的运行模式就是本地模式,mapreduce程序是被提交给LocalJobRunner在本地以单进程的形式运行,输入和输出路径既可以在本地文件系统,也可以在hdfs上。 本地模式非常便于进行业务逻辑的debug,只要在eclipse或IDEA中 阅读全文
posted @ 2020-08-25 23:53 Whatever_It_Takes 阅读(457) 评论(0) 推荐(0)
摘要:Mapreduce编程实现案例 (wordcount) 案例需求 现有数据格式如下,每一行数据之间都是使用逗号进行分割,求取每个单词出现的次数 hello,hello world,world hadoop,hadoop hello,world hello,flume hadoop,hive hive 阅读全文
posted @ 2020-08-25 23:52 Whatever_It_Takes 阅读(348) 评论(0) 推荐(0)
摘要:mapreduce核心思想 MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。 MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。 MapReduce的核心思想是 阅读全文
posted @ 2020-08-25 23:50 Whatever_It_Takes 阅读(939) 评论(0) 推荐(0)
摘要:Hadoop常用可序列化类型 hadoop没有沿用java当中基本的数据类型,而是自己进行封装了一套数据类型,其自己封装的类型与java的类型对应如下 表4-1 常用的数据类型对应的Hadoop数据序列化类型 Java类型 Hadoop Writable类型 Boolean BooleanWrita 阅读全文
posted @ 2020-08-25 23:49 Whatever_It_Takes 阅读(797) 评论(0) 推荐(0)
摘要:多个集群之间的数据拷贝 在我们实际工作当中,极有可能会遇到将测试集群的数据拷贝到生产环境集群,或者将生产环境集群的数据拷贝到测试集群,那么就需要我们在多个集群之间进行数据的远程拷贝,hadoop自带也有命令可以帮我们实现这个功能 1、本地文件拷贝scp cd /kkb/soft scp -r jdk 阅读全文
posted @ 2020-08-25 23:48 Whatever_It_Takes 阅读(572) 评论(0) 推荐(0)
摘要:小文件治理 思考一个问题:无论存储大文件还是小文件,都会产生元数据,如果有很多小文件,是否划算? 不划算,每个文件、目录、块都大概有150字节的元数据,文件数量的限制也由namenode内存大小决定,如果小文件过多则会造成namenode的压力过大,且HDFS能存储的数据总量也会变小。 小文件治理的 阅读全文
posted @ 2020-08-25 23:47 Whatever_It_Takes 阅读(454) 评论(0) 推荐(0)
摘要:datanode详解 datanode工作机制 1)一个数据块在datanode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据。元数据包括数据块的长度,块数据的校验和,以及时间戳。 2)DataNode启动后向namenode注册,通过后,周期性(1小时)的向namenode上 阅读全文
posted @ 2020-08-25 23:46 Whatever_It_Takes 阅读(871) 评论(0) 推荐(1)
摘要:🌈NameNode和SecondaryNameNode的工作机制 如何快速检索元数据? NameNode主要负责集群当中的元数据信息管理,而且元数据信息需要经常随机访问,因为元数据信息必须高效的检索,那么如何保证namenode快速检索呢??元数据信息保存在哪里能够快速检索呢??如何保证元数据的持 阅读全文
posted @ 2020-08-25 23:45 Whatever_It_Takes 阅读(910) 评论(0) 推荐(1)
摘要:🌈hdfs写入流程(面试重点) 一个文件上传到hdfs文件系统的简略过程 1)客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在。 2)NameNode返回是否可以上传。 3)客户端请求第一个 Block 阅读全文
posted @ 2020-08-25 23:44 Whatever_It_Takes 阅读(1667) 评论(0) 推荐(1)
摘要:hdfs的JavaAPI开发 windows安装hadoop 解压CDH版本的在windows系统上运行的Hadoop安装包,解压路径不能有中文或者空格 在windows当中配置hadoop环境变量 将hadoop.dll文件拷贝到C:\Windows\System32 创建Maven工程并导入ja 阅读全文
posted @ 2020-08-25 23:43 Whatever_It_Takes 阅读(401) 评论(0) 推荐(0)
摘要:hdfs的shell命令操作 hdfs的shell命令操作的主要类型: 1、对hdfs的操作命令 2、获得一些配置相关的命令 3、管理员相关的命令 4、文件系统检查相关的命令 hdfs命令(对hdfs的基础操作) HDFS命令有两种风格,hadoop fs开头的和hdfs dfs开头的,两种命令均可 阅读全文
posted @ 2020-08-25 23:42 Whatever_It_Takes 阅读(655) 评论(0) 推荐(0)
摘要:hdfs功能详解 `HDFS(hadoop distributed filesystem)由四部分组成,HDFS Client、NameNode、DataNode和Secondary NameNode。HDFS是一个主/从(Mater/Slave)体系结构,HDFS集群拥有一个NameNode和一些 阅读全文
posted @ 2020-08-25 23:41 Whatever_It_Takes 阅读(1465) 评论(0) 推荐(0)
摘要:Hadoop发展起源 Hadoop最早起源于Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题——如何解决数十亿网页的存储和索引问题。 2003年、2004年谷歌发表的两篇论文为该问题提供了可行的解决方案。 阅读全文
posted @ 2020-08-25 23:40 Whatever_It_Takes 阅读(538) 评论(0) 推荐(0)
摘要:hadoop环境搭建 安装虚拟机 下载镜像文件 下载centOS7镜像文件 新建文件夹 新建用于放置虚拟机上不同系统的文件,方便管理。 新建node01节点 在windows某个盘上创建一个文件夹,用于放置node01节点虚拟机文件。命名可以为:大数据开发环境 开启node01节点 分区选择自动分区 阅读全文
posted @ 2020-08-25 23:39 Whatever_It_Takes 阅读(458) 评论(0) 推荐(0)
摘要:Tomcat基础 这里的Tomcat基础来自另一个教程:https://www.bilibili.com/video/BV1Y7411K7zz?p=103 JavaWeb概念 a)什么是 JavaWeb JavaWeb 是指,所有通过 Java 语言编写可以通过浏览器访问的程序的总称,叫 JavaW 阅读全文
posted @ 2020-08-25 07:22 Whatever_It_Takes 阅读(694) 评论(0) 推荐(0)
摘要:Git Git介绍 Git是一个开源的分布式版本控制系统,分布式相比集中式的最大区别是Git没有“中央服务器”,每位开发者都可以通过克隆远程库,在本地机器上存储一个完整的Git仓库,还可以把代码的修改提交到本地库 目的:借助github托管项目代码。 基本概念: 仓库(repository):仓库用 阅读全文
posted @ 2020-08-25 06:31 Whatever_It_Takes 阅读(179) 评论(0) 推荐(0)
摘要:SVN SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。 特点:一个服务器,多个客户端的集群式管理方法 SVN服务器端安装 yum install subversion 阅读全文
posted @ 2020-08-25 06:29 Whatever_It_Takes 阅读(71) 评论(0) 推荐(0)
摘要:版本控制 Ø 版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。 Ø 任职角色:配置管理员 版本控制介绍 Ø 协同修改 多人并行不悖的修改服务器端的同一个文件。 Ø 数据备份 不仅保存目录和文件的当前状态, 还能够保存每一个提交过的历史状态。 阅读全文
posted @ 2020-08-25 06:27 Whatever_It_Takes 阅读(143) 评论(0) 推荐(0)
摘要:Spark调优——分配更多的资源 分配更多的资源是性能优化调优的王道,就是增加和分配更多的资源,这对于性能和速度上的提升是显而易见的。 基本上,在一定范围之内,增加资源与性能的提升,是成正比的;写完了一个复杂的spark作业之后,进行性能调优的时候,首先第一步,就是要来调节最优的资源配置; 在这个基 阅读全文
posted @ 2020-08-25 06:24 Whatever_It_Takes 阅读(405) 评论(0) 推荐(0)
摘要:sparksql处理点击流日志数据案例(★★★★★) 需求描述 通过sparsql对用户访问产生点击流日志数据进行分析处理,计算出对应的指标 工具类开发 代码开发——校验日志数据进行字段解析提取的工具类AccessLogUtils import scala.util.matching.Regex / 阅读全文
posted @ 2020-08-25 06:19 Whatever_It_Takes 阅读(362) 评论(0) 推荐(0)
摘要:sparksql整合hive spark整合hive步骤 把node03的hive安装目录下的配置文件hive-site.xml拷贝到每一个spark安装目录下对应的conf文件夹中(3台机器) cd /kkb/install/hive-1.1.0-cdh5.14.2/conf cp hive-si 阅读全文
posted @ 2020-08-25 06:15 Whatever_It_Takes 阅读(188) 评论(0) 推荐(0)
摘要:sparksql中自定义函数(★★★★★) 创建文件F:/test/test_udf.txt hello Hadoop DataFrame spark 自定义UDF函数 代码开发 import org.apache.spark.sql.api.java.UDF1 import org.apache. 阅读全文
posted @ 2020-08-25 06:12 Whatever_It_Takes 阅读(217) 评论(0) 推荐(0)
摘要:sparksql 操作hivesql 添加依赖 <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-hive_2.11</artifactId> <version>2.3.3</version> </dependenc 阅读全文
posted @ 2020-08-25 06:09 Whatever_It_Takes 阅读(833) 评论(0) 推荐(0)
摘要:通过IDEA开发程序实现把RDD转换DataFrame 官网学习如何创建spark sql Scala程序 添加依赖 <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_2.11</artifactId> <v 阅读全文
posted @ 2020-08-25 06:02 Whatever_It_Takes 阅读(407) 评论(0) 推荐(0)
摘要:# shell编程快速入门 编写一个shell脚本hello.sh #/bin/bash echo 'hello world' 运行的方法: 方法1: sh hello.sh 方法2 chmod +x hello.sh ./hello.sh 说明: #!告诉系统这个脚本需要用什么解释器来执行 文件 阅读全文
posted @ 2020-08-25 05:59 Whatever_It_Takes 阅读(159) 评论(0) 推荐(0)
摘要:DataSet概述 DataSet是什么 DataSet是分布式的数据集合,Dataset提供了强类型支持,也是在RDD的每行数据加了类型约束。 强类型:所属类型必须在编译时确定。 DataSet是在Spark1.6中添加的新的接口。它集中了RDD的优点(强类型和可以用强大lambda函数)以及使用 阅读全文
posted @ 2020-08-25 05:52 Whatever_It_Takes 阅读(727) 评论(1) 推荐(0)
摘要:# linux上安装禅道 环境准备 1.一台Linux服务器, 操作系统: CentOS 6.4 32位 (装在shop环境上即可) 2.Xshell 6.0 3.Xftp 5.0 4.ZenTaoPMS.9.8.3.zbox_86.tar.gz安装包 (在共享文件夹中) 把禅道安装包上传到lin 阅读全文
posted @ 2020-08-25 05:50 Whatever_It_Takes 阅读(432) 评论(0) 推荐(0)
摘要:# linux常用命令 操作文件及目录 命令 参数 示例 说明 cd cd /home 切换目录 pwd pwd 显示当前工作目录 touch touch 1.txt 创建空文件 mkdir mkdir testdir 创建一个新目录 -p mkdir -p /dir1/dir2 创建多级目录,父 阅读全文
posted @ 2020-08-25 05:22 Whatever_It_Takes 阅读(305) 评论(0) 推荐(0)
摘要:DataFrame概述 spark core >操控RDD spark sql >操控DataFrame DataFrame发展 DataFrame前身是schemaRDD,这个schemaRDD是直接继承自RDD,它是RDD的一个实现类 在spark1.3.0之后把schemaRDD改名为Data 阅读全文
posted @ 2020-08-25 04:56 Whatever_It_Takes 阅读(1411) 评论(0) 推荐(0)
摘要:# Linux介绍 Linux起源 芬兰大学生Linus Torvalds在从1990年底到1991年的几个月中,利用Minix操作系统作为开发平台,为他自己的操作系统课程和后来的上网用途而陆续编写了若干程序。 1991.10.5 在Internet的comp.os.minix讨论区发表了一篇文章 阅读全文
posted @ 2020-08-25 04:52 Whatever_It_Takes 阅读(206) 评论(0) 推荐(0)
摘要:sparksql概述 sparksql的前世今生 Shark是专门针对于spark的构建大规模数据仓库系统的一个框架 Shark与Hive兼容、同时也依赖于Spark版本 Hivesql底层把sql解析成了mapreduce程序,Shark是把sql语句解析成了Spark任务 随着性能优化的上限,以 阅读全文
posted @ 2020-08-25 04:47 Whatever_It_Takes 阅读(735) 评论(0) 推荐(0)
摘要:基于wordcount程序剖析spark任务的提交、划分、调度流程(★★★★★) 阅读全文
posted @ 2020-08-25 04:42 Whatever_It_Takes 阅读(190) 评论(0) 推荐(0)
摘要:DAG有向无环图生成 DAG是什么 DAG(Directed Acyclic Graph) 叫做有向无环图(有方向,无闭环,代表着数据的流向),原始的RDD通过一系列的转换就形成了DAG。 下图是基于单词统计逻辑得到的DAG有向无环图 DAG划分stage(★★★★★) stage是什么 一个Job 阅读全文
posted @ 2020-08-25 04:30 Whatever_It_Takes 阅读(4414) 评论(1) 推荐(1)
摘要:RDD的缓存机制(★★★★★) 什么是rdd的缓存 spark可以把一个rdd的数据缓存起来,后续有其他的job需要用到该rdd的结果数据,可以直接从缓存中获取得到,避免了重复计算。缓存是加快后续对该数据的访问操作。 如何对rdd设置缓存 可以通过persist方法或cache方法将前面的RDD的数 阅读全文
posted @ 2020-08-24 03:25 Whatever_It_Takes 阅读(995) 评论(0) 推荐(1)
摘要:RDD的依赖关系 依赖类型 RDD根据依赖关系,可以分为父RDD和子RDD,父RDD就是被子RDD依赖的RDD。 而父RDD与子RDD的依赖关系,可以分为两种类型: 窄依赖(narrow dependency) 宽依赖(wide dependency) 窄依赖 窄依赖:指的是每一个父RDD的Part 阅读全文
posted @ 2020-08-24 03:22 Whatever_It_Takes 阅读(618) 评论(0) 推荐(0)
摘要:数据倾斜原理和现象分析 数据倾斜概述 有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多。 数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能。 数据倾斜发生时的现象 1、绝大多数task执行得都非常快,但个 阅读全文
posted @ 2020-08-24 03:20 Whatever_It_Takes 阅读(884) 评论(0) 推荐(0)
摘要:spark的shuffle原理分析 shuffle概述 Shuffle就是对数据进行重组,由于分布式计算的特性和要求,在实现细节上更加繁琐和复杂。 在MapReduce框架,Shuffle是连接Map和Reduce之间的桥梁,Map阶段通过shuffle读取数据并输出到对应的Reduce;而Redu 阅读全文
posted @ 2020-08-24 03:17 Whatever_It_Takes 阅读(965) 评论(0) 推荐(0)
摘要:spark任务中资源参数剖析 通过开发工具开发好spark程序后达成jar包最后提交到集群中运行 提交任务脚本如下 spark-submit \ --master spark://node01:7077,node02:7077 \ --class com.kaikeba.WordCountOnSpa 阅读全文
posted @ 2020-08-24 03:15 Whatever_It_Takes 阅读(328) 评论(0) 推荐(0)
摘要:collect 算子操作剖析 collect算子操作的作用: 它是一个action操作,会触发任务的运行 它会把RDD的数据进行收集之后,以数组的形式返回给Driver端 总结: 默认Driver端的内存大小为1G,由参数 spark.driver.memory 设置。 如果某个rdd的数据量超过了 阅读全文
posted @ 2020-08-24 03:13 Whatever_It_Takes 阅读(890) 评论(0) 推荐(0)
摘要:spark on yarn spark程序可以提交到yarn中去运行,此时spark任务所需要的计算资源由yarn中的老大ResourceManager去分配 官网资料地址: http://spark.apache.org/docs/2.3.3/running-on-yarn.html 环境准备 安 阅读全文
posted @ 2020-08-24 03:09 Whatever_It_Takes 阅读(257) 评论(0) 推荐(0)
摘要:spark程序的序列化问题 transformation操作为什么需要序列化 spark是分布式执行引擎,其核心抽象是弹性分布式数据集RDD,其代表了分布在不同节点的数据。Spark的计算是在executor上分布式执行的,所以用户执行RDD的map,flatMap,reduceByKey等tran 阅读全文
posted @ 2020-08-24 03:06 Whatever_It_Takes 阅读(3076) 评论(0) 推荐(0)
摘要:案例1:使用Java实现spark的wordCount 案例需求: 单词计数 第一步:创建maven工程,引入依赖 <dependencies> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.11< 阅读全文
posted @ 2020-08-24 03:00 Whatever_It_Takes 阅读(342) 评论(0) 推荐(0)
摘要:🌈RDD的算子 算子可以理解成RDD的一些方法。 RDD的算子可以分为2类: 1、transformation(转换) 根据已经存在的rdd转换生成一个新的rdd, 它是延迟加载,它不会立即执行 例如: map / flatMap / reduceByKey 等 2、action (动作) 它会真 阅读全文
posted @ 2020-08-24 02:56 Whatever_It_Takes 阅读(977) 评论(0) 推荐(0)
摘要:🌈RDD RDD是什么 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。RDD是spark core的底层核心。 Dataset:就是一个集合,存储很多数据. Distr 阅读全文
posted @ 2020-08-24 02:49 Whatever_It_Takes 阅读(1177) 评论(0) 推荐(1)
摘要:通过IDEA开发spark程序 构建maven工程 创建src/main/scala 和 src/test/scala 目录 添加pom依赖 说明: 创建maven工程后,设定maven为自己安装的maven,并在确保settings.xml里面设置了镜像地址为阿里云 如果下载不下来scala-ma 阅读全文
posted @ 2020-08-24 02:44 Whatever_It_Takes 阅读(251) 评论(0) 推荐(0)
摘要:spark-shell使用 运行spark-shell --master local[N] 读取本地文件 选项说明: local 表示程序在本地进行计算,跟spark集群目前没有任何关系 N 它是一个正整数,表示使用N个线程参与任务计算 local[N] 表示本地采用N个线程计算任务 spark-s 阅读全文
posted @ 2020-08-24 01:48 Whatever_It_Takes 阅读(420) 评论(0) 推荐(0)
摘要:初识spark程序 普通模式提交 (指定活着的master地址) 指定的必须是alive状态的Master地址,否则会执行失败。 cd /kkb/install/spark bin/spark-submit \ --class org.apache.spark.examples.SparkPi \ 阅读全文
posted @ 2020-08-24 01:46 Whatever_It_Takes 阅读(202) 评论(0) 推荐(0)
摘要:spark集群安装部署 搭建spark集群要事先搭建好zookeeper集群,spark会依赖zookeeper集群来实现Master的高可用。 第一步:下载安装包 下载安装包:spark-2.3.3-bin-hadoop2.7.tgz 下载地址: https://archive.apache.or 阅读全文
posted @ 2020-08-24 01:42 Whatever_It_Takes 阅读(930) 评论(0) 推荐(0)
摘要:spark是什么 "Apache Spark" is a unified analytics engine for large-scale data processing. spark是针对于大规模数据处理的统一分析引擎 spark是在Hadoop基础上的改进,是UC Berkeley AMP la 阅读全文
posted @ 2020-08-24 01:37 Whatever_It_Takes 阅读(1483) 评论(0) 推荐(0)
摘要:hive的综合案例实战 案例需求 统计youtube影音视频网站的常规指标,各种TopN指标: --统计视频观看数Top10 --统计视频类别热度Top10 --统计视频观看数Top20所属类别 --统计视频观看数Top50所关联视频的所属类别Rank --统计每个类别中的视频热度Top10 --统 阅读全文
posted @ 2020-08-24 00:56 Whatever_It_Takes 阅读(1990) 评论(0) 推荐(0)
摘要:hive的企业级调优 1、Fetch抓取 Fetch抓取是指,Hive中对某些情况的查询可以不必使用MapReduce计算。 例如:select * from score; 在这种情况下,Hive可以简单地读取employee对应的存储目录下的文件,然后输出查询结果到控制台 在hive-defaul 阅读全文
posted @ 2020-08-24 00:46 Whatever_It_Takes 阅读(260) 评论(0) 推荐(0)
摘要:Hive表的数据压缩 数据的压缩说明 可使用以下三种标准对压缩方式进行评价 1、压缩比:压缩比越高,压缩后文件越小,所以压缩比越高越好 2、压缩时间:越快越好 3、已经压缩的格式文件是否可以再分割:可以分割的格式允许单一文件由多个Mapper程序处理,可以更好的并行化。比如说,一个300M的压缩文件 阅读全文
posted @ 2020-08-24 00:43 Whatever_It_Takes 阅读(1471) 评论(0) 推荐(1)
摘要:hive自定义函数 1、自定义函数的基本介绍 Hive 自带了一些函数,比如:max/min等,但是数量有限,自己可以通过自定义UDF来方便的扩展。 当Hive提供的内置函数无法满足你的业务处理需要时,此时就可以考虑使用用户自定义函数(UDF:user-defined function) 根据用户自 阅读全文
posted @ 2020-08-24 00:36 Whatever_It_Takes 阅读(290) 评论(0) 推荐(0)
摘要:Hive的常用函数 系统内置函数 #1.查看系统自带的函数 show functions; #2.显示自带的函数的用法 desc function upper; #3.详细显示自带的函数的用法 desc function extended upper; 取整函数 四舍五入round函数 语法: ro 阅读全文
posted @ 2020-08-24 00:33 Whatever_It_Takes 阅读(434) 评论(0) 推荐(0)
摘要:Hive的参数传递 查看hive的命令的参数 [hadoop@node03 ~]$ hive -help usage: hive -d,--define <key=value> Variable subsitution to apply to hive commands. e.g. -d A=B o 阅读全文
posted @ 2020-08-24 00:29 Whatever_It_Takes 阅读(1375) 评论(0) 推荐(0)
摘要:Hive可视化工具dbeaver dbeaver基本介绍 dbeaver是一个图形化的界面工具,专门用于与各种数据库的集成,通过dbeaver我们可以与各种数据库进行集成 通过图形化界面的方式来操作我们的数据库与数据库表,类似于我们的sqlyog或者navicat。 下载dbeaver 我们可以直接 阅读全文
posted @ 2020-08-24 00:27 Whatever_It_Takes 阅读(1249) 评论(0) 推荐(0)
摘要:Hive查询语法 基本查询 注意 SQL 语言大小写不敏感 SQL 可以写在一行或者多行 关键字不能被缩写也不能分行 各子句一般要分行写 使用缩进提高语句的可读性 5.1.1 查询全表和特定列 全表查询 select * from stu; 选择特定列查询 select id,name from s 阅读全文
posted @ 2020-08-24 00:26 Whatever_It_Takes 阅读(1367) 评论(0) 推荐(0)
摘要:Hive修改表结构 修改表的名称 -- 修改表名称语法: alter table old_table_name rename to new_table_name; alter table stu3 rename to stu4; 增加/修改/替换列 查看表结构 desc stu4; desc for 阅读全文
posted @ 2020-08-24 00:21 Whatever_It_Takes 阅读(570) 评论(0) 推荐(0)
摘要:Hive静态分区 表的分区字段的值需要开发人员手动给定 创建分区表 use db1; create table order_partition( order_number string, order_price double, order_time string ) partitioned BY(m 阅读全文
posted @ 2020-08-24 00:20 Whatever_It_Takes 阅读(133) 评论(0) 推荐(0)
摘要:Hive数据导入 1、直接向表中插入数据(强烈不推荐使用) insert into table score3 partition(month ='201807') values ('001','002','100'); 2、通过load加载数据(必须掌握) load data [local] inp 阅读全文
posted @ 2020-08-24 00:15 Whatever_It_Takes 阅读(249) 评论(0) 推荐(0)
摘要:hive的复合类型使用说明和实战 1、参数说明 #创建表的时候可以指定每行数据的格式,如果使用的是复合数据类型,还需要指定复合数据类型中的元素分割符 ROW FORMAT DELIMITED [FIELDS TERMINATED BY char [ESCAPED BY char]] [COLLECT 阅读全文
posted @ 2020-08-24 00:12 Whatever_It_Takes 阅读(173) 评论(0) 推荐(0)
摘要:hive的分区表 分区表的理解 如果hive当中所有的数据都存入到一个文件夹下面,那么在使用MR计算程序的时候,读取一整个目录下面的所有文件来进行计算(全表扫描),就会变得特别慢,因为数据量太大了 实际工作当中一般都是计算前一天的数据,所以我们只需要将前一天的数据挑出来放到一个文件夹下面即可,专门去 阅读全文
posted @ 2020-08-24 00:10 Whatever_It_Takes 阅读(620) 评论(0) 推荐(0)
摘要:Hive的DDL操作--数据库 下列的所有操作默认使用beeline方式。 创建数据库 create database db1; # 或者 create database if not exists db1; 显示所有数据库 0: jdbc:hive2://node03:10000> show da 阅读全文
posted @ 2020-08-24 00:07 Whatever_It_Takes 阅读(274) 评论(0) 推荐(1)
摘要:Hive的数据类型 基本数据类型 类型名称 描述 举例 boolean true/false true tinyint 1字节的有符号整数 1 smallint 2字节的有符号整数 1 int 4字节的有符号整数 1 bigint 8字节的有符号整数 1 float 4字节单精度浮点数 1.0 do 阅读全文
posted @ 2020-08-24 00:04 Whatever_It_Takes 阅读(312) 评论(0) 推荐(0)
摘要:Hive客户端JDBC操作 启动hiveserver2 node03执行以下命令启动hiveserver2的服务端 cd /kkb/install/hive-1.1.0-cdh5.14.2/ nohup bin/hive --service hiveserver2 2>&1 & 引入依赖 创建mav 阅读全文
posted @ 2020-08-23 23:58 Whatever_It_Takes 阅读(257) 评论(0) 推荐(0)
摘要:Hive的交互方式 Hive的交互方式主要有三种 使用Hive之前: 先启动hadoop集群:因为hql语句会被编译成MR任务提交到集群运行;hive表数据一般存储在HDFS上 mysql服务:因为对hive操作过程中,需要访问mysql中存储元数据的库及表 Hive交互shell(过时了) 在任意 阅读全文
posted @ 2020-08-23 23:52 Whatever_It_Takes 阅读(420) 评论(0) 推荐(0)
摘要:Hive的概念 Hive是基于Hadoop的一个数据仓库工具 可以将结构化的数据文件映射为一张数据库中的表,并提供类SQL查询功能。 其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储支持,说白了hive可以理解为一个将SQL转换为MapReduce任务的工具,甚 阅读全文
posted @ 2020-08-23 23:50 Whatever_It_Takes 阅读(1099) 评论(0) 推荐(0)
摘要:数据仓库 数据仓库的基本概念 数据仓库的英文名称为Data Warehouse,可简写为DW或DWH。 数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持(Decision Support)。它出于分析性报告和决策支持的目的而创建。 数据仓库本身并不“生产”任何数据,同时自身也不需要“ 阅读全文
posted @ 2020-08-23 23:46 Whatever_It_Takes 阅读(242) 评论(0) 推荐(0)
摘要:Hive安装部署 安装前准备 安装好对应版本的hadoop集群(三节点),并启动hadoop的HDFS以及YARN服务 Node03安装了MySQL服务,并启动MySQL的服务 安装注意事项 注意hive就是一个构建数据仓库的工具,只需要在一台服务器上安装就可以了,不需要在多台服务器上安装。 此处以 阅读全文
posted @ 2020-08-23 23:27 Whatever_It_Takes 阅读(171) 评论(0) 推荐(0)
摘要:#CentOS 7安装MySQL5.7版本 ####安装mysql #####下载并安装mysql官方的yum源 若是在学完Hadoop、ZooKeeper课程后,接着要学习Hive课程时,需要先安装mysql,安装到第三个节点node03上。在CentOS 7中默认安装有MariaDB,这个是M 阅读全文
posted @ 2020-08-23 22:28 Whatever_It_Takes 阅读(170) 评论(0) 推荐(0)
摘要:# 1、查看同步教程 链接1:https://www.cnblogs.com/stulzq/p/9043632.html 链接2:https://www.cnblogs.com/stulzq/p/9217301.html 2、设置typora优先使用相对路径 3、下载安装.NET Core开发工具 阅读全文
posted @ 2020-08-23 21:52 Whatever_It_Takes 阅读(519) 评论(0) 推荐(0)
摘要:# 博客园的美化 美化博客园的学习链接:https://www.bilibili.com/video/BV1yp4y1S7vn?from=search&seid=3975980506296628770 第一步:登录博客园,进入到设置 第二步:添加CSS和JS代码 选择SimpleMemory皮肤, 阅读全文
posted @ 2020-08-23 21:08 Whatever_It_Takes 阅读(157) 评论(0) 推荐(0)