tomcat配置https(自签发)

文章目录 * 1 环境 * 2 生成密钥 * 3 配置tomcat * 4 测试 * 5 补充: 环境 JDK是jdk1.8 系统centos6.5 生成密钥 第一步:我们切换到jdk的bin目录下运行keytool生成证书和一对秘钥 [root@test1 bin]# ./keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore /root/https.keystore 输入密钥库口令: 再次输入新口令: 您的名字与姓氏是什么? [Unknown]: test1.com 您的组织单位名称是什么? [Unknown]: test1.com 您的组织名称是什么? [Unknown]: test1.com 您所在的城市或区域名称是什么? [Unknown]: CD 您所在的省/

logstash离线安装插件

生产环境的虚拟机不能联网;虽然logstash是开箱即用,即解压后就能使用,但是对于logstash-input-jdbc插件来说,一般是在线安装的(./logstash-plugin install logstash-input-jdbc) 就算你是在github上https://github.com/logstash-plugins/logstash-input-jdbc/下载源码,修改Gemfile,也要联网来安装。所以对于不能联网的机子来说必须使用 ./logstash-plugin install file:///path/to/logstash-input-jdbc.zip 这种方式来安装。但是官方并没有提供像x-pack一样的离线安装包。那么我们就需要在一台能联网的机子上先在线安装好logstash-input-jdbc插件,然后使用logstash-plugin命令里面的打包离线安装包命令将插件打包为离线的,再传送到生产环境就可以了,一下为步骤: 文章目录 * 1 1. 在一个能联网的机子上解压logstash后,我这里用的是5.5.3版本,在线安装

elasticsearch集群+logstash安装

文章目录 * 1 安装准备: * 2 安装elasticsearch: * 3 安装analysis-ik(分词插件) * 4 安装logstash 安装准备: ES版本:6.4.1 环境CentOS6, jdk版本1.8 安装elasticsearch: 下载解压ES文件 修改${es_home}/config/elasticsearch.yml 配置文件: #集群名称 cluster.name: aubin-cluster #节点名称 node.name: node1 #指定该节点是否有资格被选举成为master节点,默认是true, node.master: true #允许该节点存储数据(默认开启) node.data: true #数据的默认存放路径 path.data: /web/soft/

nf_conntrack: table full, dropping packet.告警

文章目录 * 1 背景 * 2 问题分析: * 3 处理办法: * * 3.0.1 关闭防火墙。 简单粗暴,直接有效 * 3.0.2 加大防火墙跟踪表的大小,优化对应的系统参数 * 4 扩展 背景 今晚数据库服务器收到到告警3306端口不通,登上服务器查看mysql进程正常,通过客户端也能正常连接,但是keepalived 一直检测说3306端口不通 检测日志/var/log/messages发现一直在打印”nf_conntrack: table full, dropping packet.” 通过网络查找资料,找到问题所在, 问题分析: 究其原因:nf_conntrack是一个内核模块,用于跟踪一个连接状态。连接跟踪状态可以供其他模块使用,例如state等,可通过以下查看 nf_conntrack模块会使用一个哈希表记录 tcp 通讯协议的

linux系统收到SYN但不回SYN+ACK问题排查

背景: 压力测试时发现一组服务器并发超过2000后就开始报错了。于是在出问题的server端抓包分析 发现问题如下: server端收到了本地pc发的SYN包,但是没有回syn+ack包,所以确认是server端系统问题。 通过google和百度查问题 发现有同样的人遇见这个问题: 是通过调整sysctl -w net.ipv4.tcp_timestamps=0或者sysctl -w net.ipv4.tcp_tw_recycle=0来解决这个问题,于是我就顺藤摸瓜继续查。 而在查询这两个参数的过程中,发现问题原因如下: 发现是 Linux tcp_tw_recycle/tcp_timestamps设置导致的问题。 因为在linux kernel源码中发现tcp_tw_recycle/tcp_timestamps都开启的条件下,60s内同一源ip主机的socket connect请求中的timestamp必须是递增的。经过测试,我这边centos6系统(kernel 2.6.32)和centos7系统(kernel

理解Linux CPU负载和 CPU使用率

文章目录 * 1 CPU负载和 CPU使用率 * 2 对于cpu负载的理解,首先需要搞清楚下面几个问题: * 3 CPU负载的一个类比 * 4 CPU负载-多处理器 * 5 CPU负载-多核处理器 * 6 系统负荷的经验法则 * 7 最佳观察时长 CPU负载和 CPU使用率 这两个从一定程度上都可以反映一台机器的繁忙程度. cpu使用率反映的是当前cpu的繁忙程度,忽高忽低的原因在于占用cpu处理时间的进程可能处于io等待状态但却还未释放进入wait。 平均负载(load average)是指某段时间内占用cpu时间的进程和等待cpu时间的进程数,这里等待cpu时间的进程是指等待被唤醒的进程,不包括处于wait状态进程。 以上分析可以看出,一台机器很有可能处于低cpu使用率高负载的情况,因此看机器的繁忙程度应该结合两者,从实际的使用情况观察,自己的一台双核志强2.8GHZ,2G内存的机器在平均负载到50左右,cpu使用率才接近100%(应用有不少io操作),这种情况下应用还算流畅,实际访问延迟不是很高。因此在cpu还空闲的情况下,如何提高io响

linux后台执行命令:&和nohup

文章目录 * 1 & * 2 nohup * 3 jobs * 4 2>&1解析 & 当在前台运行某个作业时,终端被该作业占据;可以在命令后面加上& 实现后台运行。例如:sh test.sh & 适合在后台运行的命令有f i n d、费时的排序及一些s h e l l脚本。在后台运行作业时要当心:需要用户交互的命令不要放在后台执行,因为这样你的机器就会在那里傻等。不过,作业在后台运行一样会将结果输出到屏幕上,干扰你的工作。如果放在后台运行的作业会产生大量的输出,最好使用下面的方法把它的输出重定向到某个文件中: command > out.file 2>&1 & 这样,所有的标准输出和错误输出都将被重定向到一个叫做out.file 的文件中。 PS:当你成功地提交进程以后,就会显示出一个进程号,可以用它来监控该进程,或杀死它。(ps -ef

python 装饰器

文章目录 * 1 简介 * 2 基本的装饰器 * 3 真正的装饰器 * 4 装饰有参函数 * 5 带参数的装饰器 简介 装饰器实际上就是为了给某程序增添功能,但该程序已经上线或已经被使用,那么就不能大批量的修改源代码,这样是不科学的也是不现实的,因为就产生了装饰器,使得其满足: 不能修改被装饰的函数的源代码 不能修改被装饰的函数的调用方式 满足1、2的情况下给程序增添功能 那么根据需求,同时满足了这三点原则,这才是我们的目的。因为,下面我们从解决这三点原则入手来理解装饰器。 装饰器的原则组成: < 函数+实参高阶函数+返回值高阶函数+嵌套函数+语法糖 = 装饰器 > 这个式子是贯穿装饰器的灵魂所在! 基本的装饰器 一般而言,我们要想拓展原来函数代码,最直接的办法就是侵入代码里面修改,例如: import time def func(): print("hello") time.sleep(1) print(

Python之列表生成式、生成器、可迭代对象与迭代器

文章目录 * 1 语法糖的概念 * 2 列表生成式 * 2.1 语法格式: * 2.1.1 工作过程: * 2.2 带过滤功能语法格式 * 2.2.1 工作过程: * 2.3 循环嵌套语法格式 * 2.3.1 工作过程: * 2.4 应用场景 * 3 生成器 * 3.1 生成器的作用 * 3.2 生成器的构造方式 * 3.3 生成器构造实例 * 3.3.1 使用类似列表生成式的方式构造生成器 * 3.3.2 使用包含yield的函数构造生成器 * 3.4

IO多路复用之select、poll、epoll版本二

目前支持I/O多路复用的系统调用有 select,pselect,poll,epoll,I/O多路复用就是通过一种机制,一个进程可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。 但select,pselect,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用户空间。 与多进程和多线程技术相比,I/O多路复用技术的最大优势是系统开销小,系统不必创建进程/线程,也不必维护这些进程/线程,从而大大减小了系统的开销。 文章目录 * 1 一、使用场景 * 1.1 二、select、poll、epoll简介 * 1.1.1 1、select * 1.1.2 2、