11 xiangjai

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 3k+

并发编程(原子性、可见性、一致性)

1、原子性(Atomicity)原子性是指在一个操作中就是cpu不可以在中途暂停然后再调度,既不被中断操作,要不执行完成,要不就不执行。如果一个操作时原子性的,那么多线程并发的情况下,就不会出现变量被修改的情况比如 a=0;(a非long和double类型) 这个操作是不可分割的,那么我们说这个操作时原子操作。再比如:a++; 这个操作实际是a = a + 1;是可分割的,所以他不是一个原子操作。非原子操作都会存在线程安全问题,需要我们使用同步技术(sychronized)来让它变成一个原子操作

2020-09-16 16:17:06

HTTP协议简介/数据包封装/三次握手/DNS解析

HTTP协议简介/数据包封装/三次握手/DNS解析1.浏览器背后的故事 2.HTTP 3.透过TCP/IP看HTTP 4.数据包的封装过程 5.传输层--TCP三次握手 6.DNS域名解析 DNS 域名解析协议的工作原理 递归式 迭代式 7.HTTP事务处理过程 实验---对于浏览器来说HTTP请求到底是什么样子1.浏览器背后的故事解释:打给小红,由姓名的代号来记录, 小红就是域名,电话号就是IP地址,共同语言(比如英语,汉语这些)就是HTTP协议渲染:浏览器收.

2020-09-15 14:16:43

一次完整的HTTP请求过程

前言当我们在web浏览器的地址栏中输入:www.baidu.com,具体发生了什么?概述对www.baidu.com这个网址进行DNS域名解析,得到对应的IP地址 根据这个IP,找到对应的服务器,发起TCP的三次握手 建立TCP连接后发起HTTP请求 服务器响应HTTP请求,浏览器得到html代码 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等)(先得到html代码,才能去找这些资源) 浏览器对页面进行渲染呈现给用户 服务器关闭关闭TCP连接注:1.

2020-09-15 09:16:26

openstack实战入门-Cinder相关(三)

文章为截图,方面自己查看

2020-05-04 15:11:40

openstack 虚地址创建

步骤: 一、登陆到openstack后台,根据路径 项目->网络→网络, 找到对应网络 二、进入网络详情界面,创建端口 三、根目录(环境变量所在目录),执行环境变量 [root@controller ~]# source admin-openrc 四、执行neutron port-l...

2020-05-03 11:17:35

制作openstack系统镜像

1.环境介绍 采用环境如下: 主机:CENTOS 7 工具:QEMU+KVM 镜像类型:CentOS7 工具:VNC-Client、系统镜像ISO或者IMG格式等,我这里是CentOS-7-x86_64-Minimal-1810.iso 2. 制作环境前准备工作 1> 虚拟化环境准备 ...

2020-05-03 11:06:09

openstack 用cloud-init制作的镜像root无法登陆问题

Centos7镜像时,cloud-init安装版本为 0.7.2 , 安装配置好后,glance上传完成后使用该镜像创建虚机,通过SSH登陆该虚机就出现了问题,提示Permission denied (publickey,gssapi-keyex,gssapi-with-mic)就是root用户名输入回车后发现只能用public key公钥登陆,而不能用密码认证登陆。进vnc控制台发现在/e...

2020-04-27 12:17:43

mysql数据库报错The user specified as a definer (”@’%') does not exist

此种报错主要是针对访问视图文件引起的(没有权限),可以使用如下方法解决步骤:1. 在DOS命令窗口输入mysql -hlocalhost -uroot -p回车进入mysql数据库, -h表示服务器名,localhost表示本地; -u为数据库用户名,root是mysql默认用户名; -p为密码,如果设置了密码,可直接在-p后链接输入2. 赋值对...

2020-04-23 10:18:57

openstack实战入门-glance相关(二)

文章为截图,方面自己查看

2020-04-21 22:07:33

自写shell脚本,通过service启动脚本 可能引起中文乱码等问题

例如下脚本,需加入. /etc/init.d/functions#!/bin/bash# processname: fss# chkconfig: 2345 92 8# description: fss service# fss.service start stop restart status. /etc/init.d/functionsAPP_PATH="xxx"ST...

2020-04-21 15:06:01

openstack实战入门-keystone相关(一)

一keystone相关

2020-04-19 22:12:00

小米笔记本装centos无法连接wifi问题

1. 打开终端2. 打开wifinmcli r wifi on3. 搜索wifinmcli dev wifi4 连接wifinmcli d wifi connect "wifi名字" password "密码" 网卡名不知道wifi网卡名称,终端执行ifconfig...

2019-10-16 13:05:53

安装keepalived所需rpm包安装顺序以及离线下载rpm包方式

安装keepalived 1.3.5所需rpm包以及安装顺序如下1. rpm -ivh net-snmp-libs-5.7.2-38.el7_6.2.x86_64.rpm2. rpm -ivhperl-Data-Dumper-2.145-3.el7.x86_64.rpm3. rpm -ivhnet-snmp-agent-libs-5.7.2-38.el7_6.2.x86_64...

2019-10-16 12:55:57

js-sequence-diagrams制作SIP时序图

js-sequence-diagrams 是一款基于 Javascript 的Web绘制时序图的工具,底层依赖 raphael,最终是生成 SVG。插件地址:https://github.com/bramp/js-sequence-diagrams文档及实例地址:https://bramp.github.io/js-sequence-diagrams/1、引入必须的文件:...

2019-08-27 16:53:32

socket之select、poll、epoll之间的区别(二)

(1)select==>时间复杂度O(n)它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长。(2)poll==>时间复杂度O(n)poll本质上和select没有区别,它将用...

2019-06-24 10:39:44

oracle 的列转行函数 listagg()

当你的表A中有name,scole两列,数据如下name scole a   1a   2b   1b   2想让数据以 a|1|2, b|1|2格式显示可使用listagg()1、使用listagg() + group byselect name,listagg(scole,'|') within GROUP (order by name) as sc...

2019-06-24 10:14:40

socket 之 IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞区别(一)

一、什么是socket?什么是I/O操作?我们都知道unix(like)世界里,一切皆文件,而文件是什么呢?文件就是一串二进制流而已,不管socket,还是FIFO、管道、终端,对我们来说,一切都是文件,一切都是流。在信息 交换的过程中,我们都是对这些流进行数据的收发操作,简称为I/O操作(input and output),往流中读出数据,系统调用read,写入数据,系统调用write。不...

2019-06-23 21:06:40

服务器TIME_WAIT和CLOSE_WAIT详解和解决办法

在服务器的日常维护过程中,会经常用到下面的命令:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'netstat -n | grep 8080| awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'它会显示例如下面的信息:TIME_WAI...

2019-06-17 15:43:34

centos python使用workon时出现workon: command not found错误

当前用户找到.bashrc文件将 virtualenv 添加进去: export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/virtualenvwrapper.sh执行source ~/.bashrc命令

2019-06-15 12:06:25

Letsencrypt无法生成、更新SSL证书的解决办法

我在CentOS服务器上统一使用Letsencrypt来管理(创建和更新)网站的https证书。我使用的是阿里云的服务器,首次使用Letsencrypt创建https证书时一切正常,当证书到期后,使用renew命令无法更新证书;,具体如下:Upgrading certbot-auto 0.32.0 to 0.35.1...Replacing certbot-auto...Crea...

2019-06-14 15:45:32

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享宗师
    分享宗师
    成功上传21个资源即可获取