这个问题遇到的时候,我没有查看告警日志,一直以为是数据库的锁阻塞影响了性能。知道查看日志才发现时归档日志已满。才导致这种问题的产生:Errorsinfile/DBBK/oracle/diag/rdbms/orcl/orcl/trace/orcl_arc0_28918.trc:
ORA-19809:limitexceededforrecoveryfiles
ORA-19804:..
分类:
数据库 时间:
2015-03-11 19:59:44
阅读次数:
1715
队列以一种先进先出的方式管理数据。如果你试图向一个已经满了的阻塞队列中添加一个元素,或是从一个空的阻塞队列中移除一个元素,将导致线程阻塞。 在多线程进行合作时,阻塞队列是很有用的工具。工作者线程可以定期的把中间结果存到阻塞队列中。而其他工作者线程把中间结果取出并在将来修改它们。队列会 自动平衡负载。...
分类:
编程语言 时间:
2015-03-11 14:22:26
阅读次数:
170
1、线程通信的必要性 ????多线程不仅共享资源,而且相互牵制向前运行。 2、线程通信的方法(都是在Object中定义) ????3个方法: ????????????????1)????wait() 可运行转入阻塞状态,...
分类:
编程语言 时间:
2015-03-11 13:09:12
阅读次数:
163
要使业务系统无极缩放,微服务架构方兴未艾。本质上,就是采用API(例如REST) 封装服务调用,形成服务框架。
既然是分布式API调用,必然涉及到网络IO常见的三种方式:
1) BIO:Blocking IO,阻塞方式,一个socket用一个线程处理
2) NIO: Non-blocking IO,事件驱动,采用reactor模式,一个线程中处理多个socket,JDK1.4以上版本支持
3) AIO:Asynchronous IO,异步,采用Proactor模式,NIO在有通知时可以进行相关操作,...
分类:
其他好文 时间:
2015-03-11 08:11:41
阅读次数:
197
原文:数据库垂直拆分,水平拆分利器,cobar升级版mycat1,关于MycatMycat情报基于阿里的开源cobar ,可以用于生产系统中,目前在做如下的一些改进:非阻塞IO的实现,相对于目前的cobar,并发性能大大提升,而且不会陷入假死状态优化线程池的分配,目前cobar的线程池分配效率不高修...
分类:
数据库 时间:
2015-03-11 00:32:59
阅读次数:
252
也就是说,在对象被回收之前,需要执行finalize方法,而finalize方法的执行又是需要排着队由某个线程来一个个消费的。下面我们通过会阻塞住的finalize方法来验证看看,...
分类:
其他好文 时间:
2015-03-10 21:36:43
阅读次数:
164
Java 并发JavathreadSocketC#C++并发Table of Contents1 什么是并发问题。 2多线程死锁问题2 java中synchronized的用法 3 Java中的锁与排队上厕所。 4 何时释放锁? 5 Lock的使用 6 利用管道进行线程间通信 7 阻塞队列 8 使用...
分类:
编程语言 时间:
2015-03-10 11:56:05
阅读次数:
174
之前说到事件,讲了事件,信号量和互斥信号量,还有一个队列没说,今天说说队列. 队列是用在任务之间传送多个消息的时候,a任务发送消息,b任务发送消息,然后c任务可以依次去提取出b和a传递的消息,不会造成系统的阻塞,他的实现结构如下在队列的实现中,也是使用事件ecb,OSEventType为OS_EV....
分类:
其他好文 时间:
2015-03-10 01:20:40
阅读次数:
255
1、yield方法 ????注:yield方法被调用后,并不是让当前线程转入被阻塞状态,而是转入可运行状态 2、创建同优先级的使用yield方法的类 package?com.ljb.app.thread;
/**
?*?第一个线程(使用yield方法)
...
分类:
编程语言 时间:
2015-03-09 16:25:39
阅读次数:
258
ReentrantLock和synchronized的选择1 synchronized的弊端,简化了代码工作,并且与异常处理操作实现了很好的交互,但是表现不够灵活,对线程控制较小,比如无法中断等待的线程,或者无法在请求获取锁时无限的等待,也没法实现非阻塞结构的加锁规则。2 reentrantlock...
分类:
编程语言 时间:
2015-03-09 16:04:42
阅读次数:
166