- 博客(179)
- 收藏
- 关注
原创 python对数组进行排序后对应的索引值
python对数组进行排序,并输出排序后对应的索引值+1测试用例:输入:31 4 5输出:1 2 3方法一:通过匿名函数实现n = int(input())list1 = input().split()list2 = list(map(int, list1))p=[]res=sorted(range(len(list2)), key=lambda k: list2[k])for i in res: p.append(i+1)print (p) # 正序输出索引,从小到大
2021-08-23 21:09:09
882
原创 Redis-cluster集群的部署
这里写目录标题一级目录二级目录三级目录提供在间节点间共享一级目录二级目录三级目录提供在间节点间共享Redis 集群是一个提供在多个Redis间节点间共享数据的程序集。Redis集群并不支持处理多个keys的命令,因为这需要在不同的节点间移动数据,从而达不到像Redis那样的性能,在高负载的情况下可能会导致不可预料的错误.Redis 集群通过分区来提供一定程度的可用性,在实际环境中当某个节点宕机或者不可达的情况下继续处理命令. Redis 集群的优势:自动分割数据到不同的节点上。整个集群的
2021-08-01 15:07:13
906
原创 redis启动的警告日志解决方案
redis启动时,出现警告日志:原因是redis缓存的数据过多,没有提前做好数据过期策略,导致超过物理机的实际内存。需要修改计算机内存策略(1)警告描述:不能设置tcp的堆积为511,因为/proc/sys/net/core/somaxconn的值为128太低。报错:WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower val
2021-08-01 15:03:40
1142
原创 Redis主从、哨兵模式的部署
实验环境:yum install gcc-c++.x86_64 -yredis-5.0.8.tar.gztar zxf redis-5.0.8.tar.gzcd redis-5.0.8/makemake installwhich redis-clinetstat -antlp |grep :6379vim /etc/redis/6379.conf/etc/init.d/redis_6379 restartnetstat -antlp |grep :6379redis-cl
2021-08-01 15:03:22
448
原创 Redis各版本的特性及架构
Redis3.0:(1) 支持redis-cluster(2) Redis日志小做调整:日志中会反应当前实例的角色(master或者slave)(3) migrate连接缓存,大幅提升键迁移的速度(4) cinfig set设置maxmemory时候可以设置不同的单位(之前只能是字节)(5) 新的client pause命令,在指定时间内停止处理客户端请求Redis3.2(1) 支持用upstart(init系统)或者systemd管理Redis进程。(2) 添加GEO相关功能(支持存储地理
2021-07-29 21:35:10
3702
原创 HA集群脑裂原因和预防
报错:Network partition detected,Mnesia reports that this RabbitMQ cluster has experienced a network partition.日志信息:Jul 14 14:04:30 k8s-master Keepalived_vrrp[27774]: /etc/keepalived/haproxy_check.sh exited with status 1原因:集群脑裂从裂脑中恢复:(1)首先选择一个最信任的分区。这个分区将
2021-07-26 20:36:02
1229
原创 SSD和HDD的介绍
SSD和HDD的介绍1 硬盘的性能指标2 HDD(机械硬盘)2.1 HDD的介绍2.2 HDD的接口2.2.1 并 行接口(LPT接口)2.2.2 串行接口(COM接口)2.2.3 FC(光纤通道技术)3 SSD(固态硬盘)3.1 SSD的介绍3.2 接口类型3.2.1 SATA接口3.2.2 mSATA接口3.2.3 M.2接口3.2.4 PCI-E接口3.2.5 U.2接口3.3 SSD的存储介质3.3.1 闪存颗粒的分类1 硬盘的性能指标容量: 以兆字节(MB)或千兆字节(GB)为单位,1GB=1
2021-07-26 20:35:32
10506
1
原创 服务器的分类和内存类型
服务器的分类和内存类型1 按架构划分1.1 CISC架构服务器1.2 RISC架构服务器2 按外形划分2.2 塔式服务器2.3 刀片服务器3 服务器的内存类型1 按架构划分按服务器的处理器架构(也就是服务器CPU所采用的指令系统)划分把服务器分为CISC架构服务器、RISC架构服务器1.1 CISC架构服务器(1)CISC(Complex Instruction Set Computer,即“复杂指令系统计算机)在CISC微处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串
2021-07-26 20:35:18
1622
1
原创 RabbitMQ脑裂问题
1 RabbitMQ的GUI界面报错报错: Network partition detected,Mnesia reports that this RabbitMQ cluster has experienced a network partition.日志信息:Jul 14 14:04:30 k8s-master Keepalived_vrrp[27774]: /etc/keepalived/haproxy_check.sh exited with status 1如果一个节点在一段时间内(默认是6
2021-07-26 20:35:00
2637
原创 解决rabbitmq中Error on AMQP connection
rabbitmq报错2021-07-13 15:35:15.225 [error] <0.3790.0> Error on AMQP connection <0.3790.0> (10.108.27.239:65022 -> 10.80.65.31:5672, state: starting):PLAIN login refused: user 'admin' - invalid credentials2021-07-13 15:35:15.226 [info] &l.
2021-07-26 20:34:44
19433
原创 Erlang和RabbitMQ的部署
1 下载erlang安装包官网:https://www.erlang.org/2 安装erlang(1)解压安装包:tar -zxf otp_src_22.3.tar.gzmv otp_src_22.3 erlang(2)创建安装目录:mkdir /usr/local/erlang(3)解决依赖 yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutil
2021-07-14 20:18:47
560
2
原创 RabbitMQ集群高可用的部署
#---------------------------------------------------------------------# Example configuration for a possible web application. See the# full configuration options online.## http://haproxy.1wt.eu/download/1.4/doc/configuration.txt##-----------------
2021-07-14 20:10:25
454
1
原创 错误修改了/etc/profile文件(环境变量错误)
1 错误修改了/etc/profile文件导致常用命令(ls、vim等)都无法使用:2 解决方法: export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin3 将/etc/profile错误的修改的地方删除即可解决
2021-07-12 23:13:39
1391
3
原创 一文了解消息中间件---RabbitMQ
消息中间件---RabbitMQ1 消息中间件的作用2. 常用的消息中间件3 消息中间件RabbitMQ3.1 RabbitMQ介绍3.3 RabbitMQ的队列模式3.3 RabbitMQ的工作模式4 RabbitMQ集群4.1 节点类型4.2 普通集群4.3 镜像模式4,4 远程模式(shovel)4.5 多活模式5 Rabbitmq的确认机制5.1 自动ack5.2 手动ack1 消息中间件的作用消息中间件作用有三个:异步处理消息、降低耦合度、流量削峰。2. 常用的消息中间件当前使用较多的消息
2021-07-09 23:49:07
528
3
原创 leecode刷题----加一,只出现一次的数字,多数元素
给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。输入:digits = [1,2,3]输出:[1,2,4]解释:输入数组表示数字 123class Solution: def plusOne(self, digits: List[int]) -> List[int]: num=0 for i in range(l
2021-05-24 10:16:30
165
原创 leecode刷题----整数反转(python)、删除有序数组中的重复项
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321def reverse( x: int) -> int: s = str(abs(x)) ## 负数取绝对值 if s[-1] == '0': ## 判断最后
2021-05-21 11:08:02
230
原创 在同一行内输入n个数并用列表保存--python
n = int(input())list1 = []list1 = input().split()list2 = []i = 0while i < n: m = int(list1[i]) list2.append(m) i += 1print(list2)控制台:2 1 4[1, 4]
2021-05-17 10:19:16
1818
原创 leecode刷题----(python)判定字符是否唯一(217)
实现一个算法,确定一个字符串 s 的所有字符是否全都不同。示例 1:输入: s = "leetcode"输出: false 示例 2:输入: s = "abc"输出: true解题思路:创建一个数组,遍历字符串,取字符i,如果数组中i元素则将该元素存入数组,负责返回False;class Solution: def isUnique(self, astr: str) -> bool: list1=[] for i in (astr):
2021-05-16 22:19:32
370
原创 leecode刷题---有效的括号(python)
有效的括号1 题目描述2 解题思想3 代码实现1 题目描述给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。2 解题思想引入栈的思想:遍历字符串 1)左括号全都入栈 2)遇到右括号就出栈,然后匹配是否合适 3)最后判断栈内元素是否为空(左括号元素和右括号完全匹配)3 代码实现class Solution: def isVal
2021-05-14 12:57:25
225
原创 leecode刷题----两数之和(一)
1. 题目表述给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。2. 暴力法class Solution(object): d
2021-05-11 16:46:19
142
2
原创 python实现简单的排序算法
python实现简单的排序算法1 冒泡排序1.1 算法步骤:1.2 算法实现1.3 算法优化2 选择排序2.1 算法步骤2.2 算法实现3 插入排序3.1 算法步骤3.2 算法实现4 快速排序4.1 算法描述4.2 算法实现4 四种排序算法的比较1 冒泡排序1.1 算法步骤:比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上
2021-05-08 19:27:59
1227
11
原创 ELK+kafka分布式日志采集分析
kafka是一个发布订阅消息系统,由topic区分消息种类,每个topic中可以有多个partition,每个kafka集群有一个多个broker服务器组成,producer可以发布消息到kafka中,consumer可以消费kafka中的数据。kafka就是生产者和消费者中间的一个暂存区,可以保存一段时间的数据保证使用zookeeper作为解决分布式一致性问题的工具而被kafka依赖。而分布式模式,即去中心化的集群模式,需要让消费者知道现在有哪些生产者(对于消费者而言,kafka就是生产者)是可用的。如
2021-04-27 16:32:30
1721
原创 解决启动多个logstash的conf文件报错:Logstash could not be started because there is already another instance
1.报错信息Sending Logstash logs to /var/log/logstash which is now configured via log4j2.properties[2021-04-26T15:01:55,983][WARN ][logstash.config.source.multilocal] Ignoring the 'pipelines.yml' file because modules or command line options are specified[202
2021-04-26 15:35:48
1396
原创 logstash到kafka:生产者发送的消息过大的报错
1.报错提示KafkaProducer.send() failed: org.apache.kafka.common.errors.RecordBatchTooLargeException: The request included message batch larger than the configured segment size on the server. {:exception=>java.util.concurrent.ExecutionException: org.apache.k
2021-04-26 15:23:57
1566
原创 Linux安装google浏览器(RHEL8)--小白教程
Linux安装google浏览器(google)1 安装google软件2 启动goole浏览器1 安装google软件(1)yum仓库文件:/etc/yum.repos.d/goole.repo[google64]name=Google- x86_64baseurl=http://dl.google.com/linux/rpm/stable/x86_64enabled=1gpgcheck=1gpgkey=https://dl-ssl.google.com/linux/linux_signi
2021-04-20 16:36:56
1374
1
原创 解决Win10系统激活office2019时出现 0xc004f074 无法激活问题,亲测可用!!!
Windows 10 系统出现 0xc004f074 无法激活解决方案在win10上卸载老版本的office后,再次安装新版的office,激活时不成功,报错信息是 0xc004f074检查了我的电脑,时区和网络并没有问题,产生这个问题的原因是旧版office的注册表没有删除,以下是解决这个问题的方法,亲测可用!(1)卸载旧的office软件(2)清除密钥和注册表信息:输入cmd,以管理员身份进入控制台输入命令: slmgr /upk 卸载 Windows 10 密钥,弹出对话框点击确
2021-04-16 20:07:26
39032
7
原创 Haproxy+pacemake+fence实现高mycat的可用
1 Haproxy的部署1.1 安装xinetd(server7、server8)Mycat服务主机(server7、server8)上需要增加Mycat服务的状态检测脚本,并开放相应的检测端口,以提供给Haproxy对Mycat的服务状态进行检测判断。可以使用xinetd来实现,通过xinetd,Haproxy可以用httpchk来检测Mycat的存活状态。(xinetd即extended internet daemon,xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器。经
2021-04-15 20:26:08
185
原创 Linux中最好用的截图软件----Flameshot的安装和使用(RHEL8)
[Aliyun]name=aliyunbaseurl=https://mirrors.aliyun.com/epel/8/Everything/x86_64/gpgcheck=0
2021-04-14 16:07:20
520
原创 Mysql集群(四)------Mycat 监控工具Mycat-web
http://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gzwget http://dl.mycat.org.cn/mycat-web-1.0/Mycat-web-1.0-SNAPSHOT-20170102153329-linux.tar.gz
2021-04-14 15:51:01
476
原创 Mysql集群------(三)Mycat的垂直水平分库
垂直分库:按照不同 的表(或者 Schema)来切分到不同的数据库(主机)之上,这种切可以称之为数据的垂直切分水平分库:根据表中的数据的逻辑关系,将同一个表中的数据按照某种条 件拆分到多台数据库(主机)上面,这种切分称之为数 据的水平切分垂直分库的特点:规则简单,实施方便,适用于各业务之间的耦合度非常低, 相互影响很小,业务逻辑非常清晰的系统。在这种系统中,通过将不同业务模块的表分拆到不同的数据库中。根据不同的表来进行拆分,对应用程序的影响也更小, 拆分规则简单。水平切分比垂直切分复杂。原因是将同一个
2021-04-14 15:49:58
368
原创 Mysql集群(二)-----Mycat(读写分离)+LVS(负载均衡)+keepalived(高可用)的部署
Mycat+LVS+keepalived的部署1 Mycat的部署1.1 JDK的部署1.2 安装Mycat(server7、server8)2 安装xinetd(server7、server8)3 LVS和keepalived实现mycat集群的高可用3.1 LVS的部署3.2 Keepalived的部署Mycat-web 是 Mycat 可视化运维的管理和监控平台,弥补了 Mycat 在监控上的空白。帮 Mycat 分担统计任务和配置管理任务。Mycat-web 引入了 ZooKeeper 作为配
2021-04-14 13:10:23
580
原创 Mysql集群(一)-----Mysql双主双从复制
Mysql双主双从1 Mysql双主双从的部署2 双主双从测试一主多从架构可以缓解读的压力,但是一旦主宕机了,就不能写了。所以我们可以采用双主双从架构1 Mysql双主双从的部署(1)源码编译安装mysql5.7参考博客:https://blog.youkuaiyun.com/qq_41582883/article/details/112396592(2)编辑mysql配置文件:/etc/my.cnfserver1[mysqld]datadir=/data/mysqlsocket=/data/mys
2021-04-13 17:27:06
173
1
原创 MHA高可用配置与故障切换
主从复制节点间的免密server4:ssh-keygenserver4和123三个节点免密 ssh-copy-id server1 ssh-copy-id server2 ssh-copy-id server3server1、server2、server3之间互相免密 scp -r .ssh/ server1: scp -r .ssh/ server2: scp -r .ssh/ server3:为保证实验环境的纯净,server1、server2、server3三个节点:
2021-04-03 16:00:21
227
1
原创 MySQL-----(二)半同步、延迟及并行复制
server1为主server2为辅server3为server的辅助上篇博客我们已经配置了server2为server1的辅数据库,这篇博客将在上篇博客的基础上介绍线性的,即server为server1的辅助,server2作为server3的辅助实验的前提保证部署前server3和server2的数据库必须保持一致因为server2中比server3中只多了linux库,故备份server2中的linux库mysqldump -p linux --set-gtid-purged=OFF
2021-04-03 15:59:53
390
2
原创 MySQL---(一)mysql5.7的源码编译安装、主从复制GTID复制
https://cmake.org/download/yum install cmake3-3.6.1-2.el7.x86_64.rpm -yyum install jsoncpp-0.10.5-2.el7.x86_64.rpm jsoncpp-devel-0.10.5-2.el7.x86_64.rpm -yyum insatll cmake3-3.6.1-2.el7.x86_64.rpm cmake3-data-3.6.1-2.el7.noarch.rpm -ytar zxf mysql-boo
2021-04-03 15:41:00
474
2
原创 ELK---(五)启用xpack安全验证
[root@server1 ~]# cd /usr/share/elasticsearch/[root@server1 elasticsearch]# lsbin jdk lib LICENSE.txt modules NOTICE.txt plugins README.asciidoc[root@server1 elasticsearch]# bin/elasticsearch-certutil caThis tool assists you in the generation of
2021-04-02 19:39:40
532
原创 ELK-------(四)Filebeat日志采集器的部署
1 Filebeat的简介(1)Beats和filebeatfilebeat是Beats中的一员,Beats是一个轻量级日志采集器,Beats家族有6个成员,早期的ELK架构中使用Logstash收集、解析日志,但是Logstash对内存、cpu、io等资源消耗比较高。相比Logstash,Beats所占系统的CPU和内存几乎可以忽略不计。目前Beats包含六种工具:Packetbeat:网络数据(收集网络流量数据)Metricbeat:指标(收集系统、进程和文件系统级别的CPU和内存使用情况等数
2021-04-02 18:20:55
228
原创 ELK-----(三)Kibana 数据可视化平台的部署
vim /etc/kibana/kibana.ymlsystemctl start kibana.servicenetstat -antlp|grep :560logstash -f /etc/logstash/conf.d/apache.conffilebeat部署(1)Beats和filebeat、filebeat是Beats中的一员,Beats是一个轻量级日志采集器,Beats家族有6个成员,早期的ELK架构中使用Logstash收集、解析日志,但是
2021-04-02 17:41:36
192
原创 ELK------(二)Logstash的部署
1 logstash简介Elasticsearch是当前主流的分布式大数据存储和搜索引擎,可以为用户提供强大的全文本检索能力,广泛应用于日志检索,全站搜索等领域。Logstash作为Elasicsearch常用的实时数据采集引擎,可以采集来自不同数据源的数据,并对数据进行处理后输出到多种输出源,是Elastic Stack 的重要组成部分。1.1 Logstash的原理Logstash的数据处理过程主要包括:Inputs, Filters, Outputs 三部分, 另外在Inputs和Output
2021-04-02 17:41:25
771
原创 一文搞定python绘折线图(标题,自定义刻度范围,xy轴刻度值的大小,垂直xy轴的虚线,标签,图例)
1 python绘图的基础知识1.1 plot函数线条风格线条颜色线条标记2 绘图实例import matplotlib.pyplot as pltfrom pylab import mplmpl.rcParams['font.sans-serif'] = ['STZhongsong'] # 指定默认字体:解决plot不能显示中文问题mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题x1
2021-03-31 13:48:44
10981
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人