第八章到第十章就是一些介绍性的描述,吹的就是Hazelcast能使用在各种地方..   第八章 -从外面看 1.Hazelcast做了一个memcache的java实现,方便py和php使用. 2.可以通http方式进行restful访问数据.   第九章- 国际化 1.可以手工配置ip发现集群节点(目前of就是这么配的) 2.可以针对amazon EC2做配置 3.可以在waln广域网配置   第十章 -其他 1.可以配置spring和hibernate中. 2.有个web控制台可以监控haz…
第七章 部署策略 Hazelcast具有适应性,能根据不同的架构和应用进行特定的部署配置,每个应用可以根据具体情况选择最优的配置: 数据与应用紧密结合的模式(重点,of就是这种) 胖客户端模式(最好用一种) 轻成员节点模式(折衷上面两种)   1.使用紧密结合的模式,每个JVM实例既提供程序功能,又提供数据存储.这意味着我们需要提供比实际使用功能需要的更多的堆空间(备份). 除此之外,web应用是在特定容器中的(比如tomcat),直接使用应用程序的堆也并不方便.特别是垃圾收集机制的控制可能会造…
第五章 监听 本章应该是Hazelcast的核心机制了,Hazelcast通过注册各种监听器获悉集群中其他应用对数据的修改,成员的加入,退出等. 分为3个层次. 1.EntryListener(对数据项的监听) 2.InstanceListener(对数据集合监听-例如map,Set) 3.membershipEvent(对集群成员变动的监听) P.S.还能通过MigrationEvent监听数据迁移,()   虽然很核心,不过本章就是这些接口的实现使用.具体就是"看代码,看代码,看代码&quo…
第四章 分而治之 在指导了如何进行基本使用之后,又再次进入理论模块. Hazelcast的基本策略就是切片分区,默认是271个片.内置一个 partition table记录那个节点是那个分区,并在hazelcast.partition.table.send.interval时间进行同步 如果有节点加入,就允一允分片,以此类推.例如: 1个节点时候: 2个节点时候: 4个节点时候: 有3个参数控制分区 backup-count:备份数(修改一个数据,需要同步修改备份数据才算完成) async-b…
第二章 起步 本章就相当简单粗暴了,用一个个例子说明hazelcast怎么用. 1.map,set,list这些集合类都是开箱即用的,只要从Hazelcast的实例中获取一份就行. 2.增加了MultiMap(google的guava也有),允许一个key可以有多个value. 3.增加了Predicate做数据筛选,可以用默认的sqlpredicates也可自定义,甚至可以自定义分页查询. client单独出一个jar包了.书里的法子不行.只能自己写. 首先在pom里面加入依赖 <depend…
第一章:数据集群的演化与 早期的服务器架构 显然,应用是可扩展的,但是由于是集中式服务器,随着数据库性能达到极限,再想扩展就变得极端困难,于是出现了缓存.    缓存显然再次提升了可扩展性,减轻了数据库的负担.同时也带来了缓存数据同步的问题,书中介绍主要有2种解决办法: 1.时间限制缓存:指定缓存生存期,过期后重新读取(这会有同步问题,但是至少是可控的) 2.直写缓存:数据更新,直接写入数据库,并通知其他缓存该数据无效,这会有读写冲突,并且在读写频繁时性能也大打折扣.   于是,作者引入了 Ha…
第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的变化复杂问题时就没法使用上面的方法控制: 数据从磁盘或者网络适配器到达 指令除以了零 用户按下 ctrl+c 系统的计时器到时间 现代系统通过使控制流发生突变来对系统状态的变化做出反应,这些突变称为异常控制流. 异常控制流有四种实现机制: 1)异常(低层级):2)进程上下文切换:3)信号:4)非本地…
http://www.cnblogs.com/batteryhp/p/5025772.html python有许多可视化工具,本书主要讲解matplotlib.matplotlib是用于创建出版质量图表的桌面绘图包(主要是2D方面).matplotlib的目的是为了构建一个MATLAB式的绘图接口.本书中的大部分图都是用它生成的.除了图形界面显示,还可以把图片保存为pdf.svg.jpg.png.gif等形式. 1.matplotlib API入门 Ipython可以用close()关闭界面.…
本章的标题是字符输入/输出和输入确认.主要内容是讨论用于I/O的标准函数. 1.getchar()和putchar() 这两个函数之前用过,我们通过这两个函数来讨论下缓冲区. #include "stdio.h" int main (void) { char ch; while ((ch = getchar()) != '#') putchar(ch); ; } 当你所输入的文本能立刻回显时,这是非缓冲或者直接输入的一个实例,它表示你所输入的字符对正在等待的程序立刻变为可用.相反,延迟…
总结:经过这次的Sprint,我在从中收获了很多.作为产品负责人的我,主要责任就是合理分配任务给自己的队友,调动队友的积极性.虽然这其中也有些不尽人意的地方,但是我们都坚持的走了过来,团队合作真的很重要,在以后的工作中也会起到相当大的作用,所以,现在的团队合作就是以后工作的基础. 第八九十章的读书笔记 第八章主要是讲需求分析,而这需求分析在团队中主要涉及到用户这个角色. 需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程.在这个过程中,…