html:table属性以及html简单合并单元格应用

一、table的常用属性1.tr、td、th表格常用table标签来定义。tr来定义行、td来定义表格内容、th来定义表头。 姓名 年龄 性别 张三 17 男 李四 21 男 王晶 19 女 12345678910111213141516171819202122展示的效果如图所示: 加上th表头标签 姓名 年龄 性别 张三 17 男 李四 21 男 王晶 19 女 12345678910111213141516171819202122大多数浏览器表头显示为粗体居中的文本。效果如图所示: 2.边框属性border、cellspacing 、cellpadding2-1、border:边框。设置table的表格,默认为0,是没有表格的,如果不定义这个属性,表格是不会显示的,会呈现如下图所示:…

处理nginx启动错误Failed to read PID from file /run/nginx.pid

问题产生原因 因为 nginx 启动需要一点点时间,而 systemd 在 nginx 完成启动前就去读取 pid file造成读取 pid 失败 解决方法 让 systemd 在执行 ExecStart 的指令后等待一点点时间即可如果你的 nginx 启动需要时间更长,可以把 sleep 时间改长一点建立目录mkdir -p /etc/systemd/system/nginx.service.d 在新建目录中建立文件override.conf,输入内容 然后systemctl daemon-reloadsystemctl restart nginx.service

Systemd 入门教程:命令篇

作者: 阮一峰 日期: 2016年3月 7日 Systemd 是 Linux 系统工具,用来启动守护进程,已成为大多数发行版的标准配置。 本文介绍它的基本用法,分为上下两篇。今天介绍它的主要命令,下一篇介绍如何用于实战。 一、由来 历史上,Linux 的启动一直采用init进程。 下面的命令用来启动服务。 这种方法有两个缺点。 一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。 二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。 二、Systemd 概述 Systemd 就是为了解决这些问题而诞生的。它的设计目标是,为系统的启动和管理提供一套完整的解决方案。 根据 Linux 惯例,字母d是守护进程(daemon)的缩写。 Systemd 这个名字的含义,就是它要守护整个系统。 (上图为 Systemd 作者 Lennart…

Centos安装supervisor,守护Redis进程

前言   基于业务问题,项目中增加了redis,用于缓存和队列。但是现在只是在单服务器上安装部署,没有购买其他的像阿里云式的服务, 也没有搭建主从。   这样就导致了问题,如果redis进程意外卡死,那么业务就无法进行,这是不允许的,所以想到进程守护的东西,能自动监听,就想到了supervisor。  supervisor是一个客户机/服务器系统,它允许用户监视和控制unix操作系统上的许多进程。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。supervisort官网 1.安装supervisor 2.配置 supervisor 文件内容如下: 保存退出,启动supervisor supervisord -c /etc/supervisord.conf 查看supervisor是否启动成功:ps -ef|grep supervisord 到此,supervisor安装就完成了 3.supervisor管理 4.supervisor配置守护Redis 创建supervisor所需目录 创建redis进程守护文件:vi /etc/supervisord.d/conf.d/redis.ini redis配置文件需要修改: 更新文件配置 supervisorctl update 启动 supervisor redis 服务:supervisorctl start…

Error: rpmdb open failed

1、在centos系统上,在使用yum命令安装软件包时候报错:# yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el7.noarch.rpmerror: db5 error(11) from dbenv->open: Resource temporarily unavailableerror: cannot open Packages index using db5 – Resource temporarily unavailable (11)error: cannot open Packages database in /var/lib/rpmCRITICAL:yum.main: Error: rpmdb…

做为一名优秀的后端工程师-兼公司网管,这些 Linux 指令需要了解下

前言 本文收录了 linux 常用指令,这里面有个小技巧,基本上所有指令后面跟上 –h 可以显示其使用方法。故不必死记硬背,知其意乃通其形。 分类如下: 文件 & 目录操作(16 个) 查看文件 & 内容处理(18 个) 文件压缩 & 解压缩(3 个) 信息显示(11 个) 搜索文件(4 个) 进程管理(11 个) 用户管理(7 个) 网络操作(11 个) 磁盘…

Linux下tomcat JVM内存 配置

常见的内存溢出有以下两种: java.lang.OutOfMemoryError: PermGen space java.lang.OutOfMemoryError: Java heap space 一、java.lang.OutOfMemoryError: PermGen space PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中,它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的应用中有很多CLASS的话,就很可能出现PermGen space错误,这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。解决方法: 手动设置MaxPermSize大小建议:将相同的第三方jar文件移置到tomcat/shared/lib目录下,这样可以达到减少jar 文档重复占用内存的目的。 二、java.lang.OutOfMemoryError: Java heap space JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64…

配置tomcat服务器内存大小中的Xms、Xmx、PermSize、MaxPermSize 详解

JVM按照其存储数据的内容将所需内存分配为堆区与非堆区两个部分: 所谓堆区即为通过new的方式创建的对象(类实例)所占用的内存空间, 堆是运行时数据区域; 非堆区即为代码、常量、外部访问(如文件访问流所占资源)等。 配置堆区的(-Xms 、-Xmx、-XX:newSize、-XX:MaxnewSize、-Xmn) 配置非堆区(-XX:PermSize、-XX:MaxPermSize) 一. 堆区配置参数: 1、-Xms :表示java虚拟机堆区内存初始内存分配的大小,虚拟机在启动时向系统申请的内存的大小   2、-Xmx: 表示java虚拟机堆区内存可被分配的最大上限,通常为操作系统可用内存的1/4大小。但是开发过程中,通常会将 -Xms 与 -Xmx两个参数的配置相同的值,其目的是为了能够在java垃圾回收机制清理完堆区后不需要重新分隔计算堆区的大小而浪费资源。 如果虚拟机启动时设置使用的内存比较小而在这种情况下有许多对象进行初始化,虚拟机就必须重复地增加内存来满足使用。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx 相等以避免在每次GC 后调整堆的大小。而堆的最大值受限于系统使用的物理内存。一般使用数据量较大的应用程序会使用持久对象,内存使用有可能迅速地增长。当应用程序需要的内存超出堆的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃。因此一般建议堆的最大值设置为可用内存的最大值的80%。 说明:如果-Xmx 不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,此错误来自JVM,不是Throwable的,无法用try…catch捕捉。 -XX:newSize、-XX:MaxnewSize、-Xmn:新生代、中生代、老生代。java中每新new一个对象所占用的内存空间就是新生代的空间,当java垃圾回收机制对堆区进行资源回收后,那些新生代中没有被回收的资源将被转移到中生代,中生代的被转移到老生代。 1、-XX:newSize:表示新生代初始内存的大小,应该小于 -Xms的值; 2、-XX:MaxnewSize:表示新生代可被分配的内存的最大上限;当然这个值应该小于 -Xmx的值; 3、-Xmn:至于这个参数则是对 -XX:newSize、-XX:MaxnewSize两个参数的同时配置,也就是说如果通过-Xmn来配置新生代的内存大小,那么-XX:newSize =…

PVE Proxmox Tips

PVE Proxmox is Linux + KVM (or LXC) virtualization. It is freely available from: https://www.proxmox.com/en/downloads Tested version: pveversion pve-manager/5.1-41/0b958203 (running kernel: 4.13.13-2-pve) Notable highlights: HTML5/js web client – works from…