Beyonderwei

Learn to choose, to give up. Endure loneliness and withstand temptation!

Jmeter压力测试

一、安装与运行 官方网址:https://jmeter.apache.org/ 下载地址:http://jmeter.apache.org/download_jmeter.cgi 要求:JDK8及以上环境,直接解压使用,无需安装。直接双击 jmeter.bat 即可运行。 二、使用教程1. 语言切换Options -> Choose Language 2. 添加线程组 测试计划:在......

OpenFeign服务调用

一、简介同样是客户端的负载均衡和服务调用工具,客户端的声明式的Web Service客户端,只需定义一个服务的接口,然后在上面添加注解,完成对服务方接口的绑定。OpenFeign 是对原有 Feign 的封装,使之支持SpringMVC标准注解和HttpMessageConverters。简化了使用Ribbon时,封装服务调用客户端的开发量。实际上 OpenFeign 也包含了Ribbon......

Ribbon服务调用

一、简介SpringCloud Ribbon是基于Netflix Ribbon实现的一个客户端负载均衡和服务调用的客户端组件。使用上只需在配置文件中加入LoadBalancer,具有完善的连接、超时、重试等配置,也可基于Ribbon实现自定义的负载均衡算法。未来Spring将使用LoadBalancer来代替Ribbon. Ribbon实际上就是RestTemplate接入了负载均衡。 gi......

Zookeeper服务注册与发现,Docker安装(CP)

Zookeeper由Java语言编写。 一、安装 搜索Zookeeper docker search zookeeper 拉取指定版本 docker pull zookeerper:3.6.2 运行镜像 docker run --name 容器名 -p 2181:2181 --restart always -d 镜像id 启动后会EXPOSE端口:2181(对client端提供服务)......

Consul 服务注册与发现(CP)

一、简介​ Consul用于微服务的注册和发现,由Go语言编写,提供HTTP和DNS两种服务发现方式,支持HTTP、TCP、Docker、Shell脚本定制化,支持多数据中心,有可视化的Web界面。 二、安装 拉镜像,当前最新1.9.3,Consul 官网 docker pull consul:1.9.3 运行得到容器 (默认是以开发模式启动,数据保存在内存中,持久化需要通过数据卷......

服务注册中心Eureka(AP)

Eureka由java语言编写。已经弃用。 一、服务治理Spring Cloud封装了Netflix公司开发的Eureka来实现服务的治理,但是该模块已经停更。 在传统的RPC远程调用框架中,管理每个服务与服务之间的依赖关系表复杂,所以需要使用服务治理,管理服务与服务之间的依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册。 二、 服务注册与发现Eureka 采用了CS的设计架......

IDEA中多服务管理

一、目标因为微服务比较多的时候,一个个启动关闭,难于管理,因此IDEA提供了Servides来进行多个服务的管理(原本的叫做RunDashboard,新版本直接在Servides中管理)。 二、不显示漏斗在项目的.idea文件夹下找到workspace.xml,添加如下代码片段,重启IDEA。 1234567<component name="RunDashboard"> &......

通过Devtools实现热部署

一、主要目标实现更改代码后,后台自动的运行当前已经更改后的程序,避免频繁的手动关闭、启动项目。 开发过程中使用,方便调试,实际生产环境则需要关掉。 二、配置方式 在项目的pom文件中引入依赖: 123456<dependency> <groupId>org.springframework.boot</groupId> ......

npm基础

Node Package Manage 简介是node.js的包管理工具,类似maven,负责管理js依赖。在安装node.js时就自动安装了npm 文件 package.json 依赖包的配置信息以及工程的信息,可根据该文件下载依赖。 package-lock.json 锁定了包的版本。 node_modules 该文件夹下为下载的所有的包 常用命令项目初始化 npm ......
npm

Webpack基础

作用前端静态文件的打包工具: 功能:将多个静态文件(js,css)打包成一个文件。 使用场景:在部署前将项目打包 优点:防止用户多次请求静态资源界面。 安装 npm install -g webpack webpack-cli 安装webpack 和 webpack-cli webpack -v 查看版本 配置文件 在要打包的文件夹同级目录下创建webpack.confi......

Nginx 基础

一、简介高性能的HTTP和反向代理服务器,占用内存少,并发能力强,为性能优化而开发,并发连接数高达五万。支持热部署,不间断运行。专门用来做静态资源服务器。 相关概念 正向代理:用户通过浏览器配置代理服务器,然后通过访问代理服务器的方式来访问互联网中的远程服务器。 反向代理:客户端无需做任何配置,只需要将请求发给反向代理服务器,由反向代理服务器去选择目标服务器获取数据,再返回给客户端,对外暴......

JUC并发编程

JUC并发编程 高内聚低耦合,线程操作资源类 生产者、消费者:判断,干活,通知 多线程交互(wait notify时)中要防止多线程的虚假唤醒 。条件的判断不能用if,只能用while。while循环体在线程被终止的时候会被重新判断而if不会被重新判断,即wait必须在while的循环体内。 标志位 知识点 synchronized 锁的不是某个方法,而是整个资源类,即当前的这个对象。 ......

WebStorm 远程仓库配置

一、需求场景    为了实现代码的备份和协作,通常本地的项目会同步到远程仓库。而常用的开发工具一般都集成了Git,因此可以直接在IDE内就完成代码的版本控制,免去了命令行的操作。因此本文介绍如何在Gitee、webStorm中进行相应的配置实现上述需求。Github、IDEA(或其他JetBrains公司的软件)与之基本相同,只是因为国内Github常......

AI 基础(ML与DL)

实际上处于弱人工智能范畴 数据结构: 树形的深度优先搜索 广度优先搜索 排序 动态规划 最长公共子序列 字符串的最长公共子串 递归: 二叉树的翻转 书籍推荐:模式识别与机器学习、统计学习方法。 一、机器学习基础1. 按学习方式分类 监督学习:带着标签去学习,告诉它这个是什么,那个是什么。 无监督学习(以聚类为代表) 半监督学习 强化学习 2. 学习结构分类 回归 分类 ​......

SpringSecurity权限框架(OAuth2)

一、简介​ Spring的安全框架,主要包含两个部分,包括用户认证和用户授权。本质上就是Filter(过滤器),对请求进行过滤, 基于session:则通过对cookie里的sessionid进行解析,然后在服务器中查询确认, 基于token:解析token,然后加到Spring-security中管理 1. 用户认证用户的登录认证,用来判断用户是否能访问这个系统。 2. 用户授权......

OAuth2

相关资料官方网站:https://oauth.net/ 中文文档: https://vertxchina.github.io/vertx-translation-chinese/auth/Oauth2.html https://colobu.com/2017/04/28/oauth2-rfc6749/ 腾讯开放平台:https://wiki.open.qq.com/wiki/mobile......

Redis

主要学的三个数据库 MySQL(关系型) 多用于冷数据 MongoDB(介于关系型与非关系型之间) 基于分布式文件存储的数据库 Redis(非关系型数据库) 多用于常改变,类型多样的数据。分布式 内存 数据库 一、相关概念NoSQL简介:泛指 非关系型数据库 ,为了解决大规模数据集合多重数据种类,包括大规模数据存储。这些类型的数据存储不需要固定的模式,无需多余的操作就可以横向扩展。 ......

Linux应用开发-后端

Linux(林纳斯)一、简介1. 主要的应用领域 服务器 Linux生来就是被设计作为服务器的,众多服务程序均部署在Linux上。 嵌入式系统 Linux完全开源,可对内核进行裁剪,最小可打到几百kb,常应用于嵌入式系统,如机顶盒、白家电等。安卓的内核也是Linux。 2. 学习阶段 ① 基本的操作命令:文件命令、编辑工具、linux用户管理 ② 各种配置:环境变量、网络配置、服务配置......

Nginx代理时在gunicorn的日志中记录真实访问IP

一、问题概述在通过Nginx负载均衡的情况下,gunicorn的log中记录的访问访问日志并不是用户的IP,而是Nginx主机的IP。 二、解决方法1. Nginx配置:其中proxy_set_header X-Real-IP $remote_addr;在请求头中加入了真实的用户IP信息,并一起发送给了后端的gunicorn 服务。123456location /api { ......

通过Docker部署Flask应用(gunicorn+gevent)

一、项目架构    前后端分离项目中,为缓解服务器压力,通常我们后端代码会部署到多个服务器上,而通过Docker容器虚拟化技术可以让我们避免因开发和运维之间配置环境、运行环境、操作系统、运行依赖包等不同导致的项目部署后无法运行的问题,同时也简化了部署过程。这里后端使用的是gunicorn,相当于java开发者熟悉的tomcat。  ......