自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(76)
  • 资源 (5)
  • 收藏
  • 关注

原创 k8s 部署Harbor

Harbor 可以采用http访问和https访问,本文使用https访问的方式部署Harbor 。

2022-09-27 23:45:00 1812 2

原创 穷人安装ubuntu1.18.4+docker+kind+k8s-1.19.1+kubeflow-1.3

安装kubeflow

2022-06-08 13:13:51 1002

转载 Raft 算法简介(转载)

我是通过这篇文章Raft 算法简介看懂的,所以转载在这里,供以后复习使用。1. Raft 算法简介1.1 Raft 背景在分布式系统中,一致性算法至关重要。在所有一致性算法中,Paxos 最负盛名,它由莱斯利·兰伯特(Leslie Lamport)于 1990 年提出,是一种基于消息传递的一致性算法,被认为是类似算法中最有效的。Paxos 算法虽然很有效,但复杂的原理使它实现起来非常困难,截止目前,实现 Paxos 算法的开源软件很少,比较出名的有 Chubby、LibPaxos。此外,Zookee

2022-04-15 10:50:03 281

原创 Go语言中只存在值传递不存在引用传递

引用类型:映射(map),数组切片(slice),通道(channel),方法与函数。非引用类型:整型,字符串,布尔,数组我们知道在内存中的任何东西都有自己的内存地址,普通值,指针都有自己的内存地址i := 10ip := &ii的内存地址为: 0xc042060080,i的指针的内存地址为 0xc042080018比如 我们创建一个整型变量 i,该变量的值为10,有一个指向整型变量 i 的指针ip,该ip包含了 i 的内存地址 0xc042060080 。但是ip也有自己的内存地址

2022-03-17 17:09:11 546

原创 Kubernetes client-go 源码分析 - Indexer & ThreadSafeStore

Index是索引,为了使通过各种方法找到存储的数据。ThreadSafeStore是存储,放数据的。只需要看懂一个函数就可以了// client-go/tools/cache/thread_safe_store.go/142---1.15// Index() 方法的作用是给定一个 obj 和 indexName,// 比如 pod1和 “namespace”,然后返回 pod_1 所在 namespace 下的所有 pod(pod_1 和pod_2),以下以这个为例// 比如 pod1和 “ki

2021-12-30 16:53:57 176

原创 记录vmvare+centos+ubuntu+docker+k8s安装

1. VMware 安装E:***的一些文件\2. 虚拟机\VM_linux\VM15.5一直下一步就可以(老韩linux视频)2. 安装centos(老韩linux视频),讲义在E:***的一些文件\4. 尚硅谷学习相关\2. 韩顺平linux\课件如下分区那里有些难,别的都ok,不行看老韩视频3、安装ubuntu李卫民视频ubuntu镜像下载创建后的虚拟机如下开启过程如下:改到最大用户密码要x克隆。第一个尽量全克隆4、准备基础node参考李

2021-10-12 19:47:23 396

原创 线程池监控与数量大小设置

项目中用到了线程,老出问题,还不知道哪里出了问题,具体说是用到了线程池,听同事讲可能是因为redis中占用,30个线程池全被占满了,所以后续请求不成功,为了能够弄得更清楚,所以下面学习了一些文章python监视线程池python线程状态监测python获取cpu核数来确定最大线程池数量python3 ThreadPoolExecutor 线程池大小设置...

2021-08-31 11:50:07 112

原创 argo 报错 failed to save outputs: Failed to establish pod watch: unknown

学习argo 的demo 的时候,第一个hello world 就报错了报错信息如下:failed to save outputs: Failed to establish pod watch: unknown (get pods)报错原因:其实是因为Argo在默认安装好之后,workflow-controller默认使用的是"default" 账户去调用K8S api-server 查询pod信息的,但是"default" 账户的权限可能不够。解决办法:创建拥有create pod之类的权限

2021-07-06 15:09:04 497

原创 k8s+prometheus+PromQL

Prometheus PromQL查询K8S体系监控-kube-state-metrics集群资源监控Prometheus GPU 监控

2021-03-18 20:38:58 314

原创 mysql:第一篇 int(11)、int(10)、tinyint(1) 、tinyint(2)、tinyint(4) 的区别。

最大的区别就是没有不同只是int(M) 中的M指示最大显示宽度,最大有效显示宽度是 255,且显示宽度与存储大小或类型包含的值的范围无关。现在看来就是为了看着好看,比如我的员工编号未NO.00040973, 这就是一个uint(8),如果不这样显示那么就是会这样总经理是NO.1CTO是NO.730我是NO.00040973还是想要总经理是NO.00000001小组长是NO.00000730程序员是NO.00040973就这样但是tinyint(1)在mysql中表示bool参考1:

2021-03-11 16:36:09 1881

原创 golang中mysql: tinyint(1)我妥协了,存储不用bool值

用gorm存一个bool的status时,造成了很大的麻烦参考mysql tinyint1isbit_MySQL “tinyInt1isBit or tinyint(1)” 相关问题解析就是用tinyint(3)就行了,status为两种,1代表未上报,2代表上报,golang 里面的0很不好用,就不用了...

2021-03-10 14:39:37 3110

原创 Go安装数据库迁移工具goose

goose实现数据库迁移安装github : https://github.com/pressly/goose安装在go环境go get -u github.com/pressly/goose/cmd/goose生成文件# goose create [文件名] [文件后缀]goose create alarm_db_init sql

2021-03-07 21:11:38 649

原创 go:单元测试gomock和testing

项目组长让我写单元测试,不会写,学习如下好像写的很好,但是一开始没看懂,学习完如下面两篇文章就懂了使用Golang的官方mock工具–gomock所以找到如下这篇文章,写的通俗易懂使用 Gomock 进行单元测试安装go get github.com/golang/mock/gomockgo get github.com/golang/mock/mockgen例子摘抄在这里,以便复习使用tree ..── mock └── mock └── male_

2021-03-05 17:23:39 683

转载 GoLand 快捷键

GoLand 快捷键

2021-03-05 10:16:29 91 1

原创 Go 打印结构体(struct)信息:fmt.Printf(“%+v“, user)

转自:打印 Go 结构体(struct)信息:fmt.Printf("%+v", user)package main import "fmt" // 用户type User struct { Id int Name string Age int} func main() { user := User{Id:2, Name:"golang"} // 打印 结构体 fmt.Printf("%+v", user) // 输出换

2021-03-03 12:03:12 7449

原创 k8s 分布式资源锁 + 守护进程

我在写一个部署到k8s的守护进程时,同事说要写一个锁,防止起多个pod时多个守护进程都干活,所以需要分布式资源锁。[k8s源码分析][client-go] k8s选举leaderelection (分布式资源锁实现)golang 守护进程...

2021-02-26 18:06:29 837

原创 go定时任务

package mainimport ( "fmt" "github.com/robfig/cron" "time")func TestCron() { c := cron.New() i := 1 c.AddFunc("*/1 * * * *", func() { fmt.Println("每秒执行一次", i) i++ }) c.Start() defer c.Stop() //time.Sleep(time.Minute * 5) select { case

2021-02-26 09:43:39 199

原创 golang实现get和post请求的服务端和客户端

转载的一篇文章 golang实现get和post请求的服务端和客户端

2021-02-22 17:40:32 418

原创 Golang: 解析JSON数据

转载记录系列文章,作者 liuhe688Golang: 解析JSON数据之一Golang: 解析JSON数据之二Golang: 解析JSON数据之三Golang: 接收GET和POST参数

2021-02-20 11:30:24 162

原创 go总结: k8s的controller学习

本篇文章一共学习了三篇文章,简单记录一下参考1:浅析 Kubernetes 控制器的工作原理摘一个图,一句话。Kubernetes 水平触发的 API 实现方式是:监视系统的实际状态,并与对象的 Spec 中定义的期望状态进行对比,然后再调用 Reconcile 函数来调整实际状态,使之与期望状态相匹配。Kubernetes CRD (CustomResourceDefinition) 自定义资源类型里面有kubectl create -f crd.yaml摘抄一个图参考2:control

2021-02-07 16:26:49 450

转载 go总结:并发

主要学习了菜鸟编程: Go 并发总结:go func 可以起一个线程,轻量级的线程,线程之间采用chan进行传值。package mainimport "fmt"func sum(s []int, c chan int) { sum := 0 for _, v := range s { sum += v } c <- sum // 把 sum 发送到通道 c}func main() {

2021-02-05 17:57:06 123

原创 go总结:匿名函数

总结的含乱断言package mainimport ( "fmt")func main() { a := "along" var num interface{} num = a fmt.Println(a) value, ok := num.(string) if ok != false{ fmt.Println("ok") } fmt.Println(value)}输出alongokalong匿名函数package mainimport

2021-02-05 15:19:08 206

转载 go总结: context

学习知乎文章时的一个总结,便以以后复习:Go Context1. 保证两个 goroutine 同时做完,用sync.WaitGrouppackage mainimport ( "fmt" "sync" "time")func main() { var wg sync.WaitGroup wg.Add(2) go func() { time.Sleep(2 * time.Second) fmt.Println("1号完成") wg.Done() }() go

2021-02-04 16:49:33 87

原创 学习controller架构

首先参考:Kubernetes设计架构参考:k8s-client-go源码剖析(二)首先讲一个结论:通过Informer机制获取数据的情况下,在初始化的时候会从Kubernetes API Server获取对应Resource的全部Object,后续只会通过Watch机制接收API Server推送过来的数据,不会再主动从API Server拉取数据,直接使用本地缓存中的数据以减少API Server的压力。Watch机制基于HTTP的Chunk实现,维护一个长连接,这是一个优化点,减少请求的数

2021-02-03 10:47:19 224

原创 go总结: 反射+ Map和 Slice 的传递

Go语言反射(reflection)简述

2021-02-02 20:28:06 947

原创 go语言:json转换总结(json.Unmarshal、json.marshal)

Json(Javascript Object Nanotation)是一种数据交换格式,常用于前后端数据传输。任意一端将数据转换成json 字符串,另一端再将该字符串解析成相应的数据结构,如string类型,strcut对象等。下面是是四种json转为结构体1. 普通JSONpackage mainimport ( "encoding/json" "fmt")// Actress 女演员type Actress struct { Name string

2021-02-02 19:24:22 21460 2

原创 go语言读取文件

在Go读取文件返回字节流,不将所有内容自动转换为字符串的好处是可以避免昂贵的字符串分配,避免增加GC压力。为了使本文更加简单,我将使用string(arrayOfBytes)将bytes数组转换为字符串。 但是,在发布生产代码时一般不建议这么做。1.读取整个文件到内存中我们从os软件包中提供的os.open()开始。需知道:该文件必须容纳在内存中我们需要预先知道文件的大小,以便实例化一个足以容纳它的缓冲区。有了os.File对象的句柄,我们可以查询大小并实例化一个字节列表。package

2021-02-01 11:02:14 1462

原创 python生成和为1的随机数

python生成和为1的随机数import numpy as npa = list()for i in range(11): b = np.random.dirichlet(np.ones(10), size=1) b.sort() b = np.around(b, 4).tolist() b = b[0] b = b a.append(b)print(a)

2021-01-19 10:40:03 3584

原创 python 打whell包

python 打whell包创建setup.pyfrom setuptools import setup, find_packagessetup( name='DspLogin', version='1.0.4', packages=find_packages(), zip_safe=False, author='AI', description='DSP: An ML Login', classifiers=[ 'Progra

2020-12-01 16:24:25 87

原创 k8s总结:helm

pass

2020-11-12 17:31:22 74

原创 Django 事务transaction.atomic()的使用方法

from django.shortcuts import renderfrom django.http import HttpResponsefrom django.views.generic import Viewfrom django.db import transaction # 导入事务 # 类视图 (事务,@transaction.atomic装饰器)class MyView(View): @transaction.atomic # transaction.

2020-11-09 15:33:49 2264

转载 Django查找数据库objects.filter() 排序order_by Q()与或非 F()属性之间比较 聚合函数的用法

转载自Django查找数据库objects.filter() 排序order_by Q()与或非 F()属性之间比较 聚合函数的用法条件选取QuerySet的时候,filter表示=参数可以写查询条件,exclude表示!=,querySet.distinct() 去重复(除了get返回值都是QuerySet,可以继续调用所有函数)objects.filter()__exact 精确等于 like ‘aaa’ __iexact 精确等于 忽略大小写 ilike ‘aaa’__contains 包含

2020-11-09 15:07:45 1602

转载 为何要用sys.exit()退出?

Python有4个不同的退出程序的函数,exit(),quit(),os_exit()和本文要介绍的sys.exit()。exit()和quit()是一样的,它俩的功能基本上与sys.exit()一样,只有os._exit()有些简单粗暴。exit和quit函数这两个函数的作用,就是直接退出程序,可以带一个参数作为程序的返回码,如果不带参数,默认就是返回0.xinlin@ubuntu:~/test$ python3 -q>>> exit(111)xinlin@ubuntu:~/t

2020-11-06 11:04:48 8078

原创 python中的eval用法

eval 方法能使字符串本身的引号去掉,保留字符的原本属性。eval这个函数就是在返回它觉得正确的那个值。>>>str1 = "[{11,22},{22,33},{33,44},{44,55}]">>>type(str1)<class 'str'>>>>list1 = eval(str1)>>>list1[{11,22},{22,33},{33,44},{44,55}]>>>type(list

2020-11-02 12:28:17 527

转载 python错误捕获和with...as...

python中with…as的用法

2020-11-02 11:27:30 305

转载 Python pdb调试 (转载)

Python pdb调试在需要断点调试的地方,加上:import pdb;pdb.set_trace()h:打印当前版本pdb可用的命令,如果需要查询某个命令,可以输入 h [command]l:列出当前将要运行的代码块n:让程序运行下一行,如果当前语句有一个函数调用,用’n’是不会进入被调用的函数体中的s:与n类似,但如果当前有一个函数调用,那么s会进入被调用的函数体中c:让程序正常运行,直到遇到断点j:让程序跳转到指定的行数a:打印当前函数的参数p:打印某个变量(例如:p _new)

2020-10-30 10:24:26 65

原创 提交代码时,怎样写出简单明了的commit信息

常用的commit message 如下:optimize code :优化代码add:或 feature,表示添加新功能fix:缺陷修复 fix bughotfix:紧急的缺陷修复update:对已有功能进行更改或优化remove:或者 rm、delete,删除部分代码、功能refactor:重构了一些代码、功能workflow:工作流程更改chore:琐碎的修改整理了一个表格AddCreate a capabilitye.g. feature, te

2020-10-28 17:11:38 683

原创 python 中使用breast_cancer数据画图

导入数据import pandas as pdimport warningswarnings.filterwarnings("ignore")data = pd.read_csv('../data_sample/breast_cancer/breast_cancer-final.csv')data=data.drop(columns = ["id", "Unnamed: 32"])data.loc[data['diagnosis']=='M','diagnosis']=0data.loc[d

2020-10-28 16:13:35 1400 1

原创 python 画图-前面是iris降维,后面是网上找的一些3D图

iris数据画图from sklearn import svmfrom sklearn.externals import joblibimport numpy as npfrom dsp_sdk import *# 生成数据文件from sklearn.datasets import load_irisiris = load_iris()import pandas as pd# rename columnsiris.feature_names = ['sepallength', 's

2020-10-28 16:02:18 350

原创 Dockerfile中的关键字命令总结

DockerfileFROM python:3.6 # python版本MAINTAINER along [email protected] #作者信息WORKDIR /mnt # 规定工作目录ENV TZ=Asia/Shanghai # 时区规定为上海,下面为时间同步 # https://segmentfault.com/q/1010000005776163/a-1020000005792922 也是这么同步的RUN ln -snf /usr/share/zoneinfo/$TZ /e

2020-10-27 17:15:28 233 2

机器学习小炒打印版

机器学习总结的资料,200多个ppt,总结的很全面,希望能够啊帮助同学们,50字数够了吗?

2019-03-18

深度学习读书笔记 三. 限制波尔兹曼机 3.1 限制波尔兹曼机(RBM) 使用方法

深度学习读书笔记 三. 限制波尔兹曼机 3.1 限制波尔兹曼机(RBM) 使用方法 3.1.1 RBM 的使用说明 3.1.2 RBM 的用途 3.2 限制波尔兹曼机(RBM)能量模型 3.2.1 能量模型定义 3.2.2 能量模型作用 3.3 从能量模型到概率 3.3.1 从能量函数到概率

2018-08-11

NILM基于辅助线性整数规划的负荷分解论文

基于辅助线性整数规划的负荷分解,这是一篇论文,Load disaggregation based on aided linear integer programming (ALIP) is proposed. We start with a conventional linear integer programming (IP)-based disaggregation and enhance it in several ways. The enhancements include additional constraints, correction based on a state diagram, median filtering, and linear-programming-based refinement.

2018-08-11

机器学习实战

本书讲述重要的机器学习算法,并介绍那些使用这些算法的应用和工具,以及如何在实际环 境中使用它们。市面上已经出版了很多关于机器学习的书籍,大多数讨论的是其背后的数学理论, 很少涉及如何使用编程语言实现机器学习算法。本书恰恰相反,更多地讨论如何编码实现机器学 习算法,而尽量减少讨论数学理论。如何将数学矩阵描述的机器学习算法转化为可以实际工作的应用程序.

2018-06-21

Markdown 语法写作使用说明

Markdown基础语法规则,希望对朋友们有帮助,真的是在赚积分,哈哈哈,有点小无耻,但是没有积分很难受

2018-05-16

空空如也

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

TA关注的人

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