浅尝key-value数据库(一)——一览NoSQL 最近由于一个项目的关系,研究了一下key-value数据库这个最近很火的概念.本系列从项目需求的角度分析并测试了几个key-value数据库的性能. key-value数据库,又称作NoSQL数据库,他的最基本的基础原理就是CAP. CAP是2000年PODC上Eric Brewer提出的一个概念,即 C -> Consistency; A -> Availability; P -> Tolerance to network Part…
浅尝key-value数据库(三)——MongoDB的分布式 测试了单机MongoDB的随机读和写入性能,这一节来讲一讲MongoDB的分布式. MongoDB的分布式分成两种,一种是Replication,一种是Sharding.我们主要来看一下Sharding. 先贴一张结构示意图: MongoDB Auto-Sharding的配置非常简单,在不同的机器分别开启shard, config server, mongos的进程即可.(假设config serevr的IP为192.168.1.11…
浅尝key-value数据库(二)——MongoDB的优与劣 MongoDB的名字取自英文单词"humongous"的中间五个字母,是一个C++开发的基于分布式文件存储的数据库开源项目.他的文件存储格式是BSON(Binary JSON),因此可以高效存储二进制数据,例如图像.视频等大对象. 由于我是CentOS x86_64的系统,于是安装MongoDB非常简单: vi /etc/yum.repos.d/mongo.repo [10gen] name=10gen Repository…
浅尝ECMAScript6 简介 ECMAScript6 是最新的ECMAScript标准,于2015年6月正式推出(所以也称为ECMAScript 2015),相比于2009年推出的es5, es6定义了更加丰富的语言特性,基于该标准的Javascript语言也迎来了语法上的重大变革.本文列举了部分es6新特性,希望之前没接触es6的小伙伴读完本文能对下一代js编程有一个初步的认识. 箭头函数 箭头函数用 "=>"简化函数定义,类似于C#, Java8中的Lambda表达式,支…
[IT168 技术]12月25日消息,2010互联网行业技术研讨峰会今日在上海华东理工大学召开.本次峰会以“互联网行业应用最佳实践”为主题,定位于互联网架构设计.应用开发.应用运维管理,同时,峰会邀请了来自盛大.阿里巴巴.五分钟等互联网企业的多位嘉宾演讲,他们将同大家一起探讨数据库技术在互联网领域的深入应用. ▲2010互联网行业技术研讨峰会专题报道 以下是上海五分钟网络科技有限公司金官丁主题为“浅谈伪分布式数据库架构”的演讲全文: ▲上海五分钟网络科技有限公司金官丁 大家好!所谓分布式数据库架…
Spring注解开发 浅尝Spring注解开发,基于Spring 4.3.12 包含自定义扫描组件.自定义导入组件.手动注册组件.自动注入方法和参数.使用Spring容器底层组件等 配置 @Configuration配置类 告诉Spring这是一个配置类,代替以前的xml文件,配置类=配置文件 @Configuration public class MainConfig { //给容器中注册一个Bean;类型为返回值的类型,id默认是用方法名作为id @Bean("person") p…
浅尝Spring注解开发_Servlet 3.0 与 SpringMVC 浅尝Spring注解开发,基于Spring 4.3.12 Servlet3.0新增了注解支持.异步处理,可以省去web.xml文件,异步处理更高效. 浅尝Spring注解开发_自定义注册组件.属性赋值.自动装配 浅尝Spring注解开发_Bean生命周期及执行过程 浅尝Spring注解开发_AOP原理及完整过程分析(源码) 浅尝Spring注解开发_声明式事务及原理 浅尝Spring注解开发_简单理解BeanFactory…
Python 提供了多个图形开发界面的库,几个常用 Python GUI 库如下: Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里.Tk8.0 的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中. wxPython:wxPython 是一款开源软件,是 Python 语言的一套优秀的 GUI 图形库,…
转自:http://www.infoq.com/cn/news/2015/02/apache-samza-top-project Apache Samza是一个开源.分布式的流处理框架,它使用开源分布式消息处理系统Apache Kafka来实现消息服务,并使用资源管理器Apache Hadoop YARN实现容错处理.处理器隔离.安全性和资源管理.近日,从Apache官方博客中得知,开源的分布式流处理框架Samza历经18个月的孵化期后终于升级成为Apache的顶级项目.Samza由Linked…
大家好,我是小栈君,因为个人和工作的缘故,所以拖更了一点时间,但是关于拖更的内容小栈君会在后续的时间中补回来,还希望大家继续支持和关注小栈君.当然,在国内疫情稍微减缓的情况下,小栈君在这里也多说两句,在非常时刻,我们应当保持警惕,清洗手,多通风,避免人群聚集,希望大家平安健康, 闲话不多说,我们直接进入正题,今天给大家分享的事关于Go语言中的GC,本期的分享并没有多少代码可言,都是一些理论知识,希望大家耐心且看完,因为能力有限,所以这边小栈君会尽量用大白话来进行叙述,如有错误之处,还请多多谅解.…
[写在前面] 参考文章:https://www.cnblogs.com/huxi/archive/2011/03/01/1967600.html[从简单的例子入手进行讲解,由浅入深,很到位] 装饰器部分总共写了三篇博客,这是其一,另外两篇博客如下,都是比较浅显的记录的自己对装饰器的理解,感兴趣的可以踩一踩^_^ 浅尝装饰器-@staticmethod 和@classmethod 浅尝装饰器--property装饰器 [正文部分] 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典…
Spring注解开发 浅尝Spring注解开发,基于Spring 4.3.12 包含Bean生命周期.自定义初始化方法.Debug BeanPostProcessor执行过程及在Spring底层中的应用 浅尝Spring注解开发_自定义注册组件.属性赋值.自动装配 浅尝Spring注解开发_Bean生命周期及执行过程 Bean生命周期 了解Bean的生命周期,就可以在Bean声明周期的不同阶段进行自定义的操作,满足更复杂的需求.简单的将Bean生命周期分为三个阶段:Bean创建.初始化.销毁 对…
浅尝Spring注解开发_AOP原理及完整过程分析(源码) 浅尝Spring注解开发,基于Spring 4.3.12 分析AOP执行过程及源码,包含AOP注解使用.AOP原理.分析AnnotationAwareAspectJAutoProxyCreator.AOP代理.拦截器.链式调用 以初学者的角度跟着雷丰阳的视频走完AOP整个过程,设计很巧妙.补充了自己的理解,为了流程连续性,所以全放在放在一篇里,如有错误请多多指教. 浅尝Spring注解开发_自定义注册组件.属性赋值.自动装配 浅尝Spr…
SQL 和 NoSQL 的区别   一.概念 SQL (Structured Query Language) 数据库,指关系型数据库.主要代表:SQL Server,Oracle,MySQL(开源),PostgreSQL(开源). NoSQL(Not Only SQL)泛指非关系型数据库.主要代表:MongoDB,Redis,CouchDB.   二.区别 1.存储方式 SQL数据存在特定结构的表中:而NoSQL则更加灵活和可扩展,存储方式可以省是JSON文档.哈希表或者其他方式.SQL通常以数…
8 种 NoSQL 数据库对比 NoSQL是一项全新的数据库革命性运动,NoSQL的拥护者们提倡运用非关系型的数据存储.现今的计算机体系结构在数据存储方面要求具备庞大的水平扩展性,而NoSQL致力于改变这一现状.目前Google的 BigTable 和Amazon 的Dynamo使用的就是NoSQL型数据库. NoSQL数据库的四大分类   1) 键值(Key-Value)存储数据库 这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据.Key/value模型对于I…
MyBatis应属于一种轻量级的java持久层技术,它通过简单的SQL xml或注解,将数据库数据映射到接口与POJO.最近项目要用到mybatis,所以学习之后在这里做个总结,文中的示例以xml配置为主,mybatis也支持注解的方式. 测试数据 先给出demo所使用的表结构,以典型的用户(1)-文章(n)的关系表做demo数据 # # mysql数据库:数据库名 :dblog # DROP TABLE IF EXISTS m_category; CREATE TABLE m_category…
一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善. 作者:zhenliang8,本文转自51CTO博客,http://lizhenliang.blog.51cto.com/7876557/1657465. 本博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 1.数据库表设计 项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部分就是对表结构设计.对于数据库来说,这点很重要…
.net中的事务 关键几点 概念:1:什么是事务 2:什么时候用事务 3:基本的语法 (1): 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit).事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定.事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操…
日志君导读: 一个成熟的数据库架构并非一開始设计就具备高可用.高伸缩等特性的.它是随着用户量的添加,基础架构才逐渐完好. 作者:zhenliang8.本文转自51CTO博客,点击原文阅读查看网页版文章. 本博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为下面五个阶段: 1.数据库表设计 项目立项后,开发部依据产品部需求开发项目,开发project师工作当中一部分就是对表结构设计.对于数据库来说.这点非常重要,假设设计不当,会直接影响訪问速度和用户体验.影…
01-Redis简介 02-Redis基本安装启动 03-Redis的配置文件基本使用 04-Redis安全管理 05-Redis安全持久化-RDB持久化 06-Redis安全持久化-AOF持久化 07-Redis数据类型-介绍 08-Redis数据类型-String类型应用 09-Redis数据类型-Hash类型应用 10-Redis数据类型-List类型应用 11-Redis数据类型-Set类型应用 12-Redis数据类型-Sorted_set类型应用 13-Redis发布订阅-发布订阅模…
数据库分页是老生常谈的问题了.如果使用ORM框架,再使用LINQ的话,一个Skip和Take就可以搞定.但是有时由于限制,需要使用存储过程来实现.在SQLServer中使用存储过程实现分页的已经有很多方法了.之前在面试中遇到过这一问题,问如何高效实现数据库分页.刚好上周在业务中也遇到了这个需求,所以在这里简单记录和分享一下. 一 需求 这里以SQLServer的示例数据库NorthWind为例,里面有一张Product表,现在假设我们的需求是要以UnitPrice降序排列,并且分页,每一页10条…
今天公司需要用php连接access 数据库,结果整了半天Access数据库 就是连接不上,查找 很多资料,以下是我的经验, -.- 希望能给需要连接access 数据的人带来帮助..-.- 需要注意: 安装access 数据库的时候 需要安装与本机系统相互匹配的office版本,win7 64位的系统 ,那么Office也要是64位的 最好装 office2010... 因为我就是经历了从 2003 -2007 -2010的痛苦,特别是在装2010的时候,因为装载过2003版本的office…
01 课程介绍 02 数据库管理系统介绍 03 MySQL安装方式介绍及源码安装 04 MySQL安装后的基本配置 05 MySQL体系结构-服务器.客户端模型 06 MySQL体系结构-实例.连接层.SQL层详解 07 MySQL体系解耦股-存储引擎层.逻辑结构.物理存储结构介绍 08 MySQL基本管理-MySQL连接命令基本使用 09 MySQL数据库启动和关闭 10 MySQL配置文件的介绍及使用 11 MySQL多实例配置 12 MySQL用户管理-用户权限定义 13 用户创建和删除…
[pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=61891436 向大(hei)佬(e)势力学(di)习(tou) Description Input 第一行包含两个整数n, m,分别表示上下两个管道中球的数目. 第二行为一个AB字符串,长度为n,表示上管道中从左到右球的类型.其中A表示浅色球,B表示深色球. 第三行为一个AB字符串,长度为m,表示下管道中的情形. Output 仅包含一行,即为 Sigm…
项目中使用到了Spring,写了一个简单的例子,跟大家分享一下,由于自己写东西,所以在技术选择上充分自由,虽然对于Spring的利弊众说纷纭,我也不能评判,反正我是尝试用了,记得在上学时候老师讲Spring的时候给出的几个关键点是,控制反转(IOC),和依赖注入.这些概念真的是让人望而却步.所以上学的时候关于这部分内容就基本忽略了.我的浅见是Spring有自己的反射机制,能够将开发者配置到配置文件中的类实例化. 我写的内容就是通过注入的方式实现一个Hello的功能,然后在通过aop的方式来实现一…
HTTPS http超文本传输协议,所以的东西都是明文传输,容易被拦截,被攻击,我们希望能对通话内容进行加密,那么因此而生,出现了https https:在http的基础上新增加了SSL层 先放图 // http 超文本传输协议// https 加密的超文本传输协议 // 对称加密浏览器生成一个秘钥,然后将秘钥传输给服务器,之后每次传输浏览器都使用该秘钥加数据加密传输给服务器服务器使用得到的秘钥解密加密的数据,因为使用的是同一个秘钥所以称为对称加密缺点 秘钥容易被截取,难么也相当于裸奔了 //…
一.窗口上敲键盘触发事件(以Enter键为例) 二.点击窗口按钮触发事件(以鼠标左键双击为例) 代码: import tkinter as tk root = tk.Tk() root.geometry("300x200") l1 = tk.Label(root, text="这是一个测试", font=("黑体", 10)) # 标签 l1.pack() # 指定包管理器放置组件 ask_text = tk.Entry() # 创建文本框 as…
前言 ECDHE 我之前是听都没听过, 但是新业务需要对前后端通信进行加密, 经过大佬推荐才知道有这个东西, 经过几天的学习和踩坑, 才大致明白其流程和使用方式. 过程坎坷, 好在最后还是成功运用到了业务中, 大大提高了业务的安全性. 这里记录一下本人对 ECDHE 的理解和注意要点 ECDHE 椭圆曲线迪菲-赫尔曼金钥交换 - 维基百科,自由的百科全书 (wikipedia.org) 我们先来说说 ECDH, ECDH(Elliptic Curve Diffie–Hellman key exc…
很久没写日志了,今天动动手记录下刚刚弄了一遍的lambda. 配置module下的build.gradle android { ... // 版本有要求 buildToolsVersion "24.0.2" defaultConfig { ... jackOptions { enabled true } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersi…
01. Move and Rotate 标准全局坐标系 Keyboard using UnityEngine; using System.Collections; public class NewBehaviourScript : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { if(Input.GetKey(K…