- 博客(26)
- 资源 (6)
- 收藏
- 关注
原创 使用easy-retry轻松进行任务重试
Easy-retry是一个Java任务重试框架。项目主页:https://github.com/bournecui/easy-retry主要特点灵活,可以设置不同的重试策略,比如 发生异常时重试,你可以设置哪些异常被重试、哪些异常被忽略。 返回值不符合预期时重置。 也可以设置中断重试的策略,比如达到最大重试次数、达到最多等待时间等。易用 短短几行代码就...
2018-07-27 17:07:16
1742
原创 Spring编程式事务管理
在基于数据库的应用中,事务是非常重要的。为了方便使用,Spring提供了基于XML和基于注解的方式配置事务,思路都是使用AOP,在特定的切入点统一开启事务,以方法为粒度进行事务控制。并且定义了事务的传播属性,规定了配置了事务的方法互相嵌套调用时的行为准则:PROPAGATION_REQUIRED:支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。 PROPAGATI
2016-03-10 20:40:30
8534
1
原创 快速搭建sonar代码质量管理平台
安装下载,直接解压添加mysql驱动至\extensions\jdbc-driver\mysql\创建mysql数据库和用户:10.22.10.139 sonar sonar/sonar修改sonar.properties,添加以下配置:#----- MySQL 5.x# Comment the embedded database and uncomment the fol
2014-07-29 16:30:24
4489
原创 Maven搭建hadoop环境报Missing artifact jdk.tools:jdk.tools:jar:1.6
Mven搭建hadoop环境,出现错误:org.apache.hadoophadoop-mapreduce-client-core2.4.0
2014-07-24 16:53:45
18824
2
原创 漫游Kafka实现篇之分布式
当路径中的元素包括在方括号里比如[xyz],则表示xyz表示的值是不固定的,每个可能的值都有一个Zookeeper节点。比如/topics/[topic]表示每个topic名称对应/topics的一个子目录。也可以用类似[0...5]表示一个数值范围来表示含有子目录0,1,2,3,4的目录。箭头->表示znode的节点含有某个内容,比如/hello->word表示一个含有“world”的节点。
2014-07-21 11:32:36
3551
1
原创 漫游Kafka实现篇之消息和日志
读操作需要两个参数:一个64位的offset和一个S字节的最大读取量。S通常比单个消息的大小要大,但在一些个别消息比较大的情况下,S会小于单个消息的大小。这种情况下读操作会不断重试,每次重试都会讲读取量加倍,直到读取到一个完整的消息。可以配置单个消息的最大值,这样服务器就会拒绝大小超过这个值的消息。也可以给客户端指定一个尝试读取的最大上限,避免为了读到一个完整的消息而无限次的重试。
2014-07-17 15:53:20
20525
2
原创 漫游Kafka实战篇之客户端编程实例
Consumer API有两个级别。低级别的和一个指定的broker保持连接,并在接收完消息后关闭连接,这个级别是无状态的,每次读取消息都带着offset。高级别的API隐藏了和brokers连接的细节,在不必关心服务端架构的情况下和服务端通信。还可以自己维护消费状态,并可以通过一些条件指定订阅特定的topic,比如白名单黑名单或者正则表达式。
2014-07-11 18:32:57
47129
20
原创 漫游Kafka设计篇之主从同步
Kafka允许tipci的分区拥有若干副本,这个数量是可以配置的,你可以为每个topci配置一个副本数量。Kafka会自动的在个副本上备份数据,所以当一个server down掉时数据依然是可用的。Kafka的副本功能不是必须的,你可以配置只有一个副本,这样其实就相当于只有一份数据。创建副本的单位是topic的分区,每个分区都有一个leader和零或多个followers.所有的读写操作都
2014-07-09 18:41:37
19830
1
原创 漫游Kafka设计篇之Producer和Consumer
负载均衡producer直接将数据发送到broker的leader(主节点),不需要在多个节点进行分发。为了帮助producer做到这点,所有的Kafka节点都可以及时的告知:哪些节点是活动的,目标topic目标分区的leader在哪。这样producer就可以直接将消息发送到目的地了。客户端控制消息将被分发到哪个分区。可以通过负载均衡随机的选择,或者使用分区函数。Kafka允许用户实现分区函数,
2014-07-09 18:40:25
22396
2
原创 漫游Kafka设计篇之性能优化
Kakfa在提高效率方面做了很大努力。Kakfa的一个主要使用场景是处理网站活动日志,吞吐量是非常大的,每个页面都会产生好多次写操作。读方面,假设每个消息只被消费一次,读的量的也是很大的,Kafka也尽量使读的操作更轻量化。我们之前讨论了磁盘的性能问题,线性读写的情况下影响磁盘性能问题大约有两个方面:太多的琐碎的I/O操作和太多的字节拷贝。
2014-07-09 18:39:56
11960
原创 漫游Kafka设计篇之消息传输的事务定义
4.6 消息传输的事务定义之前讨论了consumer和producer是怎么工作的,现在来讨论一下数据传输方面。数据传输的事务定义通常有以下三种级别:最多一次: 消息不会被重复发送,最多被传输一次,但也有可能一次不传输。最少一次: 消息不会被漏发送,最少被传输一次,但也有可能被重复传输.精确的一次(Exactly once): 不会漏传输也不会重复传输,每个消息都传输被一次而且仅
2014-07-09 18:39:52
7931
2
原创 漫游Kafka设计篇之数据持久化
4.2 Persistence(持久化)不要畏惧文件系统!Kafka大量依赖文件系统去存储和缓存消息。对于硬盘有个传统的观念是硬盘总是很慢,这使很多人怀疑基于文件系统的架构能否提供优异的性能。实际上硬盘的快慢完全取决于使用它的方式。设计良好的硬盘架构可以和内存一样快。在6块7200转的SATA RAID-5磁盘阵列的线性写速度差不多是600MB/s,但是随即写的速度却是
2014-07-09 18:39:28
12898
1
原创 漫游kafka实战篇之搭建Kafka开发环境
上篇文章中我们搭建了kafka的服务器,并可以使用Kafka的命令行工具创建topci,发送和接收消息。下面我们来搭建kafka的开发环境。大家开发环境需要引入kafka的jar包,一种方式是将Kafka安装包中lib下的jar包加入到项目的classpath中,这种比较简单了。不过我们使用另一种更加流行的方式,使用maven管理jar包依赖。创建好maven项目后,在
2014-07-09 18:38:48
48027
11
原创 漫游Kafka实战篇之搭建Kafka运行环境
接下来一步一步搭建Kafka运行环境。 Step 1: 下载Kafka点击下载最新的版本并解压.> tar -xzf kafka_2.9.2-0.8.1.1.tgz> cd kafka_2.9.2-0.8.1.1Step 2: 启动服务Kafka用到了Zookeeper,所有首先启动Zookper,下面简单的启用一个单实例的Zookkeeper服务。可以在命令的结尾加个&
2014-07-09 18:38:02
20367
4
原创 漫游Kafka入门篇之简单介绍
Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。这个独特的设计是什么样的呢?首先让我们看几个基本的消息系统术语:Kafka将消息以topic为单位进行归纳。将向Kafka topic发布消息的程序成为producers.将预订topics并消费消息的程序成为consumers.Kafka以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个broker.
2014-07-09 18:37:20
11091
6
原创 Linux 发送邮件,抄送+附件,多收件人
随人Linux自带了功能强大的sendmail服务器,但是这样发送的邮件往往被视为垃圾邮件。以下代码可以登录你的邮箱发送邮件,并且可以添加抄送人,添加附件。其中:邮件的正文在/app/opt/oracle/mail.txt 中 ,r'/app/opt/oracle/report.zip'是的附件。DECLARE pass VARCHAR2(20) := 'Z1234';--????BEGIN FOR c IN (select a.username from dba_users a,icaps
2011-05-26 14:14:00
11683
原创 Rman Oracle 数据库自动备份
<br />1 auto_backup.sh 这是主程序,程序中需要调用下边的连个rman脚本。这三个脚本都要放在对应的文件夹下。<br /># Backup Oracle database############## Variables ##############src_folder=/app/opt/oracle/home/scriptslog_folder=/app/opt/oracle/home/scriptsexport ORACLE_SID=ORCL #Not n
2011-02-11 15:45:00
691
原创 利用exp备份ORACLE,并保存七天内的备份
del d:/prd_db_bkup/prd_db_bkup7.dmp ren d:/prd_db_bkup/prd_db_bkup6.dmp prd_db_bkup7.dmp ren d:/prd_db_bkup/prd_db_bkup5.dmp prd_db_bkup6.dmp ren d:/prd_db_bkup/prd_db_bkup4.dmp prd_db_bkup5.dmp ren d:/prd_db_bkup/prd_db_bkup3.dmp prd_db_bk
2010-11-24 10:46:00
1746
1
转载 RMAN nocatalog完全恢复
RMAN> startup mount;connected to target database (not started)<br />Oracle instance started<br />database mountedTotal System Global Area 135337540 bytesFixed Size 452164 bytes<br />Variable Size 109051904 bytes<br /
2010-11-02 15:45:00
919
1
转载 解决ORA-19625
当手工删除了数据库的归档文件后,需要用这个命令进行同步。 (物理上删除了归档日志,但是控制文件并不知道;因此需要交叉检验以同步信息)crosscheck archivelog all;当手工删除了RMAN的备份级时,需要使用的是这个命令:CROSSCHECK BACKUP;他们的区别是同步的内容不同,一个是同步归档文件的状态,一个是同步RMAN备份信息。
2010-11-02 15:43:00
1433
1
原创 Linux ftp配置
1 安装vsftpd rpm -ivh ******2 添加用户: adduser -d /app/oraarch/db_bkup/ -g ftp -s /sbin/nologin bcui passwd bcui bcui3 更改权限:cd app/oraarch/db_bkup/chown -R bcui /app/oraarch/db_bkup确保21端口开放。
2010-10-29 16:33:00
588
原创 rman实现oracle数据库迁移
1. 综述... 12. 原库备份... 22.1. 创建备份集目录:... 22.2. 创建Rman用户... 22.3. 备份数据库... 23. 准备目标服务器环境(安装Oracle)... 33.1. 配置目标服务器环境... 3安装缺失rpm.. 3检查HostName. 3配置系统内核参数... 33.2. 创建Oracle用户... 43.3. 配置Oracle用户环境... 4创建相应目录... 4修改Oracle启动环境..
2010-09-07 10:20:00
3823
2
原创 在虚拟机安装的Linux上配置VNC
在虚拟机安装的Linux上配置VNC需要注意一下几点,我装的是RedHat Enterprise 4:保证Linux拥有自己独立的IP。这个问题可以通过设置虚拟机的网络连接方式解决。在Network adapter里选择第一项:Bridged。这样可以保证虚拟机独立连接局域网,而不是和Host共享IP地址。设置改变后,一定要重启Linux才能生效。保证Linux上VNC使用的端口和VMware里允许的远程端口一致。VNC默认的端口貌似是5500,为了是他们一致,我把VMware里的端口也改成这个了,在VMw
2010-08-31 15:22:00
4545
转载 win7下面,硬盘安装fedora 12
grub4dos:http://ncu.dl.sourceforge.net/projec...4dos-0.4.4.zip安装步骤:1、解压grub4dos,然后复制grldr、grldr.mbr、menu.lst(可选)放到C盘(系统盘)根目录。2、然后在CMD.exe上右键“用管理员身份运行”。3、先建立一个菜单项bcdedit /create /d “Grub4Dos” /applicat
2009-12-11 21:06:00
2700
原创 selenium中用fireEvent解决select和type无法触发onXXX事件的问题
今天在做selenium+Junit测试的时候,发现selenium的type和select函数虽然能模拟输入和选择列表的功能,却不能触发相应控件上的onXXX 事件,比如onblur、onchange等,使测试无法正确进行。经过一番谷歌和思索,得出了以下解决办法: 首先保证你的测试类继承SeleneseTestCase而不是TestCase(前者是后者的子类),这是
2009-11-16 13:04:00
8241
5
Linux菜鸟过关pdf
2008-12-11
DOS程序员参考手册
2008-12-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人