前言在Java项目中,比如我们经常使用String的split方法对文本进行处理;在Map/Reduce中,我们也需要对HDFS文件读取后对line进行分割,也涉及到split。前几天,本来“好好的”程序,突然在split处报错,后来才知道由于有一条“脏数据”导致split“超出”了预期,才导致了“不可..
分类:
编程语言 时间:
2015-06-12 15:21:42
阅读次数:
156
客户端定义的变量永远都是一个人在用,所以定义成类的成员变量不会产生脏数据,对成员变量的访问都是一个线程一个人在操作。可以尽可能的使用成员变量。Java服务端的程序是并发的,有可能并发数会很大超过100多,后台的程序都是多人多线程访问,所以减少业务层成员变量的定义,..
分类:
移动开发 时间:
2015-06-12 15:16:38
阅读次数:
182
1、C语言有一个标准:变量的定义一般写在函数的开头2、变量一定要初始化,不然使用的就是脏数据,原因如下:变量如果不初始化,可以编译成功,但是执行的时候,很可能报错,我们要知道操作系统是如何管理内存的!每当一个应用程序打开时,操作系统为其分配内存,内存有内存地址与内存单元,当应用程序初始化运行时,就会...
分类:
编程语言 时间:
2015-06-08 21:21:00
阅读次数:
131
先解释下两个概念:high watermark (HW) 它表示已经被commited的最后一个message offset(所谓commited, 应该是ISR中所有replica都已写入),HW以下的消息都已被ISR中各个replica同步,从而保持一致。HW以上的消息可能是脏数据:部分repl...
分类:
其他好文 时间:
2015-05-25 18:27:04
阅读次数:
271
共享内存模型,顾名思义就是通过共享内存来实现并发的模型,当多个线程在并发执行中使用共享资源时如不对所共享的资源进行约定或特殊处理时就会出现读到脏数据、无效数据等问题;而为了决解共享资源所引起的这些问题,Java中引入了同步、锁、原子类型等这些用于处理共享资源的操作; 在本篇文章中,将通过几个De.....
分类:
编程语言 时间:
2015-05-21 06:32:43
阅读次数:
303
参考:http://comedsh.iteye.com/blog/698733并发操作数据库,遇到的问题1、丢失更新如果两个事务都要更新数据库一个字段X,x=100事务A事务B读取X=100读取X=100写入x=X+100写入x=X+200事务结束x=200事务结束x=300最后x=300两个不同事...
分类:
数据库 时间:
2015-05-09 18:49:34
阅读次数:
133
关于脏数据比如说,有两个用户A,B同时操作数据库,A开始了一个事务,修改了某行,但还未提交,这个时候,B开始另一个事务,读取了该行,然后A回滚了事务,即修改被取消了,那么,B读取到的那一行数据就是脏数据上面这句话正确吗?如果事物A未提交,事物B能读到A所修改的数据吗?如何判断A,B是否属于同一个事物...
分类:
其他好文 时间:
2015-05-04 13:34:09
阅读次数:
107
移动端缓存增量更新 在app的时候, 为了用户体验, 一般都会引入缓存来加速app的运行. 而缓存这东西用的好则是倚天剑, 用的不好, 容易带进脏数据.这里来说说移动端缓存增量更新的设计思想. 以通讯录为例子.通讯录 场景1 : app上没有任何缓存记录. 场景2 : app上存在缓存记录, ...
分类:
移动开发 时间:
2015-04-29 00:13:48
阅读次数:
780
事务就是对一系列的数据库操作(比如插入多条数据)进行统一的提交或回滚操作,如果插入成功,那么一起成功,如果中间有一条出现异常,那么回滚之前的所有操作。这样可以防止出现脏数据,防止数据库数据出现问题。开发中为了避免这种情况一般都会进行事务管理。Spring中也有自..
分类:
编程语言 时间:
2015-04-27 00:36:56
阅读次数:
133
从当前的工作目录中和索引中删除文件。可以递归删除,即如果后面跟的是一个目录做为参数,则会递归删除整个目录中的所有子目录和文件。git分支操作在本地建立分支,然后与本地主枝合并,最终提交到服务器。有效的避免了因个人操作不当向服务器提交过多脏数据,避免频繁gitclone服务器来更新本地库。如果一次提交...
分类:
其他好文 时间:
2015-04-23 23:18:47
阅读次数:
181