自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

琼黍的村落

爱生活,爱琼黍

  • 博客(23)
  • 收藏
  • 关注

原创 分布式事务

1 两阶段提交2PC1.1 原理将整个事务流程分为两个阶段,准备阶段(Prepare phase)、提交阶段(Commit phase)1.准备阶段(Prepare phase):事务管理器(TM)给每个参与者发送Prepare消息,每个数据库参与者在本地执行事务,并写本地的Undo/Redo日志,此时事务没有提交。(Undo日志是记录修改前的数据,用于数据库回滚,Redo日志是记录修改后的数据,用于提交事务后写入数据文件)2.提交阶段(Commit phase):如果事务管理器收到了参与者的执行失

2021-02-22 16:21:10 129 1

原创 Docker--安装

docker安装

2017-07-10 16:09:40 533

原创 CentOS--防火墙

首先讲一下遇到的问题,在使用ssh时报错ssh: connect to host 192.168.1.201 port 22: Connection refused 原因:centOS 7 1611版本需要没有开启默认端口22//先检查是否安装SSH软件包rpm -qa | grep ssh/*显示如下表示已安装openssh-server-6.6.1p1-12.el7_1.x86_64o

2017-06-06 12:42:51 353

原创 PHP--内存泄漏

一个PHP脚本。一般都不用考虑内存泄漏和垃圾回收的问题,因为脚本很快就执行完退出了,每个页面处理结束,新建的simple_html_dom对象就会被销毁。 但当运行时间长,数据量大的时候,程序运行一段时间后,PHP脚本就占用了过多内存,然后报错:PHP Fetal error:Allowed memory size of 1342117728 bytes exhaustedPHP垃圾回收机制PHP

2017-05-17 10:38:01 990

原创 MySQL--分区表

在下面场景中,分区可以起到非常大的作用:表非常大以至于无法全部都放在内存中,或者只在表的最后部分有热点数据,其他均是历史数据。分区表的数据更容易维护。例如,想批量删除大量数据可以使用清除整个分区的方式。另外,还可以对一个独立分区进行优化、检查、修复等操作。分区表的数据可以分布在不同的物理设备上,从而高效地利用多个硬件设备。可以使用分区表来避免某些特殊的瓶颈,例如InnoDB的单个索引的互斥访

2017-05-15 17:42:44 387

原创 Vim命令

vim filename 打开或创建名为filename的文件vim file1 file2 file3 … 同时打开多个文件:open file 在vim窗口打开一个新文件:split file 在新窗口打开文件:bn 切换到下一个文件:bp 切换到上一个文件:args 查看当前打开的文件列表,正在编辑的文件会用[]括起来:e ftp://192.168.10.76/a

2017-05-11 13:07:14 331

原创 MySQL--事务

简介事务其实就是一组相互依赖的操作序列,所有操作都成功,事务才成功,一个行为失败,事务就会失败。事务特性原子性(Atomic) 事物的原子性,就是事务的操作行为是不可分割的工作单元,这些操作要么全部执行,事务成功,要么全都不执行,事务回滚。一致性 (Consistency) 事务的一致性是指事务执行之前和执行之后必须处于一致性状态。隔离性 隔离性是指一个事务的操作以及用到的数据对其他并发

2017-05-10 15:10:28 293

原创 MySQL--MVCC

1、MVCC简介1.1 什么是MVCCMVCC(全称Multi-Version Concurrent Control)是一种多版本并发控制机制。1.2 MVCC是为了解决什么问题大多数MYSQL事务型存储引擎,如InnoDB, Falcon以及PBXT都不使用一种简单的行锁机制。事实上,他们都和MVCC多版本控制一起来使用。锁机制可以控制并发操作,但是其系统开销较大,而MVCC可以在大多数情况下

2017-05-10 11:22:51 319

原创 PHP--swoole

简介swoole是PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,一步文件读写,异步DNS查询。Swoole内置了Http/WebSocket服务器端、客户端、Http2.0服务器端。除了异步IO的支持之外,Swoole为PHP多进程的模

2017-05-10 09:55:57 337

原创 PHP--内置函数查询函数参数

func_num_args()返回传递给该函数参数的个数<?phpfunction foo() { echo func_num_args();}foo(1, 2, 3)?>func_get_arg(int argnum)取得指定位置的参数值,arg_num)取得指定位置的参数 值,arg_num位置index从0开始n-1<?phpfunction foo() {

2017-05-10 09:54:40 532

原创 PHP--笔试题

PHP笔试题

2017-05-10 09:52:22 393 1

原创 PHP--面试题

1、双引号和单引号区别双引号解释变量,单引号不解释变量。双引号里插入单引号,其中单引号里如果有变量的话,变量解释双引号的变量名后面必须要有一个非数字、字母、下划线的特殊字符,或者用{}讲变量括起来,否则会将变量名后面的部分当做一个整体,引起语法错误双引号解释转义字符,单引号不解释转义字符,但是解释’\和\能使单引号字符尽量使用单引号,单引号的效率比双引号要高(因为双引号要先遍历一遍,判断里

2017-05-10 09:49:15 307

原创 Golang--string操作

string到int int, err := strconv.Atoi(string)string到int64 int64, err := string.ParseInt(string, 10, 64)int到string string := strconv.Itoa(int)int64到string string := strconv.FormatInt(int64, 10)Has

2017-05-10 09:46:43 10219 1

原创 Golang--interface断言

一个interface类型的变量varI中可以包含任何类型的值,必须有一种方式来检测它的动态类型,即运行时在变量存储中的值的实际类型。通常我们可以使用类型断言来测试在某个时刻varI是否包含类型T的值: v,ok := varI.(T) #varI必须是一个interface变量 如果转换合法,v是varI转换到类型T的值,ok是true;否则v是类型T的零值,ok是false。 接口的转换遵

2017-05-10 09:45:44 1425

原创 Golang--database/sql

导入driverimport ( "database/sql" _ "github.com/go-sql-driver/mysql")连接DBdb, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:3306)")if err != nil { log.Fatal(err)}defer db.Clos

2017-05-10 09:44:22 431

翻译 Goblog--strings,bytes,runes and characters in Go

Introduction To use strings well requires understanding not only how they work but also the difference between a byte,a character,and a rune,the difference between Unicode and UTF-8,the difference bet

2017-05-10 09:42:19 366

翻译 Goblog--Arrays,slices(and strings):The mechanics of 'append'

ArraysArrays are not often seen in Go programs because the size of an array is part of its type, which limits its expressive power. The declaration var buffer [256]byte declares the variable buffer

2017-05-10 09:41:21 543

原创 Golang--Goroutines

Thread-per-connection模型不够有效,在诸多比较合适的范式中,Communicating Sequential Processes(顺序通信处理,CSP)还有一个叫做message passing-model(消息传递)。 协程是根据一个或多个线程的可用性,映射(多路复用,执行于)在他们之上的;协程调度器在Go运行时很好的完成了这个工作。协程工作在相同的地址空间中,所以共享一定是

2017-05-10 09:38:31 372

原创 Golang--Channel基础

1.Channel简介Channel是Go中的一个核心类型,你可以把它看成一个管道,通过它并发核心单元就可以发送或者接收数据进行通讯。 它的操作符是箭头<-。ch := make(chan int, 100)defer close(ch)ch <- v //发送值v到Channel ch中v := <-ch //从Channel ch中接收数据,并将数据赋值给vv, ok := <-ch

2017-05-09 18:22:16 442

原创 runloop简单介绍及使用技巧

一、RunLoop定义当有持续的异步任务需求时,我们会创建一个独立的生命周期可控的线程。RunLoop就是控制线程生命周期并接受事件进行处理的机制。RunLoop是iOS事件响应与任务处理最核心的机制,它贯穿于整个iOS系统。二、RunLoop目的通过RunLoop机制实现省电,流畅,响应速度快,用户体验好三、RunLoop特性1.主线程的RunLoop在应用启动时就会自动

2016-02-25 20:28:35 1172

原创 Swift "..."".."及"==""==="区别

//0...5是一个闭区间[0,5]for index in 0...5 {      print(index)//print "012345"  }    println("\n")    //0..5是一个前闭后开区间[0,5)for index in 0..5 {      print(index) //print "01234"  }

2016-01-29 09:08:14 816

翻译 多线程、特别是NSOperation 和 GCD 的内部原理

多线程、特别是NSOperation 和 GCD 的内部原理简介多线程是一个比较轻量级的方法来实现单个应用程序内多个代码执行路径。在系统级别内,程序并排执行,程序分配到每个程序的执行时间是基于该程序的所需时间和其他程序的所需时间来决定的。然而,在每个程序内部,存在一个或者多个执行线程,它同时或在一个几乎同时发生的方式里执行不同的任务。概要提示:iPhone中的线程应用并不是

2016-01-19 15:44:11 7489

转载 Socket基础

ISO-OSI的七层协议经典架构OSI(Open System interconnection)开放系统互连参考模型 ISO(International Standards Organization)国际标准化组织第一层:物理层机械性能:接口的型状,尺寸的大小,引脚的数目和排列方式等。电气性能:接口规定信号的电压、电流、阻抗、波形、速率及平衡特性等。 工程规范:接口

2016-01-14 10:47:36 563

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除