data

drbd介绍及部署方法[陆续更新]

自古美人都是妖i 提交于 2020-03-11 17:06:24
部分转载感谢原作者,原文地址 https://www.cnblogs.com/NewStudy/p/7270390.html drbd版本drbd-9.0.21-1. drbd-utils版本 drbd-utils-9.7.1. Drbd 全称distributed replicated block device 基于块设备在不同高可用服务器对之间同步和镜像数据的软件,通过它可以实现在网络中的两台服务器之间基于块设备之前的 实时或异步镜像或同步复制,其实就是类似于rsync+inotify这种项目架构.只不过drbd是基于文件系统底层的,即block层级同步. 而rsync+inotify 是基于文件的同步,因为drbd效率更高,效果更好,增量方式 上面提到的块设备可以是 ,磁盘分区,LVM逻辑卷,或整块磁盘,即磁盘块的复制,相当于网络raid1功能 drbd三种同步协议 protocol A B C 协议A:异步同步模式 协议B:内存同步(半同步)复制 协议C:同步复制协议 协议C 用的最多 drbd生产应用模式 单主模式,主备模式,典型 复主模式:采用共享cluster文件系统,GFS OCFS2 drbd企业应用场景 高可用服务器之间的数据同步 heartbeat+drbd+nfs/mfs/gfs heartbeat+drbd+mysql/oracle 特点:主提供状态读写

Fabric private data入门实战

两盒软妹~` 提交于 2020-03-11 17:04:55
个人博客导航页(点击 右侧 链接 即可打开个人博客): 大牛带你入门技术栈 Hyperledger Fabric private data是1.2版本引入的新特性,fabric private data是利用旁支数据库(SideDB)来保存若干个通道成员之间的私有数据,从而在通道之上又提供了一层更灵活的数据保护机制。本文将介绍如何在链码开发中使用fabric private data。 fabric private data利用SideDB来保存私有数据,相当于在通道之上又提供了一层更细粒度的数据隐私保护机制。本文将介绍fabric private data的引入目的、基本概念与应用场景。 什么是fabric private data? 目前在Hyperledger Fabric中实现数据隐私的方法是使用通道。但是官方并不孤立为了实现数据的隐私保护而在大型网络中创建大量通道,因为这会带来额外的开销,例如管理策略、链码版本以及成员服务提供(MSP)等。在一个通道中,所有的数据要么是公开的,要么是私有的。因此如果你想要将资产转给通道外的成员会很麻烦。这就是Hyperledger Fabric引入私有交易的原因。farbic private data允许基于策略创建私有数据集,来定义通道中的哪些成员可以访问数据。可以简单地通过添加策略来管理fabric private data

Ajax 与文件上传

泄露秘密 提交于 2020-03-11 16:09:17
一 Ajax篇 1 ajax简介( Asynchronous Javascript And XML )   异步,Js,XML,即使用Javascript语言与服务器进行异步交互,传输的数据为xml( 可扩展标记语言 ), 2 两个特点   2.1 异步交互   客服端发出一个请求,无需等待这个请求的响应,就可以发送第二个请求.   2.2 局部更新   不会造成网页的覆盖,仅仅是通过jquery的dom操作,使得页面局部发生数据变化. 3 执行流程 4 基于Jquery 的ajax实现(加法计算器) <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script> </head> <body> <input type="text" class="num1">+<input type="text" class="num2">=<input type="text" class="result"><input type="button" class="cul" value="计算"> {% csrf_token %} <script> $('

docker 部署zookeeper集群

一笑奈何 提交于 2020-03-11 15:22:01
1.准备3台机器,IP为 192.168.1.181 192.168.1.182 192.168.1.159 2.创建目录 mkdir conf data datalog 3.创建配置文件 vi conf/zoo.cfg 文件内容 tickTime=2000 initLimit=5 syncLimit=2 #maxClientCnxns=60 #autopurge.snapRetainCount=3 #autopurge.purgeInterval=1 dataDir=/data dataLogDir=/datalog clientPort=2181 server.1=192.168.1.181:2888:3888 server.2=192.168.1.182:2888:3888 server.3=192.168.1.159:2888:3888 4.创建myid,注意每台机器的文件内容不一样,我的分别为1、2、3 vi data/myid 5.分别启动zookeeper docker run -d -p 2181:2181 -p 2888:2888 -p 3888:3888 --restart=always \ -v /data:/opt/zookeeper/data \ -v /datalog:/opt/zookeeper/logs \ -v /conf:/opt

一个最简单的WebSocket hello world demo

大城市里の小女人 提交于 2020-03-11 11:49:50
服务器端代码不超过42行: const WSServer = require("./server.js"); var counter = 0; function createWebsocket() { var host = "127.0.0.1"; var port = "9999"; var wsServer = WSServer.startServer(host, port); console.log("WebSocket server listens to: " + host + ":" + port); wsServer.on('open', (data) => { console.log('WS Client has connected: ' + data); setInterval(function(){ counter++; WSServer.broadcast("Jerry: " + counter ); }, 3000); }); wsServer.on('dataWS', (data) => { console.log('Receive Data from WebUI : ' + data); }); wsServer.on('disconnect', (data) => { console.log('WSServer disconnect:' + data

转 Python-Url编码和解码

扶醉桌前 提交于 2020-03-11 09:53:42
Python-Url编码和解码 一、为什么要进行Url编码 url带参数的请求格式为(举例): http://www.baidu.com/s?k1=v1&k2=v2 当请求数据为字典data = {k1:v1, k2:v2},且参数中包含中文或者?、=等特殊符号时,通过url编码,将data转化为特定格式k1=v1&k2=v2,并且将中文和特殊符号进行编码,避免发生歧义 二、Url编码 1、urlencode( ) from urllib import parse from urllib import request url = 'http://www.baidu.com/s?' dict1 ={'wd': '百度翻译'} url_data = parse.urlencode(dict1) #unlencode()将字典{k1:v1,k2:v2}转化为k1=v1&k2=v2 print(url_data) #url_data:wd=%E7%99%BE%E5%BA%A6%E7%BF%BB%E8%AF%91 data = request.urlopen((url+url_data)).read() #读取url响应结果 data = data.decode('utf-8') #将响应结果用utf8编码 print(data) url_org = parse.unquote(url

drf中 连表深度查询和ListSerializer类包括drf中Response二次封装

百般思念 提交于 2020-03-11 09:11:17
drf中Response二次封装: from rest_framework.response import Response ''' return MyResponse(status=1,msg='error',results=[],token='a.b.c',http_status=400,exception=True) Response模块的响应数据 data,最终数据results,Response模块需要向前台展示的一般有响应数据data(包括data里面的results),网络状态码status,是否异常exception return Response( data={ 'status':1, 'msg':'error', 'results':[], token:'a.b.c' }, status=400, exception=True ''' class APIResponse(Response): def __init__(self,status=0,msg='ok',results=None,http_status=None, headers=None,exception=False,content_type=None,**kwargs): #将status、msg、results、kwargs格式化成data data={ 'status':status,

植物GO注释

二次信任 提交于 2020-03-11 07:51:10
本文主要是对没有GO term库的植物进行注释。 1、选用AgriGo 进行注释,在agriGO中点击species后,查看与你目标物种相近的物种作为库 2、比如我以甜菜为例 为了找到和GO term对应的ID,先找到PLAZA,进入网站https://bioinformatics.psb.ugent.be/plaza/versions/plaza_v3_dicots/download/index 点击data ->identifier Conversion, 找到甜菜,下载改ID对应的文件,进而可以确定甜菜基因组版本,并进行写脚本更换ID 3、将DGE更换好的ID输入AgriGO中,即可获得差异基因,可点击downlodw下载, 选取FDR<=0.05, p <0.05进行作图 作图 使用ggplot2 rm(list = ls()) library(ggplot2) data <- read.table("Go_input.txt",header = T,sep = "\t") attach(data) dorder=factor(as.integer(row.names(data)),labels = data$Term) ###sorted by the Term, p <- ggplot(data,aes(x=dorder,y=queryitem,fill=term

迷你MVVM框架 avalonjs 学习教程7、数据缓存

自古美人都是妖i 提交于 2020-03-11 06:23:39
jQuery的许多功能都可以通过avalon的绑定属性来处理,如click方法对应ms-click,css方法对应ms-css,toggle方法对应ms-visible,它的数据缓存功能avalon也搬过来了。但不同于jQuery的是,avalon是直接将数据保存到元素节点的HTML5的data-☆属性上。在从data-☆属性还原数据时,它会简单的数据转换,再返回给你。 在ms-data绑定中,考虑到如果将对象转换为字符串再还原会丢失函数什么的,因此它们会直接保存到元素之上。 <!DOCTYPE html> <html> <head> <title>TODO supply a title</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width"> <script src="../avalon.js"></script> <script> avalon.define({ $id: "test", $skipArray: ["array", "object"], number: 111, number2: NaN, bool: false, bool2: true, nn: null, vv: void 0, array: [1, 2, 3], date: new Date,

postgresql冷备份

丶灬走出姿态 提交于 2020-03-11 02:36:31
每日冷备份,并自动删除 7 日以前的备份,建议对 热备份 数据进行备份 环境:centos7 192.168.0.20:15432 ( 备份库,读库) 1 创建备份目录 mkdir -p /home/data/backup/ 2 编写备份脚本 vim /home/data/backup/backup_script.sh cur_time=$(date '+%Y-%m-%d') sevendays_time=$(date -d -7days '+%Y-%m-%d') echo "开始备份数据库..." rm -f /home/data/backup/pgsql-backup.$sevendays_time.tar.gz echo "." /usr/pgsql-12/bin/pg_dumpall -U postgres -p 15432 > "pgsql-backup.$cur_time.dmp" echo "." tar zcf "/home/data/backup/pgsql-backup.$cur_time.tar.gz" *.dmp echo "." rm -f /home/data/backup/pgsql-backup.*.dmp echo "." echo "备份完成" 赋予可执行权限 chmod a+x /home/data/backup/backup_script