- 博客(64)
- 资源 (4)
- 收藏
- 关注
原创 leetcode之路---递归回溯
概述把所有涉及到递归回溯的题目写在这篇文章之中每日一题2021/09/12 全排列题目要求全排列给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。示例 1:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]思考过程这个题目刚看到,这种有大量子问题,也就是说除掉一个元素,求数组里边其他元素的全排列,最后再把这个数字加回去的想法,自然而然就会想到直接递归,
2021-09-12 17:13:36
227
原创 k8s插件-coredns
概述自己的项目出现了使用自定义的域名无法访问到的问题,倒逼需要安装dns插件pod之间需要进行互相通信,又不想只是通过简单的service ip:port,(自然不能用pod的地址,pod日常死亡创建,ip不固定),解决ip地址改变,pod间通信的解决方案。安装名称:coreDNS,是k8s集群中的dns组件创建yaml文件,apply即可参考文章# Warning: This is a file generated from the base underscore template
2021-09-02 16:16:56
891
1
原创 k8s插件--ingress
下载yamlwget https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.18.0/deploy/mandatory.yaml---apiVersion: v1kind: Namespacemetadata: name: ingress-nginx---apiVersion: extensions/v1beta1kind: Deploymentmetadata: name: default-h
2021-09-02 13:11:22
472
原创 我的leetcode之路
概述写leetcode确实不是我想做的事情,有些抵触的情绪,毕竟自己的算法能力基本算是很弱鸡了,但是也知道这样的练习是有利的纠结许久还是打算用一篇长文来记录每天的刷题过程,一方面算是一个回顾,另外一方面也可以有个动力写写题,做做总结。每日一题2021/8/31 下一个排列题目要求https://leetcode-cn.com/problems/next-permutation/思考过程最原始的想法是既然需要进行找到下一个更小的数字,那么对于除了第一个数字之后的所有数字应该也是同样的问
2021-08-31 20:27:53
213
原创 k8s挂载数据卷
概述项目需要监控判题器和beego服务端的日志情况,不想使用浸入应用的方式,故而将judger的日志做数据卷映射到本机,启动logagent对日志进行收集配置yaml文件apiVersion: apps/v1kind: Deploymentmetadata: name: unioj-judger-deployment namespace: defaultspec: selector: matchLabels: app: unioj-judger repl
2021-08-30 11:25:29
845
原创 k8s指定node调度
概述在使用过程中,如果希望指定的pod放在自己希望的node节点上可以进行调度,选择对应的node节点。可以看出可以使用节点的ip地址或者是在node节点添加标签,让pod调度器使用selector进行选择,这里我将使用两种方法,将主服务的beego端放在node1上,将判题器的两个judger放在node2上,judger1使用ip选择,judger2使用lable选择。调度nodename调度apiVersion: apps/v1kind: Deploymentmetadata:
2021-08-30 10:11:17
2444
原创 k8s配置http健康探针Probe
apiVersion: apps/v1kind: Deploymentmetadata: name: unioj-judger-deployment namespace: defaultspec: selector: matchLabels: app: unioj-judger replicas: 1 template: metadata: labels: app: unioj-judger spec: r
2021-08-30 09:21:23
657
原创 k8s配置自动伸缩
概述在使用k8s容器的时候往往需要进行自动伸缩,满足系统的一些扩展的要求我的环境[root@k8s-master1 pods]# kubectl get podNAME READY STATUS RESTARTS AGEunioj-beego-deployment-6874449649-b8n27 1/1 Running 1 16hunioj-judger-dep
2021-08-27 11:35:45
2440
原创 分布式微服务常见问题
分布式id生成方案- uuid,数据库主键自增,redis自增id,雪花算法雪花算法id组成分布式锁在项目中的应用场景分布式锁解决方案redis分布式锁命令只用sernx还不够,还需要 set key value nx ex 10s,设置一下过期时间免得死锁,避免程序宕掉还没释放,别人就一直加不上锁reids做分布式锁死锁情况,如何解决加锁,却没有释放锁,需要加释放锁的操作,比如,delete key加锁后,程序没来得及释放锁,程序挂了,需要用key的过期机制redis
2021-08-24 19:52:29
422
原创 微服务组件之consul
微服务组件之consul概述在微服务中会有大量的函数,如果进行一对一的管理会很繁琐,所以需要一个管理发现的工具。consul是开源工具,用于实现分布式系统,服务发现和配置。安装https://blog.youkuaiyun.com/u013536232/article/details/1041372433consul角色client端:无状态,将http和dns接口的请求转发给局域网内的服务器集群server端:保存配置信息,高可用集群,在局域网内部与本地客户端进行通信,通过广域网与其他数据
2021-08-19 15:19:14
184
原创 微服务组件之grpc
微服务组件之grpc概述grpc是一个高性能、开源、通用的rpc框架,面向移动和http/2设计,带来诸如双向流、流控、头部压缩、单tcp连接的多复用请求等特点,简单来说可以认为是一个比http好用的协议。rpc即远程过程调用协议,通过网络从远程计算机进行请求,和web请求差不多,但是web请求是使用的http高层协议,而rpc使用的多是tcp协议,是网络层的协议减少了一部分信息的包装,加快了网络处理的速度。golang自有rpc包,可以用于构建rpc服务。rpc使用实例服务端pa
2021-08-19 11:16:47
655
原创 微服务组件之proto
微服务组件之protoprotobuf和平台、语言无关的一种序列化的数据格式,适合用来做数据存储和作为不同语言、应用、平台之间相互通信的数据格式,只要实现proto的不同语言版本,加入不同的工程中,其他语言就可以解析出序列化的数据,官网目前提供C++、Python、Java、Go。08年开源。格式对比json:一般的web项目中主要使用的是json,浏览器对json支持非常好,内建的函数支持。xml:在webservice中应用比较广泛,相比json会显得更加的荣誉,json使用键值对的
2021-08-18 15:54:08
530
原创 k8s基础
k8s核心技术kubectl概述是k8s集群的命令行共军,通过这个工具可以对集群本身进行管理,并且可以在集群上进行容器化的操作。基本语法kubectl [command] [TYPE] [NAME] [flags]command:指定对资源执行的操作,例如create get describe deletetype: 指定资源类型,资源的类型是大小写敏感的,开发者可以通过单数,复数,和缩略的形式name :指定资源的名称,也是大小写敏感的,如果省略名称就会显示所有flags:指定
2021-07-21 18:56:16
299
1
原创 dial tcp: lookup kafka:Temporary failure in name resolution
概述在使用"github.com/Shopify/sarama"连接kafka发送测试消息的时候出现dial tcp: lookup kafka:Temporary failure in name resolution解决:在/etc/hosts文件增加kafka的ip实例代码package mainimport ( "fmt" "github.com/Shopify/sarama")func main() { config := sarama.NewConfig() co
2021-07-18 20:57:56
1885
1
原创 外部ping不通Vmware docker容器
概述在docker容器内部可以ping通外网,使用ifconfig查询得到的ip却不能在物理机上ping通。现象原因docker容器是运行在docker虚拟机中的,宿主机上没有通往docker容器的路由。需要在宿主机上添加前往docker容器的路由。查询容器IP查询docker-compose启动的容器IP:docker inspect -f '{{.Name}} - {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(d
2021-07-12 17:33:54
1672
4
原创 Redis基础(待续)
Nosql概述why nosql单机mysql网站流量不大一个单机sql足够,更多的网站使用的是静态网页,服务器压力较小瓶颈:数据量太大,单机无法支持数据索引过大,内存放不下访问来给你(读写混合)缓存MemCached + Mysql + 垂直拆分读写分离分库分表 水平拆分 mysql集群MyISAM:表锁,影响效率Innodb:行锁慢慢开始使用分库分表 解决写的压力Mysql:集群比较好的解决这种问题...
2021-07-12 15:56:07
84
原创 什么是协程
概述随着GO的流行,协程概念讨论越来越多,用一篇文章记录协程协程线程在java中线程是一个重要概念,程序想要高性能高并发就离不开线程在使用线程中一般会用线程池,即用有限的线程执行大量并发任务,以期达到减少线程数量,线程创建、关闭、切换的开销。单单线程池还不足以支持高并发,在执行过程中有阻塞就会在一定程度上导致性能下降–>消除阻塞。阻塞原因:sleep、wait、IO(read、write)解决办法:io->NIO、sleep->回调(代码会被切分很多段,不符合人体工学难
2021-07-12 09:53:30
204
原创 2021-07-11回顾
本部分内容:Context单元测试pprof调试工具(代码cpu内存的信息)回顾:Sync.Mutex是一个结构体,值类型传参的时候要传指针 不然会i产生拷贝 变成两把锁两个方法:mutex.lock();mutext.unlock();为什么要用锁:防止多个groutine操作同一个互斥资源读写互斥锁:应用场景:适用与读多写少的应用场景特点:读的goroutine来了是读锁机 后续的能读不能写写的goroutine获取写锁,后续不管是读还是写都要等
2021-07-11 11:37:44
89
1
原创 Go解决TCP粘包
粘包tcp粘包:tcp是流式协议:发送包的时候一次可能没有发完可能给了下一次 nagle算法导致客户端发送的粘包,本意是为了改善客户端网络nagle算法该算法要求一个tcp连接上最多只能有一个未被确认的未完成的小分组,在该分组ack到达之前不能发送其他的小分组,tcp需要收集这些少量的分组,并在ack到来时以一个分组的方式发送出去;其中小分组的定义是小于MSS的任何分组; 该算法的优越之处在于它是自适应的,确认到达的越快,数据也就发哦送的越快;而在希望减少微小分组数目的低速广域网上,则
2021-07-10 11:28:20
1527
1
原创 mysql数据库(待续)
索引前置内容B树以作者R.Bayer命名 B+树使其改进B-树基本内容这是一颗二叉排序树,平衡二叉树,那么B树是平衡二叉树的扩展,即可以是多叉的,有多个关键字就会有多个分支,如下图标准B树:+ 每个节点至多有m个分支,而最少分支数要看是否为根节点,若是根节点且不是叶子节点则至少有2个分支,非根非叶节点至少有⌈m/2⌉\lceil m/2 \rceil⌈m/2⌉个分支,上图为5阶B树,47|48|52|59 4个数字将区间划分为5段(B树的阶数是人为规定的不以当前B树的情况而变化
2021-07-09 21:38:21
80
2
原创 k8s二进制安装部署超超详细指南
k8s安装部署详细指南概念什么是k8sK8s的功能k8s集群架构K8s部署步骤集群结构实验环境规划部署单master集群集群规划:初始化服务器关闭防火墙(所有节点都执行)关闭selinux(所有节点都执行)配置主机名称(所有节点都执行)配置名称解析 host文件(所有节点都执行)配置时间同步配置k8s-master1配置客户端 node1 node2关闭交换分区(会导致服务起不来)部署集群给etcd颁发证书部署etcd概念什么是k8sK8s是一组服务器集群 K8s所管理的集群节点上的容器K8s的
2021-07-09 19:32:27
4997
1
原创 vscode go t.Log不显示解决
配置好vscode的go开发环境之后,在默认情况下在控制台t.Log(a)是不会打印内容的,如:package fibnacimport ( "fmt" "testing")func TestFib(t *testing.T) { a := 1 b := 1 t.Log(a) fmt.Print("打印:",a) for i := 0; i < 5; i++ { t.Log(" ", b) tmp := a a = b b = tmp + a }}
2021-06-22 17:21:32
1752
原创 could not initialize proxy - no Session
这两天写SSH的时候,页面调用session参数报错,更蹊跷的是在debug运行该方法的时候可以正常运行,而正常跑的时候就报错,得不到对象里边的方法,数据库的一对多的。后边root 是:could not initialize proxy - no Session这个错之前写过,是session关闭的问题,但是项目中已经配置了OpenSessionInView的过滤器,进一步考虑是懒加载的...
2019-02-15 12:25:30
393
1
原创 Struts2 Action报错java.lang.StackOverflowError
报错的是这样的Method “findAll” failed for object cn.Express.web.action.BasesAction@1f8b7ab7gnl.MethodFailedException: Method "findAll" failed for object cn.Express.web.action.BasesAction@1f8b7ab7 [java.lan...
2019-02-14 21:57:03
300
原创 SSH框架 could not initialize proxy - no Session
could not initialize proxy - no Session解决概述概述这个错的触发是在SSH框架中,从一个action中查询完数据库之后去调用另外一个action查询完数据库要使用session的时候ServletActionContext.getRequest().getSession().setAttribute("commentList", commentlist)...
2019-02-01 23:55:11
335
原创 Tensorflow基础
简介安装tensorflow 这玩意是google的 which means we need VPN!安装tensorflow的教程网上一把把的,具体的就不说了。只是简单说一下,分类,机器学习,深度学习这些火起来的一部分原因就是因为近年来计算能力的大幅提高,而这其中,和GPU分不开,要安装GPU版本什么的百度啦。在conda里边选一个环境pip安装一下就行了,类似于一个package(个人...
2018-12-26 22:37:11
144
原创 机器学习算法 线性回归 正规式 梯度下降 岭回归
# 波士顿房价数据集from sklearn.datasets import fetch_california_housing, load_boston# 线性回归 (正规方程 梯度下降)from sklearn.linear_model import LinearRegression, SGDRegressorfrom sklearn.model_selection import tra...
2018-12-23 22:56:52
489
原创 机器学习 决策树 随机森林算法
决策树概念有关决策树的理论参考:https://blog.youkuaiyun.com/gunhunti4524/article/details/81506012不再赘述要注意的是,sklearn默认使用的是 基尼系数同是介绍一个数据集网站http://biostat.mc.vanderbilt.edu/wiki/Main/DataSets示例代码# 决策树APIfrom sklear...
2018-12-23 10:53:37
248
原创 机器学习 使用交叉验证为KNN调优参数
# KNN的距离算法 使用的是欧氏距离 即算空间中点的距离 (根号下的 差的平方和)# 要注意的是knn算法是需要做 标准化处理的# API:(参数:n_neighbors=5)默认使用5个邻居 邻居的数量对算法的结果有影响 数量越大则要判断的点越多from sklearn.neighbors import KNeighborsClassifierimport pandas as p...
2018-12-23 00:07:07
1715
原创 机器学习算法 朴素贝叶斯
一切尽在代码中python自己下载数据集 是真的慢…from sklearn.datasets import fetch_20newsgroupsfrom sklearn.model_selection import train_test_splitfrom sklearn.feature_extraction.text import TfidfVectorizerfrom sklear...
2018-12-22 22:55:38
169
原创 python3使用sklearn自己的数据
即使用load_ 加载安装sklearn时已经装好的数据集# 导入花的数据集from sklearn.datasets import load_iris# 导入模型划分(划分训练集 测试集)from sklearn.model_selection import train_test_split'''sklearn.datasets加载获取流行数据集datasets.load_*()...
2018-12-22 22:17:56
3774
1
原创 机器学习算法 -- KNN
概念KNN属于分类算法.如果一个样本在特征空间中的k个最相似(即特征空间最相近)的样本大多数属于某一个类别,则该样本也属于这个类别.示例代码示例代码使用的是kaggle上的facebook数据集,根据已有的数据,预测新的人员入酒店id# KNN的距离算法 使用的是欧氏距离 即算空间中点的距离 (根号下的 差的平方和)# 要注意的是knn算法是需要做 标准化处理的# API:(参数:...
2018-12-22 16:27:10
131
原创 机器学习 --2 特征预处理 之 数据将维
特征选择概念特征选择就是单纯地从提取到的所有特征中选择部分特征作为训练集特征,特征在选择前和选择后可以改变值、也不改变值,但是选择后的特征维数肯定比选择前小,毕竟我们只选择了其中的一部分特征。方差过滤式# 按照方差过滤from sklearn.feature_selection import VarianceThreshold# 特征选择第一种方式:过滤式# 方差特征选...
2018-12-21 21:11:32
210
原创 机器学习 --2 特征预处理 之 数据标准化
归一化:API位置sklearn.preprocessing归一化:特点:通过对原始数据进行变换把数据映射到(默认为[0,1])之间注意也可以通过指定MinMaxScalar 里边的feature_range 来指定缩放的范围示例代码from sklearn.preprocessing import MinMaxScaler# 归一化# 最小最大缩放(MinMaxS...
2018-12-21 20:16:39
1052
原创 机器学习 -- 1 特征抽取
1 概述使用Scikit-learn提供的特征抽取API进行特征的抽取字典特征抽取from sklearn.feature_extraction import DictVectorizer# 1 实例化DictVectorizerdef dicvec(): # 实例化: # 默认sparse为True打印出sparse矩阵类型用以节约内存 ''' ...
2018-12-20 22:16:28
175
原创 python3 numpy详解
基础操作import numpy as np# np创建数组a = np.array([1,2,3])print(a)print(type(a))a2 = np.array(range(10))print(a2)print(type(a2))# numpy特有的方法 生成一个数组类型 与array(range())一致a3 = np.arange(0,12,2)print...
2018-12-17 22:53:21
674
原创 python3使用matplotlib绘制直方图
频数分布直方图代码from matplotlib import pyplot as pltfrom matplotlib import font_managera = [131, 98, 125, 131, 124, 139, 131, 117, 128, 108, 135, 138, 131, 102, 107, 114, 119, 128, 121, 142, 127, 130,...
2018-12-15 20:39:50
4237
原创 python3使用matplotlib绘制条形图
绘制竖状条形图代码from matplotlib import pyplot as pltfrom matplotlib import font_managermy_font = font_manager.FontProperties(fname="/usr/share/fonts/truetype/arphic/ukai.ttc")a = ["战狼2", "速度与激情8", "...
2018-12-15 19:43:54
3032
原创 python3使用matplotlib绘制散点图,并标注图例,轴
python3使用matplotlib绘制散点图,并标注图例,轴代码效果图:代码from matplotlib import pyplot as pltfrom matplotlib import font_manager# 使得中文可以显示出来my_font = font_manager.FontProperties(fname="/usr/share/fonts/truetype/...
2018-12-15 18:53:19
20375
网上商城web项目||含数据库||所需图片||前台页面||可实现购物车||银行支付等等等等||有问题可随时联系
2018-08-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人