1.14 救援模式

运行级别0-6七个级别;0关机,1单用户不需要认证,2-3-4多用户命令行模式默认级别为3级别,5多用户图形操作界面,6重启。 单用户模式前提,grub用户没有加密或者知道grub密码,在安装的时候是否设置grub密码,但有的机器有grub密码时,我们可以用系统光盘或者系统U盘来操作;  1、加载光驱;(虚拟机操作时先要关闭虚拟机,真机直接把系统盘放到光驱即可)&nb
分类: 企业开发 发布时间: 06-07 22:27 阅读次数: 2

Springboot + gradle + websocket的简单使用

项目结构: 引入依赖: "org.springframework.boot:spring-boot-starter-websocket", "org.springframework.boot:spring-boot-starter-thymeleaf", 启动类: public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoAppli
分类: 其他 发布时间: 06-07 22:27 阅读次数: 5

1.15 克隆虚拟机

    克隆之前需要关闭虚拟机,init 0    修改主机名;  hostnamectl set-hostname shuxin-2 退出系统重新登录即可
分类: 企业开发 发布时间: 06-07 22:27 阅读次数: 2

Apache配置文件优化

修改配置文件:httpd.conf不显示版本号:
分类: 企业开发 发布时间: 06-07 22:27 阅读次数: 2

linux命令之tr用法

tr命令可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符,经常用来编写优美的单行命令,作用很强大。 语法 tr(选项)(参数) 选项 -c或——complerment:取代所有不属于第一字符集的字符; -d或——delete:删除所有属于第一字符集的字符; -s或--squeeze-repeats:把连续重复的字符以单独一个字符表示; -t或--truncate-set1:先删除第一字符集较第二字符集多出的字符。 参数 字符集1:指定要转换或删除的原字符集。当执行转
分类: 企业开发 发布时间: 06-07 22:27 阅读次数: 2

LVS笔记

## LVS Lvs:Lunix virtual server --Lunix 虚拟服务器 3大工作模式: NAT(Network Address translation --网络地址转换): LVS服务器充当转换器,把请求的地址和端口都改为后端对应的服务器地址和端口,服务器也响应回来Lvs服务器,Lvs服务器再响应客户端的请求; TUN(Tunneling - 隧道):Lvs接收到请求,把客户端的ip包装好发送到对应的节点服务器,节点服务器再解开ip后直接给客户端响应,不再通过Lvs服务器了
分类: 其他 发布时间: 06-07 22:27 阅读次数: 0

Https的握手流程

摘要: https
分类: 其他 发布时间: 06-07 22:27 阅读次数: 3

深入浅出NIO之Channel、Buffer

前言 Java NIO 由以下几个核心部分组成: 1 、Buffer 2、Channel 3、Selector 传统的IO操作面向数据流,意味着每次从流中读一个或多个字节,直至完成,数据没有被缓存在任何地方。 NIO操作面向缓冲区,数据从Channel读取到Buffer缓冲区,随后在Buffer中处理数据。 本文着重介绍Channel和Buffer的概念以及在文件读写方面的应用和内部实现原理。 Buffer A buffer is a linear, finite sequence of el
分类: 服务端 发布时间: 06-07 22:27 阅读次数: 7

深入浅出NIO之Selector实现原理

前言 Java NIO 由以下几个核心部分组成: 1、Buffer 2、Channel 3、Selector Buffer和Channel在深入浅出NIO之Channel、Buffer一文中已经介绍过,本文主要讲解NIO的Selector实现原理。 之前进行socket编程时,accept方法会一直阻塞,直到有客户端请求的到来,并返回socket进行相应的处理。整个过程是流水线的,处理完一个请求,才能去获取并处理后面的请求,当然也可以把获取socket和处理socket的过程分开,一个线程负责
分类: 服务端 发布时间: 06-07 22:27 阅读次数: 18

同步,异步,阻塞和非阻塞

首先来说下概念: 同步:调用方等待被调用方执行完成,才能继续执行,在被调用方执行期间,调用方会一直等待。 异步:通常是被调用方直接返回一个结果,告诉调用方,我们已经接收到任务了,然后再去慢慢的执行任务。调用方直接获取到了结果,就会继续执行后面的任务。 阻塞:调用方虽然可能已经知道被调用方已经获取到任务了,但是就是想要等待被调用方真正的执行完成。 非阻塞:调用方不关心,也不会等待被调用方完成任务,因为如果有需要,被调用方会来通知调用方。 以上是我对同步与异步,阻塞与非阻塞的个人理解,其实同步和异
分类: 服务端 发布时间: 06-07 22:27 阅读次数: 9

有状态的单点登录原理

登录: 1.客户端发起请求到服务端 2.服务端查看session是否登录,如果已经登录,那么就访问资源; 如果还没登录,那么重定向到认证中心,并携带服务URL; 3.认证中心查看该请求有没有全局会话, 如果有,那么就根据session的token,重定向到服务端,并携带token信息; 服务端获取到token信息,携带token、sessionid和登注销地址,去认证中心查证是否是有效token, 如果是,认证中心就把登出地址保存到数据库中,就创建回话,返回访问资源; 如果没有,把登录页面返回
分类: 服务端 发布时间: 06-07 22:27 阅读次数: 6

day7_集合,深浅copy

一、集合 集合是无序的,不重复的数据集合,其元素为可哈希(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)。以下是集合最重要的两点:   去重,把一个列表变成集合,就自动去重了。   关系测试,测试两组数据之前的交集、差集、并集等关系。 1、集合的创建 set1 = set({1,2,'barry'}) set2 = {1,2,'barry'} print(set1,set2) # {1, 2, 'barry'} {1, 2, 'barry'} 2、集合的增 set1 = {'
分类: 其他 发布时间: 06-07 22:22 阅读次数: 2

Python解码编码问题

一、先说说编解码问题 编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 Eg: 1 2 str1.decode('gb2312') #将gb2312编码的字符串转换成unicode编码 str2.encode('gb2312') #将unicode编码的字符串转换成gb2312编码 python2.7 idle GUI界面打印中文会出现乱码,这是idle本身问题:    cmd界面
分类: 其他 发布时间: 06-07 22:22 阅读次数: 2

Oracle 的jdbc方法

package com.swift.jdbc_oracle; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import org.junit.After; import
分类: 其他 发布时间: 06-07 22:22 阅读次数: 3

[Q&A] 解决 SBT 初始化或下载 jar 包速度慢的问题

原文地址:https://www.cnblogs.com/memento/p/9153012.html 在 C:\Users\用户名\.sbt 目录下添加一个 "repositories" 文件,注意没有后缀~ 补充如下内容: [repositories] local osc: http://maven.aliyun.com/nexus/content/groups/public typesafe: http://repo.typesafe.com/typesafe/ivy-rel
分类: 其他 发布时间: 06-07 22:22 阅读次数: 0

"javascript:" 伪协议与平稳退化

"javascript:"伪协议是一种非标准化协议,其可以让我们通过一个链接调用javascript 函数。例如:<a href="javascript:pop('http://www.xxx');">Example</a> 但是这样也有一些问题,那就是这种形式在支持伪协议的浏览器中可以使用,但是老旧的浏览器则会尝试打开这个链接并且报错。 同时随着一些用户操作‘禁用javascript’(不得不说,部分用户会禁用js以阻止一些网页弹窗,而一些浏览器可能也会有默认禁用),也会让这样的形式失效,这
分类: 其他 发布时间: 06-07 22:22 阅读次数: 0

Jmeter环境搭建与使用(Linux)

一、Linux上安装jdk(jdk版本>1.8,已安装的可以忽略) 使用命令:java -version,出现java版本表示已安装,如下图: 1.官网下载JDK,下载tar.gz格式jdk安装包:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2.下载后放到Linux上,将其解压到/usr/lib/jvm下: [root@localhost software]# mkdir
分类: 其他 发布时间: 06-07 22:22 阅读次数: 2

软件工程感想

整一个学期下来,总的来说还是学到了很多东西的,有很多地方是值得肯定的,其实在我看来,软件工程与其说是一门课程,不如说是一门思想。是一个如何去分析和处理问题的过程,应该说其范畴已经远远不止局限于该门课程,成为了一个综合的一个能够解决问题的思想集合。 整本书的内容逻辑很清晰明了,由浅入深循序渐进,首先我就大概描述下我们所学的内容,第一章是从整体分析软件工程这门学科的发展和所处的社会环境,接着后面的几章深入分析了软件开放过程和模式、软件项目管理、计算机工程、需求分析、结构化分析建模以及基于UML面向
分类: 其他 发布时间: 06-07 22:22 阅读次数: 2

BZOJ_3998_[TJOI2015]弦论_后缀自动机

BZOJ_3998_[TJOI2015]弦论_后缀自动机 Description 对于一个给定长度为N的字符串,求它的第K小子串是什么。 Input 第一行是一个仅由小写英文字母构成的字符串S 第二行为两个整数T和K,T为0则表示不同位置的相同子串算作一个。T=1则表示不同位置的相同子串算作多个。K的意义如题所述。 Output 输出仅一行,为一个数字串,为第K小的子串。如果子串数目不足K个,则输出-1 Sample Input aabc 0 3 Sample Output aab HINT
分类: 其他 发布时间: 06-07 22:22 阅读次数: 2

Objective--C语言预处理命令之条件编译(#ifdef,#else,#endif,#if等)

预处理过程扫描源代码,对其进行初步的转换,产生新的源代码提供给编译器。可见预处理过程先于编译器对源代码进行处理。 在C语言中,并没有任何内在的机制来完成如下一些功能:在编译时包含其他源文件、定义宏、根据条件决定编译时是否包含某些代码。要完成这些工作,就需要使用预处理程序。尽管在目前绝大多数编译器都包含了预处理程序,但通常认为它们是独立于编译器的。预处理过程读入源代码,检查包含预处理指令的语句和宏定义,并对源代码进行响应的转换。预处理过程还会删除程序中的注释和多余的空白字符。 预处理指令是以#号
分类: 其他 发布时间: 06-07 22:22 阅读次数: 2