自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小浪与艳花

学习笔记

  • 博客(105)
  • 资源 (4)
  • 收藏
  • 关注

原创 springboot发送邮件,内容使用thymeleaf模板引擎排版

在resources下,在路径templates/mail/下添加文件list.html。

2023-12-15 19:00:00 737

原创 Docker(六)、Docker-compose简单了解

Docker-compose 容器编排,比如一个java应用,涉及到mysql,tomcat ,redis ,nginx等。docker可以通过脚本实现先后安装 各个容器,每个容器需要的依赖文件都做了关系绑定,只需要使用docker的容器编排工具。

2023-10-21 06:00:00 553

原创 Docker(五)、容器间数据共享~volume

挂载宿主机目录, 在宿主机目录/usr/webapps 新建文件夹v-test1 ,在文件夹里新建index.html ,随便写点什么。容器间数据共享,核心原理就是在宿主机开辟一块空间,被其他容器共享,实现容器间文件内容的共享,只需少量的改动,其他容器都会生效。在宿主机目录/usr/webapps 新建文件夹v-test1 ,在文件夹里新建index.html ,随便写点什么。volume数据卷的设置有两种方式,下面会进一步表述。ps:路径不能写错,区分大小写。数据卷,即保存数据的单位。

2023-10-21 01:00:00 437

原创 Docker(四)、容器间通信

单向通信就是两个容器间,由A向B单向建立网络连接,eg:tomcat应用单向的从mysql容器提取数据即可,mysql不需要知道tomcat容器的存在,扩展:docker容器的虚拟ip,即在每个容器创建以后,都会创建一个虚拟ip,无法从外侧直接访问,只是在docker环境中,内部彼此通信的一个标识,2个容器创建以后,彼此之间互联互通,每创建一个容器,ip地址都会变化,如果更换mysql容器,则需要重启tomcat应用并重新指向新的数据库容器,所以容器间通信不建议使用ip进行通信。

2023-10-18 08:00:00 1306

原创 mac,linux环境的基础工具安装【jdk,tomcat】

安装一 JDK安装卸载:二 tomcat 安装1、[下载](https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.63/bin/apache-tomcat-8.5.63.tar.gz)后,在目录 `/usr/local/tomcat`下,解压缩2、配置tomcat以及jdk环境变量3、进入conf文件夹 vi server.xml 编辑配置文件,红色为调整内容,编辑后保存。4、验证是否配置成功:三、mysql 安装一 JDK安装官网下载: jd

2023-10-11 19:30:00 679 1

原创 Docker(二)、linux环境Docker的部署以及构建镜像

docker部署以及构建镜像

2023-09-26 21:25:56 473

原创 Docker(三)、Dockerfile探究

适合想了解更多关于Dockerfile 的小伙伴。

2023-09-26 21:25:47 428

原创 Docker-基本了解

docker 基本了解

2023-09-26 18:30:00 363

原创 Docker(一)、linux环境安装Docker

docker安装

2023-09-24 19:25:29 321

原创 python有关时间的工具

提供处理时间的函数,包括获取当前时间,时间戳转换,等待指定时间等操作。可以使用它执行日期和时间的加减运算。

2023-08-18 08:00:00 218

原创 浅尝python 四

想要调用匿名函数,需要使用变量保存# 如果想要调用匿名函数,需要使用变量保存,调用方式为: 变量名(参数),如下输出:3调用lambda 定义的匿名函数,使用变量保存输出:18。

2023-08-17 19:45:00 178

原创 浅尝python 三

空字典} {非空字典# 小强,27,1.81,爱好:射箭,爬山,夜骑,看书 myDict = {'name' : '小强' , 'age' : 27 , 'height' : '181cm' , 'hobby' : [ '射箭' , '爬山' , '夜骑' , '看书' ] } print(myDict) 输出: {

2023-07-27 21:00:00 298

原创 jmeter随记3:常用jmeter功能(附带场景)

场景2:用户登陆后返回的token ,修改用户手机号的时候http信息头管理器需要用到token信息。可以写到http请求默认值里【主要填写的部分:通讯协议,请求的内容编码,服务器域名】;请求路径带变量 ,eg:如 www.baidu.${a} ,a的值为com。这样http请求就不需要写域名了,只需要写请求方式和请求路径及入参。场景1:下单接口的订单号,作为查询物流信息接口的入参。场景3 a接口返回值为数组里的字段值是b接口需要的。实现它的作用:上一个接口返回值是其他接口的入参。

2023-07-23 19:20:19 616

原创 jmeter随记1:发请求执行并查看结果

聚合报告可以看执行结果,有请求数sample ,平均值,tp90,tp95 ,tp99 最小值,最大值,错误率,吞吐量等信息。post请求界面,参数是用Body Data传值,json格式,然后httpRequest传值GET调整为POST。聚合报告是展示请求数,qps,平均响应时间,吞吐量等信息,主要看接口调用的情况的。不喜勿喷,目前只写我接触到的,后续会持续更新。step1 : 创建请求之前先创建线程组:在。在jmeter线程组创建请求:右击。step2:创建http请求。step3:创建响应断言。

2023-07-23 12:04:33 828

原创 jmeter随记2:压测

需要关注的点:一般你会有一个压测指标,eg:以接口平均响应时间控制在500ms内,进行压测,压测并发数要参照线上qps流量设置,比如线上100,那你可以按正式环境qps 的3倍或者10倍去压。11502 个请求,消耗 14s,qps:802.3/s ,平均值:334 ,最小值64,最大值:3163 ,错误率0(0%),活跃线程数300个【基本含义就是设置压测300个并发】,结束:0。关于压测,jmeter更直观的作用是用来编写压测脚本【请求和压测策略】,然后在服务器上执行。d、保存并保存为 xx.jmx。

2023-07-23 11:37:22 498

原创 2min搞定 mac pycharm新建&导入python项目

然后重新执行刚才的下载类库命令,会提示成功,打印你刚才设置的venv路径,表示下载的类库存储到此位置。文件内容如下:这里面都是一些开发需要的类库,小伙伴们可以按自己实际需要摘取或者自行补充。导入项目没什么可说的,直接点击file ->open ,选择你的python项目即可。用户存储类库的,所以可以放到wkspace里,存放在venv 里。‘等同于java里的pom.xml ,这里写的都是需要下载的类库’就选择你配置的环境变量别名就可以,如果不记得,打开终端输入。前置条件:设置好python的环境变量。

2023-07-20 20:45:00 1965

原创 浅尝python 二

python基本数据类型的操作

2023-07-19 12:00:00 231

原创 浅尝python 一

小结 :对于一般的浮点数计算,round()和字符串格式化通常已经足够。如果需要进行精确的十进制运算,应该使用decimal模块。浮点型字符串 123.2 直接转成int 类型,会报错。可以先转换成float ,然后再转成int。整数型字符串 5 可直接转成int 类型。

2023-07-18 06:42:04 206

原创 python简单使用【mac:pycharm】

python基础语法及pycharm简单使用

2023-07-10 15:42:19 1505

原创 vue初体验1:新建vue3项目并启动访问(mac)

HBuilderX集成了多种开发工具和语言,包括HTML、CSS、JavaScript、TypeScript、Vue.js、React等,可以帮助开发者更高效地进行Web前端开发。可以快速构建vue的工具,自动安装vue所需要的插件,避免手动安装各种插件,以及寻找各种cdn并一个一个引入的麻烦。2、集成了多种调试工具和模拟器,可以在不同的设备和浏览器上进行实时调试和预览,有助于更快的定位和解决问题。3、有多种代码重构和自动化工具,如代码格式化、自动缩进、自动补全等,有助于更规范和高效地编写代码。

2023-07-05 18:45:00 3269

原创 我去!!mac初体验,快捷键码走

分享mac 使用 希望朋友们可以省去 我花的时间。

2023-07-04 09:15:00 883

原创 redis入门实战一、五种数据结构的基本操作(二)

连库命令:【默认连6379 0 号库】:redis-cli【指定连6380端口的redis服务】:redis-cli -p 6380【指定连6380端口 8号库的redis服务】: redis-cli -p 6380 -n 8登录之后输入eg:查库里有哪些key:keys *

2023-03-20 15:20:09 608 1

原创 5min完成linux环境Jenkins的安装

下载jenkins +启动jenkins+安装jenkins +创建管理员账户 +过程中遇到的问题解决

2023-02-14 14:04:55 2581

原创 redis-zset简单操作

zset基础操作

2022-03-14 15:11:59 2314

原创 java基础2:拷贝对象方式: 从a到b

拷贝对象 从apple 到orange方案一 【use java8 Syntactic Sugar】demo使用java8的对象互转形式小结方案二 【use mapstruct】demo使用mapstruct小结方案一 【use java8 Syntactic Sugar】基于jdk1.8。你的idea要下载一下lomlock插件demo添加依赖<dependency> <groupId>org.projectlombok</groupId> &l

2021-02-12 14:46:56 721 4

原创 java基础1:处理list

Deal Listlamda表达式处理List数据1、不改变原值,但可返回处理结果2、可直接改变原List值。3、filter过滤得到一个list | 一个元素lamda表达式处理List数据iniListData @Test public void test1() { Apple a = new Apple("red1", BigDecimal.valueOf(1.1d)); Apple a1 = new Apple("red2", BigDecimal.v

2021-02-11 14:47:08 1047 1

原创 非主要功能降级方案

降级对降级的认知非主要功能降级案例对降级的认知一般对服务降级的认知,我大概了解两小点:1、 在业务流量比较大的情况,处理不过来了,要做降级处理, 比如开关降级,流量降级,熔断降级。 2 、关于降级,经常会有2、次要功能频繁出错,或非主要功能性能有问题, 在不影响主业务线的情况,对该功能可以采取降级处理。以下案例针对第2种降级情况,提供降级解决方案。非主要功能降级案例支付完成后,会有一个红包分享的接口,然后接口内部是要调用其他接口,比如生成红包分享的图片的接口,生成小程序二维码,文案等等,这

2021-01-03 15:31:14 572 2

原创 win环境-maven的安装以及配置(idea中的配置,setting文件修改,环境变量配置)

这里写目录标题下载官网最新版本一、maven配置文件修改1、setting文件:2、环境变量配置3、idea使用中maven的配置下载官网最新版本http://maven.apache.org/download.cgi一、maven配置文件修改1、setting文件:本地仓库<localRepository>E:\installs\maven\apache-maven-3.6.3\conf\maven-repository</localRepository>阿里云镜像

2020-09-01 12:16:27 2063

原创 线程的几种状态

线程的几种状态线程的几种状态线程的生命周期线程的几种状态new,runnable ,waiting , timedwaiting , blocked ,terminated线程的生命周期线程启动进入运行态,首先就绪,cpu为了提高效率,会轮流切换线程并发执行指令,叫流水线式工作。所以在线程调度器内部,就绪状态转为运行态,表示被线程调度器选中执行,从运行态running到ready表示线程挂起,cpu切换其他线程执行。还有一种情况是从running态到ready就绪状态,即线程内部调用了一下t

2020-08-18 13:50:31 471

原创 透过案例--了解循环栅栏

循环栅栏循环栅栏一、案例-司令跟士兵的日常1、上demo1)、代码实现2)、测试结果以及小结①测试结果导读小结:外层线程最后调用循环栅栏,还能否起到阻塞作用?2、草图导读番外篇案例-游乐场之行~更直白循环栅栏一、案例-司令跟士兵的日常别的线程和循环栅栏这俩货要合作,所以他们先进行了简单的沟通:别的线程:一听栅栏,肯定就是有限制,据说这里的限制是阻塞我(别的线程)的,而且阻塞的个数由你(循环栅栏)来定(假定阻塞个数是7,那么这里循环栅栏的计数器大小为7)循环栅栏:是的。别的线程:哦哦,那要是

2020-08-12 09:11:15 272

原创 自定义线程池:简单demo(+自定义ThreadFactory)实现

自定义线程池:简单demo(+自定义ThreadFactory)实现线程池作用简述一、上demo(自定义线程池)二、ThreadFactory源码简述1、方法定义2、接口定义线程池作用简述线程池主要作用是为了线程复用,避免线程频繁创建。线程池里的线程是 ThreadFactory帮助创建的。一、上demo(自定义线程池)可以跟踪线程池究竟在何时创建了多少线程,也可以自定义线程名称,组,优先级,甚至直接设定所有线程为守护线程。可以通过自定义线程池更加自由的设置池子里所有线程的状态。下面案例一方面记录

2020-08-11 23:28:11 1805

原创 线程池中的拒绝策略是什么东东?

线程池中的拒绝策略一、拒绝策略产生缘由?二、何时触发使用拒绝策略三、拒绝策略都有哪些?1、AbortPolicy策略2、CallerRunsPolicy策略3、DiscardOldestPolicy策略4、DiscardPolicy策略自定义拒绝策略线程池使用拒绝策略demo一、拒绝策略产生缘由?线程池工作中,如果任务量很大,超过系统实际承载能力时,如果不予理睬,接着可能系统就崩溃了,所以jdk内置提供了线程池的4种拒绝策略,合理的解决这种问题。二、何时触发使用拒绝策略线程池中线程已经用完不能再创建

2020-08-11 18:43:19 1041

原创 想知道你的线程池中用到的队列含义吗?;)

线程池中用到的队列的含义有界队列:ArrayBlockingQueue无界的任务队列:LinkedBlockingQueue直接提交的队列:SynchronousQueue优先任务队列:PriorityBlockingQueue有界队列:ArrayBlockingQueueArrayBlockingQueue来实现有界队列,特点:其构造函数必须带一个参数,表示设置该队列最大容量;有界队列的界在于maximumPoolSize,其他和无界队列基本没差。算法实现:FIFO设置有界队列最大容量,e

2020-08-11 14:29:43 322 1

原创 线程池:spring封装的ThreadPoolTaskExecutor-线程池应用

适用场景:在要处理大批量且无序 的数据 前提下,可使用下面方案,可提高线上服务器吞吐量。以下有场景以及推荐方案。1、 test 类: import java.math.BigDecimal;import java.util.Date;import org.junit.Before;import org.junit.Test;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.b

2020-08-11 12:01:46 1630

原创 rocketmq分布式事务消息发送demo

rocketmq分布式事务消息发送demo1、分布式事务消息流程简图2、demo3、测试结果1、分布式事务消息流程简图2、demo1、pom文件配置引入rocket4.3+版本都可以,因为4.3+版本才开始支持分布式事务消息发送2、代码以及流程简述:producer端重写TransactionListener里的两个方法,①一个是实现本地一系列事务的实现(executeLocalTransaction),如果本地事务执行时间过长,broker端可以通过回调(checkLocalTransac

2020-08-09 15:08:28 1654

原创 twemproxy的安装及集群搭建

linux环境-redis代理twemproxy的安装安装twemproxy1、下载redis代理源码到本地2、安装3、集群搭建安装过程中报错及解决1、 报错:`http request failed`2、报错:configure.ac:8: error: Autoconf version 2.64 or higher is required安装twemproxy安装参考github源码安装:github~twemproxy需要留意的如下图:1、下载redis代理源码到本地cd soft/m

2020-08-08 09:20:45 477

原创 redis集群篇三:手动搭建redis5.x自己的集群分片

手动搭建分片集群一、启动1、启动集群2、手动分片3、测试其他、查看帮助有哪些功能一、启动1、启动集群编辑把端口改为8000开始,保存退出[root@localhost create-cluster]# vi create-cluster #!/bin/bash# SettingsPORT=8000TIMEOUT=2000NODES=6REPLICAS=1在redis安装目录的utils下 ,按照readme里面的提示执行此脚本./create-cluster start

2020-08-04 18:06:18 258

原创 redis集群篇二:redis5.x版本集群分片

配置集群一,根据脚本搭建redis集群二级目录二级目录二、自定义搭建redis集群一,根据脚本搭建redis集群二级目录二级目录二、自定义搭建redis集群

2020-08-04 15:50:03 322

原创 predixy的安装及集群搭建

linux环境-redis代理predixy的安装下载到本地修改配置以及集群搭建修改conf下代理的配置文件prefixy.conf开始编辑predixy里哨兵的配置文件配置并启动上面配置的3个哨兵和4个redis实例(2套主从)启动代理bin下的predixy启动redis客户端,端口为代理7617小结可参看github上:predixy源码要求是c++11编译,我的是centOS6,不支持,但是有直接编译好的点一个发布好的下载到本地创建文件夹并进入此路径[root@node02 pre

2020-08-04 00:09:41 2801 2

原创 Duang!linux里当你的各种安装命令不好用时~

1、输入rz 报错-bash: rz: command not found安装一下:yum -y install lrzsz ,rz,sz就都可以用了2、在linux环境配置jdk1.8环境变量,验证的时候 java -version报错-bash: /usr/local/java/jdk1.8.0_261/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory输入 sudo yum instal

2020-07-28 18:03:01 224

DegignPattern.rar

策略模式实例,单例模式(懒汉最优实例【饿汉模式的几种写法】,经典饿汉模式)后面会持续追加其他设计模式

2020-06-05

springdataSolrDemo.rar

springdatasolr实用demo,可用来做搜索引擎提升服务器性能,底层封装了solrj ,solrhome里schema.xml配置了自定义域,拷贝域用来检索,在tomcat里

2020-05-28

SpringDataRedis.rar

1 该spring系列框架实现了对jedis以及jredis,rjc的高度封装 2通过简单配置实现对redis的操作,使用更加简单方便 3可直接应用到项目中

2020-05-21

读取文件数据并解析成不同数据类型,然后写入磁盘文件。附加功能:对字符串以逗号分割成字段,字段内含逗号

1读取磁盘文件数据,并解析成对象,然后写入磁盘另一个文件 2读取文件数据并解析成不同数据类型,然后写入磁盘文件。附加功能:对字符串以逗号分割成字段,字段内含逗号

2019-04-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除