webMagic使用详解
webmagic 里面维持了一个请求队列,多个线程就是从这个队列里面请求
1234567891011121314151617181920 public static void main(String[] args) { Spider spider = Spider.create(new test1()).thread(5); // 开启五个线程去请求队列里面拿请求,然后请求服务器 for(int i=0;i<10;i++){ spider.addUrl("http://localhost:8888/?a="+i); // 请求这个地址会返回参数值 } spider.run(); }输出结果如下:get page: http://localhost:8888/?a=2get page: http://localhost:8888/?a=1get page: http://localhost:8888/?a=3get page: htt ...
http协议
前言
万维网构想三个部分:
页面文本标记语言 html ( 怎么表示页面)
传输数据的协议 http ( 怎么传输页面)
统一资源标识符 URI (资源在哪)
在所有的HTTP版本中,目前最流行的还是HTTP1.1这个版本
URI与URL
URI (统一资源标识符) 和 URL(统一资源定位符的区别) :
URI 可以用来标识任何资源(比如ftp,http,talent协议类型的资源),而URL 只能标识特定协议(http)的资源, URI 支持很多种协议,而URL 只支持http协议,URL 是 URI 的一个子集
所以咱们以后就说URI 就不会错啦,哈哈哈哈
后面的总结都是基于HTTP1.1来说的哦
请求方法
http协议支持的请求方法:
GET 主要用于向服务器获取资源
POST 主要用于向服务器传输资源
HADE 与GET方法类似,但是只获取响应报文的首部,不返回响应报文的主体
OPTIONS 询问支持的方法(在响应报文头部的Allow字段里面)
TRACE
CONNECT
PUT 用于上传资源
DELTE 用于删除资源
后面两个方法需要后端采用R ...
电路原理
基本概念
电流
单位时间通过横截面的电荷 I = dq/dt
电压
电场力移动单位电荷需要做的功等于电压 U = dw/dp
电位
从某点到某点的电压差
电动势
非电场力将单位正电荷移动做的功,一般只有电池电源有电动势
计算机科学速成课
半加器
全加器
实用软件
utools
强烈推荐, 能够为我们提供很多实用的工具, 基本上能囊括我这里面其他软件了
官网地址
quicker
这个也是强烈推荐, 搭配utools使用, 真的好用, 这个偏鼠标操作
官网地址
everything
这个软件是用来快速的搜索到某个文件所在的位置,它会将这个文件放进数据库中,然后读取到内存里面,这个可比windows自带的那个搜索功能快多了
官网地址
TreeSize
可以查看目录下具体子目录和文件的大小
破解地址
Typora
用于编写md文件
破解地址
clash
代理软件
网盘地址
手心输入法
干净无广告, 比较好用
窗口顶置
帮助其他软件窗口顶置
windowtop 下载地址, 破解地址
deskpins 下载地址
屏幕标记
论文阅读
zotero
readpaper
代码编写
vscode
idea的使用
部署项目到远程服务器
点击配置
配置好信息
配置好路径映射
打jar包
点击 文件->项目结构->工件
然后点击加号
创建工件
选择目录
构建工件
运行jar包
plantuml
时序图
我们可以通过一条一条语句来声明步骤,-> 代表实线
123456789@startuml用户 -> 认证中心: 登录操作认证中心 -> 缓存: 存放(key=token+ip,value=token)token用户 <- 认证中心 : 认证成功返回token用户 -> 认证中心: 下次访问头部携带token认证认证中心 <- 缓存: key=token+ip获取token其他服务 <- 认证中心: 存在且校验成功则跳转到用户请求的其他服务其他服务 -> 用户: 信息@enduml
声明参与者
上面那些框框都是可以变换形状的,我们只需要更改参与者的类型就可以了,可以指定的类型有
actor(角色)
boundary(边界)
control(控制)
entity(实体)
database(数据库)
collections(集合)
queue(队列)
格式就是:
participant “participantname” as participantothername 样式(颜色,顺序)
participant partici ...
node最新版本安装
前言
每次安装完了node,下次需要安装的时候有需要Google一下,每次搜到的教程肯定又不一样,肯定会有偏差,那还不如自己总结好
这个是下载node的官方地址
安装
windows安装node
下载msi文件
下载好后直接打开,中途选择路径的时候放D盘即可,其他直接无脑next,最后点击install就可以了
安装完后检查是否安装成功
这个是帮我们配置好环境变量的,当然我们也可以自己通过下载压缩包,然后把环境变量的方式配置上去,这样也可以,其实也没什么区别,看看他们产生的文件夹的区别吧
linux安装(centos7)
复制下载链接
12345678910111213#下载压缩吧到本地wget -c https://nodejs.org/download/release/v17.5.0/node-v17.5.0-linux-x64.tar.xz#解压压缩包tar -xf node-v17.5.0-linux-x64.tar.xz# 移动到指定目录,并且更改名字mv node-v17.5.0-linux-x64 /usr/local/lib/nodejs#添加到环境 ...
yaml语法
概述
基本语法
使用空格作为缩进
缩进空格数量不做要求,但是相同层级的左侧元素要对齐
低版本的不允许使用tab缩进,只能用空格
使用#做注释符,从字符到行尾,都算注释
使用 – 表示新的yaml文件开始
yaml支持的数据结构
对象
123person: name: djm age: 18
数组
123names: - djm - lpb
1names: [djm, lpb]
k8s环境搭建
背景
传统部署时代: 早期,是直接将应用程序部署在物理机上,无法对应用程序进行资源限制,如果有多个应用,就会出现资源分配的问题,比如一个应用占据大量资源,使用其他应用性能下降,一种解决方案是单个应用放在单个服务器上,这样的话,虽然做到了资源隔离,但是如果一个应用程序资源利用率不高的时候,剩余的资源又无法分配各其他应用程序,而且物理服务器的维护成本变得很高。
虚拟化部署时代: 作为解决方案,引入了虚拟化功能,它允许您在单个物理服务器的 CPU 上运行多个虚拟机VM。虚拟化功能允许应用程序在 VM 之间隔离,并提供安全级别,因为一个应用程序的信息不能被另一应用程序自由地访问。
容器部署时代: 容器类似于 VM,但是它们具有轻量级的隔离属性,可以在应用程序之间共享操作系统OS。因此,容器被认为是目前最轻量级的。容器与 VM 类似,具有自己的文件系统、CPU、内存、进程空间等。由于它们与基础架构分离,因此可以跨云和 OS 分发进行移植。而在容器时代,Docker容器引擎是最流行的一个。
Kubernetes 为你提供了一个可弹性运行分布式系统的框架。 Kubernetes 会满足你的扩展要求、 ...