自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 tensorflow训练集下载

链接: https://pan.baidu.com/s/1mtODcTMBLefOg9U8lhohsg 提取码: qihw 复制这段内容后打开百度网盘手机App,操作更方便哦。链接: https://pan.baidu.com/s/1tU5JRbNf6dNnt36M4DXT3w 提取码: 3b82 复制这段内容后打开百度网盘手机App,操作更方便哦。FashionMNIST.zip 下载链接。mnist.npz 下载链接。

2023-12-13 17:47:22 153

原创 python在Mac上的安装,node切换,tensorflow安装

MacBook-Pro:~ xx$ nvm use 16 (切换node版本)MacBook-Pro:~ xx$ node -v (查看node版本)python的安装:brew install [email protected]

2023-12-11 10:55:54 217

原创 swag的在Mac下的使用,在工程中的使用

swag在Mac下的安装,请参考如下地址https://blog.csdn.net/weixin_43262264/article/details/107339026具体的使用, 在 router中func NewRouter() *gin.Engine { r := gin.Default() r.Use(middleware.Cors()) r.GET("/v1/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) }

2021-10-30 17:22:30 674

原创 raft与pbft的区别点

raft:二阶段,写的操作都由leader完成,读的操作所有节点都可以完成。有脑裂情况出现。所有的计票由leader完成,只要票数超过1/2,则可以确定选举成功。实现的是cp(一致性,分区容忍性),nacos,zookeeper。pbft三阶段:中间那三部分就是三阶段。所有参与的节点都是进行计票,每个节点收集的投票数超过2/3,则会向其它节点发送提交。拜占庭节点即为故障节点。...

2021-08-17 15:56:16 484

原创 注意事项-固定的路径

注意1:blade的部署路径,包含的文件root@iZf8zf4p0dwlnjl5c8c6w3Z:/opt/chaosblade# pwd/opt/chaosbladeroot@iZf8zf4p0dwlnjl5c8c6w3Z:/opt/chaosblade# tree.├── bin│ ├── chaos_addfile│ ├── chaos_appendfile│ ├── chaos_burncpu│ ├── chaos_burnio│ ├── chaos_bur.

2021-08-10 16:24:36 149

原创 (2)MySQL案例-结合应用

一:重新打包lcm.jar1.1 修改SandboxModule.java的id=lcm1.2 在CreateHandler.java里的handle里设定输出System.out.println(“lcm CreateHandler handle suid= “+suid+”,target= “+target+”,actionArg=”+actionArg);1.3 把修改并编译后的SandboxModule.class CreateHandler.class 替换掉官方提供的chaosblade

2021-08-06 15:42:19 151

原创 混沌工具的文档

工具的文档:https://chaosblade-io.gitbook.io/chaosblade-help-zh-cn/

2021-08-06 11:30:41 132

原创 (1)MySQL案例-结合应用

结论:当向springboot-mysql应用里注入字节码增强后,应该执行查询http://localhost:8000/user/list的时候startTime和endTime是有10s时间差距的。但是结果没有10s时间的差距。一:写springboot-mysql的工程。User.java. UserMapper.java UserController.java 代码如下:package com.example.demo.entity;import lombok.AllArgsCon.

2021-08-06 10:11:08 213

原创 各种aop的记录

spring 的aop注入切片的类必须是要声明为bean.原生接口aopattachagentcglibjavassistasm

2021-08-04 18:21:28 98

原创 ServiceLoader统一加载类

结论:如标题一:上代码1.1 PayService.javapackage com.classload;public interface PayService { void pay();}1.2 AliPayService.javapackage com.classload;public class AliPayService implements PayService { @Override public void pay() { System.

2021-08-04 16:53:30 281

原创 chaosblade-exec-jvm自己打jar包与官网提供jar包的区别

一:自己打jar包: chaosblade-exec-bootstrap-jvmsandbox-1.2.0.jar1.1 通过工程里的makefile进行打包。1.2 mvn clean package -Dmaven.test.skip=true 打包jar xvf chaosblade-exec-bootstrap-jvmsandbox-1.2.0.jar解压后的目录结构如下:xxMBP:guangfang xxx$ tree -L 2.├── META-INF│ ├── MANI

2021-08-04 16:16:22 302

原创 通过脚本把模块注入到目标jvm

一.运行的sandbox目录如下:xxxdeMBP:sandbox xxx$ tree.├── bin│ └── sandbox.sh├── cfg│ ├── sandbox-logback.xml│ ├── sandbox.properties│ └── version├── example│ └── sandbox-debug-module.jar├── install-local.sh├── lib│ ├── sandbox-agent.jar│

2021-08-04 15:45:48 310

原创 混沌平台页面使用流程图

2021-08-03 17:09:02 129

原创 (3)MySQL案例-模块关联图

所有的plugin都是按service来加载的。

2021-08-03 17:03:23 154

原创 sandbox字节码增强关联图

2021-08-03 17:01:18 86

原创 sandbox事件注册和运行时流程

未增强在运行sum流程时,若没有增强,则sum(10,10)=20增强后通过字节码增强,修改sum的参数为40,60.在调用sum(10,10)时,会在执行时调用字节码增强后为sum(40,60)=100

2021-08-03 16:53:00 369

原创 jvm-sandbox工程单独启动

CoreLauncher.java

2021-08-02 15:09:39 266

原创 生成chaosblade-jvm-spec-1.2.0.yaml文件内容

结论根据插件实现,生成yaml文件内容。1.把所有插件打包成jar切到chaosblade-exec-jvm/chaosblade-exec-plugin/目录下,执行mvn clean package -Dmaven.test.skip=true各插件包下会生成target/*.jar。备注:若是单个插件打包,需到各插件目录下执行上面的命令。2. 把插件jar放到统一的目录下把上面打包的插件jar放到chaosblade-exec-jvm/build/plugins/下,若是没有buil

2021-08-02 14:58:33 4488

原创 agent方式实现动态类修改和增强字节码

一:实际代码1.1 GdBusiness.java的内容package com.aop.transform;public class GdBusiness { public boolean deposit(){ System.out.println("存款业务执行"); return true; } public void withdrawals(){ System.out.println("取款业务执行"); }}

2021-07-30 16:34:13 398

原创 使用attach方式实现类的动态修改和字节码增强

1.增强类GdAgentMain.javaimport org.objectweb.asm.ClassReader;import org.objectweb.asm.ClassVisitor;import org.objectweb.asm.ClassWriter;import org.objectweb.asm.MethodVisitor;import org.objectweb.asm.commons.AdviceAdapter;import java.lang.instrument.Cla

2021-07-30 15:19:16 706 1

原创 查看字节码

1.安装插件ASM Bytecode outline 与hexview2.查看字节码源码package com.asm;public class HelloWorld{ public static void main(){ System.out.println("HelloWorld!-----0"); }}当前面板下有三项内容:• Bytecode 表示对应的class字节码文件• ASMified 表示利用ASM框架生成字节码对应的代码• Gr

2021-07-20 12:30:05 369

转载 cgroup

cgroup介绍cgroup是control group的简称,它为Linux内核提供了一种任务聚集和划分的机制,通过一组参数集合将一些任务组织成一个或多个子系统。Cgroups是control groups的缩写,最初由Google工程师提出,后来编进linux内核。Cgroups是实现IaaS虚拟化(kvm、lxc等),PaaS容器沙箱(Docker等)的资源管理控制部分的底层基础。子系统是根据cgroup对任务的划分功能将任务按照一种指定的属性划分成的一个组,主要用来实现资源的控制。在cgro

2021-07-15 18:03:01 163

原创 AIOps

AIOps,即 Artificial Intelligence for IT Operations,智能运维,将人工智能应用于运维领域,基于已有的运维数据(日志、监控信息、应用信息等),通过机器学习的方式来进一步解决自动化运维没办法解决的问题。...

2021-07-15 17:04:27 145

原创 Iaas,paas,saas的区别

如果你采用IaaS服务,那么意味着你就不用自己买服务器了,随便在哪家购买虚拟机,但是还是需要自己装服务器软件而如果你采用PaaS的服务,那么意味着你既不需要买服务器,也不需要自己装服务器软件,只需要自己开发网站程序如果你再进一步,购买某些在线论坛或者在线网店的服务,这意味着你也不用自己开发网站程序,只需要使用它们开发好的程序,而且他们会负责程序的升级、维护、增加服务器等,而你只需要专心运营即可,此即为SaaS。...

2021-07-13 17:19:30 134

原创 RocketMQ的消息存储:零拷贝技术

零拷贝技术加速文件读写 Linux操作系统分为【用户态】和【内核态】,文件操作、网络操作需要涉及这两种形态的切换,免不了进行数据复制。一台服务器 把本机磁盘文件的内容发送到客户端,一般分为两个步骤: 1)read;读取本地文件内容; 2)write;将读取的内容通过网络发送出去。 这两个看似简单的操作,实际进行了4 次数据复制,分别是:从磁盘复制数据到内核态内存;从内核态内存复 制到用户态内存;然后从用户态 内存复制到网络驱动的内核态内存;最后是从网络驱动的内核态内存复 制到网卡中进行传输。

2021-07-12 15:58:48 674

原创 mysql索引:最佳左配原则实践

创建联合索引两个索引都匹配explain select * from w_sexc where available_num=0 and freeze_num=100;3.只匹配最左边的索引explain select * from w_sexc where available_num=04.匹配第二个索引explain select * from w_sexc where freeze_num=100;没有使用索引。...

2021-07-12 11:42:10 95

原创 Prometheus安装在mac

Prometheus到官网下载并解压https://prometheus.io/download/解压tar -vxf prometheus-2.28.1.darwin-amd64.tar启动./prometheus --config.file=prometheus.yml访问 http://localhost:9090/

2021-07-09 15:18:22 274

原创 minikube部署nginx

minikube tunnelkubectl create deployment my-nginx --image=nginx --dry-run -o yaml > nginx.yamlkubectl apply -f nginx.yamlkubectl get pods 查看kubectl create -f nginx-svc.yamlnginx.yaml的内容如下:apiVersion: apps/v1kind: Deploymentmetadata: cr.

2021-07-08 18:40:32 523

原创 minikube安装

1.安装minikube官网 https://minikube.sigs.k8s.io/docs/start/有相关的解绍。备注:安装启动之前条件a.创建一个非root用户。由于minikube的启动不能使用root帐户,所以新添lcm用户useradd lcm 创建用户lcmpasswd lcm 给已创建的用户lcm设置密码从root切换到lcm请用su -l lcmlinux模式切换到bash。b.启动minikube时默认vm是docker,根据错误提示修改个别文件的权限

2021-07-08 10:54:52 435

转载 git每次执行git pull/push时都需要输入用户名和密码

如果我们git clone的下载代码的时候是连接的https://而不是git@git (ssh)的形式,当我们操作git pull/push到远程的时候,总是提示我们输入账号和密码才能操作成功,频繁的输入账号和密码会很麻烦。解决办法:git bash进入你的项目目录,输入:git config --global credential.helper store然后你会在你本地生成一个文本,上边记录你的账号和密码。当然这些你可以不用关心。然后你使用上述的命令配置好之后,再操作一次git pull,然

2021-04-09 08:45:34 200

原创 tendermint启动时抛错

问题:tendermint节点启动时抛如下的错ERROR: error during handshake: error on replay: wrong Block.Header.LastBlockID. Expected 4F50C95A2FD78A40B661C304227A21DC5715E8E28D9B6240324FABC4671EB92B, got A3D5A54B8EE3CC05041E8A01BFDB91F61751D393AA33E35FAF0BA301E6B63E3D原因:在节点启

2021-03-26 11:15:22 313 1

原创 区块时间,合约时间

1. 以太坊区块时间:block.header.time当前区块时间=上一个区块时间-10s合约时间=block.header.time2.babble区块时间: 无查了源码确实没有发现block里的时间存储。event里有时间3.tendermint取Weight<totalWeight/2里的WeightedTime.Time值。正常情况下就是提案者的lastCommit时间。type WeightedTime struct { Time time.

2021-03-25 15:31:27 929

原创 babble的优化

babble的tx同步:采用push,pull两重模式来进行全网同步。优点:1. 安全--tx的副本存在每个节点中。不存在丢失的情况。--只要数据源正确,复制的数据就正确。2.缺点--全局耦合网络,如下图1-1。若是节点过多,则性能上会有很大的压力。图1-1优化:近邻耦合网络,如下图1-2。图1-2...

2021-03-25 14:40:32 119

原创 tendermint共识pbft优化

tendermint共识pbft可优化点假设:参与共识的节点A,B,C,D,若此时节点A为提案的节点。异常1:节点A发生故障(彻底停了)导致无法发起提案。目前tendermint的处理是如下:–节点A里的txs无法打包出去。–节点B、C、D正常投票、计票、出空块。对于用户来说:txs失败。优化的点:当节点A经过timeout后还未发起提案,可以把txs同步给下一轮的提案者。...

2021-03-25 13:49:20 437

空空如也

空空如也

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

TA关注的人

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