自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 问答 (1)
  • 收藏
  • 关注

原创 分布式锁解决方案

常用的分布式锁的实现有三种方式:基于redis实现、基于MySQL实现、基于Zookeeper实现。分布式锁要解决的问题有:1、在分布式系统环境下一个方法同一时间只能被一个机器的一个线程执行2、锁是可重入锁3、锁是阻塞锁(根据业务需要决定)4、锁是公平锁,也是根据业务需要爵士那个5、有高可用的获取锁和释放锁的功能6、 获取锁和释放锁的性能要好MySQL 实现分布式锁基于MySQL实现的分布式锁,基于MySQL的InnoDB的行锁来实现,有两种实现方式:悲观锁和乐观锁。直接创建一张锁表,通

2020-07-08 22:00:49 230

原创 父子进程&孤儿进程&僵尸进程小小总结

unix/linux中,子进程通过父进程创建。子进程的结束和父进程的运行是异步状态,在一个进程工作终止后他的父进程需要调用wait或waitpid系统调用取得子进程的终止状态。孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么这些子进程将成为孤儿进程。孤儿进程将位init进程(pid=1)收养,并有init进程对他们进行状态的收集工作孤儿进程的收集任务交由init进程处理,每当出现孤儿进程,内核将孤儿进程的父进程设置为init进程, init进程会循环wait他的子进程。因此孤儿进程没有什

2020-07-08 21:56:07 330

原创 SSO单点登录总结

Single Sign On单点登录单系统登录:用户登录时验证用户账号密码,将Token写入Cookie中;用户数据保存在session;请求时带上cookie,检查有没有登录。多系统登录:为了合理利用资源和降低耦合性,将单系统拆分为多个子系统。单点登录就是在多个系统中用户只需登录一次,就可以访问所有相互信任的系统。多系统登录问题:1、 session不共享:Session信息(Token)存储在Redis中。2、 Cookie跨域:A系统登录后返回给用户A的cookie,访问B系统时不会带此co

2020-07-08 21:41:26 225

原创 分布式事务方案总结

事务的不同操作位于不同节点上,需要保证事务的ACID特性。1、2PC两阶段提交Two-phase Commit,2PC,通过引入协调者来协调参与者的行为。并最终决定参与着是否要真正执行事务。准备阶段:协调者给每个参与者发送prepare消息,参与者事务执行失败返回失败,或执行本地事务,写本地的redo和undo日志但是不提交,参与者回发事务执行结果。提交阶段:如果每个参与者上事务都执行成功,事务协调者发出通知让参与者提交事务,否则发送通知回滚事务。存在问题:● 同步阻塞:所有事务参与者在等待其

2020-07-08 21:37:17 113

原创 Git一些命令与总结

GitGit简介Git是一个开源的分布式版本控制系统,同时也是内容管理系统,工作管理系统。Git与SVN区别:1、 Git是分布式的,SVN是集中式的2、 Git吧内容按元数据方式存储,SVN按文件3、 Git分支和SVN分支不同4、 Git没有一个全局的版本号,SVN有5、 Git内容完整性优于SVN中心服务器:中心服务器用来交换每个用户的修改,没有中心服务器也能工作,GitHub就是一个中心服务器。Git工作流Git工作流程:1、 克隆Git资源作为工作目录2、 在克隆资源上添

2020-07-05 12:17:01 125

原创 守护进程一点点知识

进程组● 每个进程属于一个进程组● 每个进程组都有一个进程组好,该号等于该进程组组长的PID● 一个进程智能为自己或子进程设置进程组ID号会话期会话期session是一个或多个进程组的集合建立一个会话期:setsid(),调用该函数的进程不是一个进程组组长,则创建一个新的会话期:● 此进程变成该session首进程● 此进程变成一个新进程组的组长进程● 此进程无控制终端。若调用前有,则与终端联系被解除,若该进程为一个进程组组长则返回错误。守护进程守护进程是在后台运行不受终端控制的进程。

2020-07-05 12:09:04 125

原创 关于JMM(java内存模型)

JMM(java内存模型)JMM的全程是Java Memory Model java内存模型。    JVM定义java内存模型来屏蔽各种硬件和操作系统的内存访问差异,以实现java程序在任何平台下达到一致的访问效果。其主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量的底层细节。    JMM设计系统中存在主内存和工作内存。所有的变量都存储在主内存中,对于所有线程共享。每条线程有自己的

2020-07-05 12:07:05 1278

原创 堆排序

1.大顶堆与小顶堆2.堆排序介绍3.堆排序过程示意4.堆排序数据结构实现5.java代码

2019-10-18 09:33:17 571 1

原创 快速排序

1.理解*方法基本思路——分治法1.在数列中取出一个数作为基准数2.分区,找到基准数存储的位置i,使基准数前全部是小于它的数,后面全部是大于他的数。数列中第i+1小的数即为此基准数3.对基准数的前后两分区递归调用第二部。知道各个区间只剩一个为止数组a,i=0,j=9,基准数tmp=5,此时a[0]为止空出存入tmp位置基准数后面的数需要大于基准数,从后向前寻找a[j】< tmp...

2019-10-17 15:51:12 826

转载 IPFS pubsub功能的使用

什么是 pubsub?发布订阅模式(Publish–subscribe pattern),最早是由苹果公司在 Mac OS 引入。消息的发送者(publishers)不直接将消息发送给接收者(subscriber)。而是将消息分门别类,发送者并不知道也无需知道接收者的存在。而接收者只需要订阅一个或者多个类别的消息类,只接收感兴趣的消息,不知道也无需知道发布者的存在。(https://en.wi...

2019-10-08 09:46:29 388

转载 Ubuntu“有线未托管”问题

Linux里面有两套管理网络连接的方案:/etc/network/interfaces(/etc/init.d/networking)Network-Manager两套方案是冲突的,不能同时共存。第一个方案适用于没有桌面的环境,如:服务器;或者那些完全不需要改动连接的场合。第二套方案使用于有桌面的环境,特别是网络连接情况随时会变的情况。这两个为了避免冲突,又能共享配置,就有了下面的解决...

2019-09-25 08:24:39 361

原创 openstack创建云主机问题

创建云主机一直失败,查了日志只有nova-conductor.log出现error如下ERROR nova.scheduler.utils [req-17e50154-2c8b-48b3-8788-0000051bc45e bef013ac1ed5430ead16590618821576 597b213656ff43889490bd26dfc8a238 - default default] [i...

2019-09-20 16:09:48 4023

原创 Ubuntu更改网卡IP地址后主机ping不同内网主机

Ubuntu主机修改了网段,从10.109.252.0/24 换成了10.109.253.0/24,修改了/etc/network/interfaces之后,主机能够ping通百度,但是怎么也ping不同学校内网其他主机。是网卡还有原来252网段的IP地址:ip address show enp11s0f0 查看网卡信息发现还有原来网段的IP地址ip addr del 10.109.2...

2019-09-20 11:26:22 628

原创 Xshell连接服务器卡顿问题

Xshell连接Ubuntu系统的服务器突然变得极度卡顿,打字一个字一个字往出蹦,命令回车直接卡死,参考网上类似sshd_config文件UseDNS = no的方法也没用。网络时延很正常。最后直接卸载openssh-server重新安装了一遍。感人的OK了卸载以及重装ssh:1.卸载sshapt-get purge openssh-server2.安装sshsudo apt-get ...

2019-09-18 15:55:11 4370

原创 Ubuntu连接校园网命令

校园网关页面curl -d “user=学号” -d “pass=******” http://10.3.8.211/login

2019-09-17 14:02:50 852

原创 IPFS的路由系统

ipfs系统的节点查找有两个需求:第一找到其他节点地址第二找到存储有特定数据的节点IPFS路由层数据结构使用的是S/Kademlia和Coral技术的分布式松散哈希表(DSHT),IPFS的DSHT结构会根据所存数据的大小值进行区分:小的值(等于或小于1KB)直接存储在DHT上,更大的值,DHT只存储值索引,这个索引就是一个对等节点的NodeId,该对等节点可以提供对该类型值的具体服务I...

2019-09-12 19:52:56 570

原创 IPFS小汇总

一.IPFS简介及提出动机星际文件系统IPFS(Inter-Planetary File System)是一个面向全球的、点对点的分布式版本文件系统,目标是为了补充甚至是取代目前统治互联网的超文本传输协议(HTTP),将所有具有相同文件系统的计算设备连接在一起。原理用基于内容的地址替代基于域名的地址,也就是用户寻找的不是某个地址而是储存在某个地方的内容,不需要验证发送者的身份,而只需要验证内容的...

2019-09-12 19:45:55 585

原创 IPFS私有网络搭建

1. 安装IPFS Windows&Ubuntu:https://blog.csdn.net/typdef_C/article/details/1007753652. 各个节点共享同一个密钥,在其中一个节点创建密钥:Ubuntu:安装go-lang :sudo apt-get install golang安装gitsudo apt-get install git创建密钥:...

2019-09-12 16:42:11 767

原创 Windows&Ubuntu 安装IPFS

Windowshttps://dist.ipfs.io/#go-ipfs 下载Windows对应版本2. 解压文件3. 打开命令行,进入解压出的go-ipfs目录4. 初始化IPFS节点 : ipfs init5. 启动ipfs节点: ipfs daemon6. 另起一命令行,进入go-ipfs目录,使用ipfsUbuntu1.安装ipfssudo snap insta...

2019-09-12 16:23:12 323

空空如也

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

TA关注的人

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