info

redis安装

眉间皱痕 提交于 2020-01-13 20:06:45
redis简介 redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。 单点redis 安装 必须使用root用户,不然会出现权限问题 1、上传redis-2.8.19.tar.gz 2、解压 tar -zxvf redis-2.8.19.tar.gz -C apps/ 3、重命名 mv redis-2.8.19/ redis 4、进入目录 cd redis/ 5、make test 如果最后结果如下则没有错误 \o/ All tests passed without errors! Cleanup: may

React高阶组件

时光总嘲笑我的痴心妄想 提交于 2020-01-13 19:28:09
[翻译 | 转载]React Higher-Order Components(https://tylermcginnis.com/react-higher-order-components/) 开始前我们要关注两件事。第一,我们将要讨论的只是一个模式。甚至都不是React中的玩意儿,而是组件架构。第二,讨论的也不是构建一个React app必须的知识。不看这篇文章,你也能构造出好的React应用。但,就像建造别的东西,能用的工具越多,产出就越好。如果你要写一个React app,你的"工具箱"里没有高阶组件,那肯定内什么。 在听说 Don't Repeat Yourself(D.R.Y) 这个咒语之前,你在研究软件开发的路上一定不会走的太远。有时可能会有点过分,但对于大多数时候,它是一个值得追求的目标。在这篇文章中,我们将讨论在React代码库中实现DRY的最流行模式,即高阶组件。然而,在我们探索解决办法之前,我们首先必须充分理解这个问题。 假设我们负责重新创建一个类似于Stripe的仪表板。随着大多数项目的进行,直到最后一切都很顺利。就在您认为即将完成的时候,你注意到,当某些元素悬停在上面时,仪表板上显示一堆不同的工具提示。 有几种方法可以解决这个问题。您决定使用的是检测单个组件的悬停状态,并从该状态决定显示或不显示工具提示。需要将悬停检测功能添加到三个组件- Info 、

python基础,python第二课

拜拜、爱过 提交于 2020-01-13 16:27:11
python基础第二天的课程,主要内容列表,元祖,字典,字符串等主要内容 列表 定义列表 >>> names = ["ZhangSan","LiSi","WangWu","ZhaoLiu",["ZhangXin","MengDong"],"ZongQi","HeiBa","DongJiu"] >>> print(names) ['ZhangSan', 'LiSi', 'WangWu', 'ZhaoLiu', ['ZhangXin', 'MengDong'], 'ZongQi', 'HeiBa', 'DongJiu'] 列表取值 >>> names[0] #names列表元素从左往右,从0开始数 'ZhangSan' >>> names[4][0] 'ZhangXin' 列表切片 >>> print(names[0]) ZhangSan >>> print(names[0:])   #从第一个元素取到最末 ['ZhangSan', 'LiSi', 'WangWu', 'ZhaoLiu', ['ZhangXin', 'MengDong'], 'ZongQi', 'HeiBa', 'DongJiu'] >>> print(names[-1])    #取最后一个元素 DongJiu >>> print(names[:-1])    #从第一个元素取到最后一个(不包含最后一个) [

python的时间模块

泪湿孤枕 提交于 2020-01-13 13:40:44
时间表示的几种形式 1.时间戳 2.字符串时间 3.元组类型的时间 1.时间戳 print ( time . time ( ) ) 结果 2.字符串时间 print ( time . ctime ( ) ) 结果 3.元组时间 print ( time . localtime ( ) ) info = time . localtime ( ) print ( info ) print ( info . tm_year ) print ( info . tm_mon ) 结果 来源: CSDN 作者: 一坨小红花 链接: https://blog.csdn.net/qq_45652989/article/details/103951408

Apache Shiro 学习记录1

泪湿孤枕 提交于 2020-01-13 09:00:58
  最近几天在学习Apache Shiro......看了一些大神们的教程.....感觉收获不少.....但是毕竟教程也只是指引一下方向....即使是精品教程,仍然有很多东西都没有说明....所以自己也稍微研究了一下...记录了一下我的研究发现.... 教程点这里   这篇教程的最后提到了strategy.....然后给出了4个方法.....但是并没有怎么详细说明.....我想说说我的理解.....(我的理解可能会有很多错误)   我想先说说登陆验证的大致流程....大致...... Subject 从用户那里收集完用户名密码以后我们会调用subject.login(token)这个方法去登陆.....Subject是一个接口,没有定义login的具体实现.....Shiro里只有一个类实现了这个接口,是DelegatingSubject这个类.这个类里的方法login方法如下: 1 public void login(AuthenticationToken token) throws AuthenticationException { 2 clearRunAsIdentitiesInternal(); 3 Subject subject = securityManager.login(this, token); 4 5 PrincipalCollection principals

Java Sound收藏

流过昼夜 提交于 2020-01-13 05:07:51
Java Sound 网上关于java sound的正规资源讲解的非常好,本文不再给出示例,主要提供一些好的资源,并说说我的一些理解,用于形成对java sound的整体认识. 一.几个词汇 TTS:text-to-speech,文本到语音转换 OCR:optical-character-recignition光学字符识别 MIDI:Musical Instrument Digital Interface,乐器数字化接口 MIDI是20世纪80年代初由Dave Smith提出的,目的是解决电声乐器之间的通信.现代音乐都是通过MIDI+音色库合成的.MIDI传输的不是声音信号而是一系列音符控制参数等指令,它告诉MIDI设备要做什么.MIDI传输的信号被统一成MIDIMessage,通过异步串行通信来传递. Tritonus:java sound是一种标准,有两套实现.一套是Sun公司的,一套是Tritonus.在Java 1.3中,Sun公司的被纳入Java标准库.从那时起,Tritonus就很尴尬了.要想使用Tritonus就需要禁用掉Sun的,而禁用Sun的是一件多此一举的事情.Tritonus目前只支持Linux系统,但Tritonus的一些单独下载的插件也可以运行在其他系统上. SPI:Service Provider Interface服务提供接口

redis info详解2

一笑奈何 提交于 2020-01-13 04:30:32
统计 # Stats total_connections_received:3940602610 #总共接受到的连接数 total_commands_processed:8487340070 #总共处理的连接数 instantaneous_ops_per_sec:160 #每秒处理的请求 total_net_input_bytes:215986712412 #总网络流入字节数 total_net_output_bytes:185397527694 #总网络流出字节数 instantaneous_input_kbps:3.50 instantaneous_output_kbps:2.27 rejected_connections:0 #拒绝的连接数 sync_full:2 #全量同步的次数 sync_partial_ok:2 #部分同步的成功次数 sync_partial_err:0 #部分同步的失败次数 expired_keys:8866432 #过期的key数量 evicted_keys:0 #因内存超过最大值而删除的key个数 keyspace_hits:169536541 #命中的Key次数 keyspace_misses:51512092 #未命中次数 pubsub_channels:0 #订阅的客户端数 pubsub_patterns:0 latest_fork_usec

Python全栈开发【模块】

余生颓废 提交于 2020-01-13 04:17:33
本节内容: 模块介绍 time random os sys json & picle shelve XML hashlib ConfigParser logging 模块介绍 在Python中,一个.py文件就称之为一个模块(Module)。 1、使用模块有好处: 最大的好处是大大提高了代码的可维护性。 编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用。在编写程序的时候,也经常引用其他模块,包括Python内置的模块和来自第三方的模块 2、模块分为三种: 自定义模块 内置标准模块(又称标准库) 开源模块 3、导入模块: import: 使客户端(导入者)以一个整体获取一个模块。 from:容许客户端从一个模块文件中获取特定的变量名。 reload:在不中止Python程序的情况下,提供了一个重新载入模块文件代码的方法。 1 import module 2 3 from module.xx.xx import xx 4 5 from module.xx.xx import xx as rename 6 7 from module.xx.xx import * 4 、运行本质 1 #1 import test 2 3 #2 from test import add 无论1还是2,首先通过sys.path找到test.py,然后执行test脚本(全部执行)

使用C# 和Consul进行分布式系统协调

爷,独闯天下 提交于 2020-01-13 02:17:06
随着大数据时代的到来,分布式是解决大数据问题的一个主要手段,随着越来越多的分布式的服务,如何在分布式的系统中对这些服务做协调变成了一个很棘手的问题。今天我们就来看看如何使用C# ,利用开源对分布式服务做协调。 在对分布式的应用做协调的时候,主要会碰到以下的应用场景: 业务发现(service discovery) 找到分布式系统中存在那些可用的服务和节点 名字服务 (name service) 通过给定的名字知道到对应的资源 配置管理 (configuration management) 如何在分布式的节点中共享配置文件,保证一致性。 故障发现和故障转移 (failure detection and failover) 当某一个节点出故障的时候,如何检测到并通知其它节点, 或者把想用的服务转移到其它的可用节点 领导选举(leader election) 如何在众多的节点中选举一个领导者,来协调所有的节点 分布式的锁 (distributed exclusive lock) 如何通过锁在分布式的服务中进行同步 消息和通知服务 (message queue and notification) 如何在分布式的服务中传递消息,以通知的形式对事件作出主动的响应 Consul Consul 是用Go开发的分布式服务协调管理的工具,它提供了服务发现,健康检查,Key/Value存储等功能

用 GitBook 创建一本书

喜欢而已 提交于 2020-01-13 00:21:55
用 GitBook 创建一本书 Gitbook 首先是一个软件,它使用 Git 和 Markdown 来编排书本,如果你没有听过 Git 和 Markdown,那么 gitbook 可能不适合你直接入手,你需要先去学习 Git 和 Markdown。Git 是一个版本控制工具,Markdown 是一个文本编辑语法,基本的使用大概几个小时就可以都学会了,并不复杂。 这是 Gitbook 项目主页上对 Gitbook 的定义。 Modern book format and toolchain using Git and Markdown . 安装 GitBook 首先需要安装 nodejs,以便能够使用 npm 来安装 gitbook $ wget -qO- https://raw.github.com/creationix/nvm/v0.33.11/install.sh | sh 该命令会安装 nvm 命令,安装好以后会添加 nvm 的环境变量到 .bashrc 文件里,接下来退出终端,重新登陆使得 .bashrc 文件生效,或者使用其他方法使添加的环境变量生效。 接下来使用下列命令来安装 npm $ nvm install stable 可以使用下列命令来查看 npm 的版本,比如我这次安装的是 6.11.3 版本。 [erdong@testhost ~]$ npm -