`
文章列表
      上一节的Actor系统解释了Actor的层次和构建的应用程序的最小单元。本节着眼于单独的一个Actor,解释为了实现它你需要了解的概念。更深入的详细信息,请参阅Actors (Scala)和无类型的Actor(JAVA)(链接暂时缺失)。       一 个Actor包含状态(State),行为(Behavio),邮箱(Mailbox),子Actor(Children)和监管策略 (Supervisor Strategy)。所有这一切都被封装在一个Actor引用(Actor Reference)中。最后讨论什么时候一个Actor生命结束。 2.3.1 Actor引用(Actor ...
     Actor是封装了状态和行为的对象,它们仅仅通过交换消息(messages)实现相互通信。这些消息被放置到收件人的邮箱(mailbox)中。从某种意义上说,Actor是面向对象编程的最严格的形式,同时它让人更好理解它们:考虑使用Actor的解决方案,假设一群人,并指派子任务给他们,按照他们的职能作用将他们划分到一个组织结构中,并且需要思考如何处理失败的场景(所有不实际与人打交道的,这意味着我们不需要因为他们的情绪状态或道德问题涉及到己的利益)。这个结果可以作为软件实现的心理脚手架。        注:Actor 系统是一个重量级的结构,将分配1。 。 N个线程,为每一个逻辑应用程 ...
首先简单介绍一下 AKKA: Akka是一个开发库和运行环境,可以用于构建高并发、分布式、可容错、事件驱动的基于JVM的应用。使构建高并发的分布式应用更加容易。 有兴趣的童鞋可以看看官网 ,本系列翻译至它2.3.6版本的文档 , 前面的介绍、特性、使用安装就不说了,从第二章开始。 在本章中,我们尝试建立一些共同的术语,来为akka的目标并发和分布式系统的交流打一个坚实基础。值得注意的是,对于许多术语并没有一致的定义。我们仅仅简单地寻求在akka文档的范围中能使用的定义。 2.1.1 并发与并行      并发和并行是两个相近的概念,但是又有微小的差别。并发性是指两个或多任务正在运行 ...
  接上篇:Apache Commons Pipeline 使用学习(一)   stage生命周期      当pipeline组装、运行的时候,每个stage通常是在它自己的线程中运行(pipeline的所有线程由同一个JVM实例所拥有)。这种多线程的方法在多处理器系统中有处理上的优势。对于给定的stage,各种stage的方法按照顺序运行: init(), preprocess(), process(), postprocess() and release()。然而,stage之间各方法开始和完成的顺序是不确定性。换言之,在具有多个stage的pipeline不能指望任何特定s ...
本系列源于对commons-pipeline 使用的学习:   首先是:翻译官方文档   本文是针对使用 Apache Commons Pipeline工作流程框架的基础介绍,本文档目标读者为需要组装现有stages或编写自己的stages的开发人员。该项目提供了一个Java类 ...
一、OGNL & MVEL 关于OGNL的使用参见: http://www.ibm.com/developerworks/cn/opensource/os-cn-ognl/ 关于MVEL的使用参见:http://mvel.codehaus.org/Getting+Started+for+2.0   二、性能 关于OGNL&MVEL两者的性能一开始看到 http://mvel.codehaus.org/Performance+of+MVEL+2.0 等等一系列的 测试报告的时候几乎都要相信的放弃OGNL了 并且在第一篇文章中也有OGNL和java原始调用的对比,实际测 ...
          在实际使用apache+mod_jk+tomcat(jboss) 架构的过程中,时常碰到对各处连接池数设置含义不清楚,设置错误,导致故障。本文集中讲述连接池相关内容: 一、apache 在 apache 2.0 中,引入了影响性能的最核心模块:MPM(multi‐processing‐modules), MPM包含多种工作模式,MPM={beos|worker|prefork|mpmt_os2| perchild|leader|threadpool} 。最常使用的 worker 模型为例。它支持多线程和多进程混合工作。在httpd.conf中时常有如下配置:   ...
问题描述:    之前系统使用mod-jk+ajp协议链接apache+tomcat。正常请求  http://xxx.com/show.htm 在某一处转义为:http://xxx.com/sho%2577.htm 。这样的链接。并且可以正常访问。     迁移mod-proxy之后转义之后的URL不能访问。   原因:   1、mod-jk  1.2.23 以下的版本默认会做一次URL decode。参见(http://tomcat.apache.org/security-jk.html) 2、jk的配置里面添加 JkOptions +ForwardURICom ...
场景描述:  使用fastjson的JSON.toJSONString(Domain)的时候,如果Domain中有字段是通过spring proxy出来的,在spring3以上版本会报错,spring3以下不受影响:代理代码如下:   ProxyFactory proxy = new ProxyFactory(Manager); proxy.addAdvice(Interceptor); return (VO) proxy.getProxy();    报错如下:   Caused by: com.alibaba.fastjson ...
问题记录:   在extjs 4,使用combox的store的filter,但是第一次始终不起作用,第二次开始正常。   解决办法如下: http://docs.sencha.com/extjs/4.0.7/#!/api/Ext.form.field.ComboBox-property-lastQuery   即添加:   queryMode: 'local', triggerAction: 'all', lastQuery: ''    
一、背景:      公司最近将jboss的版本从4.5 升级到7,之后发现从cookie中,获取不到用户的信息了。经过debug发现,保存用户信息的cookie,在request.getCookie()之后就是被截断了。本来是 key=x_l=1&x_locale=zh_CN&no_popup_today=n&user=xxx|xxx|xxx|xxx|xxx&xxx=xxx 但是获取到值是key=x_l。   二、相关代码以及问题解决:         在jboss包里 org.apache.tomcat.util.http.Cookies  类 ...
本文系翻译:原文地址 你注意到了吗?JDK 8早期可访问版本已经提供下载了,java 开发人员可以使用java 8 提供的新的语言和运行特性来做一些实验。其中一个特性就是完全的移除永久代(Permanent Generation (PermGen)),这从JDK 7开始Oracle就开始行动了,比如:本地化的String从JDK 7开始就被移除了永久代(Permanent Generation )。JDK 8让它最终退役了。本文将会分享至今为至我收集的关于永久代(Permanent Generation )的替代者:元空间(Metaspace)的信息。我也会比较在执行JAVA 程序时Ho ...
本文系翻译: 原文地址:mechanical-sympathy.blogspot.com/2013/07/java-garbage-collection-distilled.html java垃圾回收精华 串行(Serial),并行(Parallel),并发(Concurrent),CMS,G1,年轻代(Young Gen),新生代(New Gen),老生代(Old Gen),永 ...
文本通过实例比较了各种基于锁的并发算法和无锁并发算法的性能:系 http://mechanical-sympathy.blogspot.com/2013/08/lock-based-vs-lock-free-concurrent.html  文翻译         上周在由Heinz Kabutz通过JCrete 组织的开放空间会议(unconference)上,我参加一个新的java规范 JSR166 StampedLock的审查会议。StampedLock 是为了解决多个readers 并发访问共享状态时,系统出现的地址竞争问题。在设计上通过使用乐观的读操作,StampedLock ...
文本详细介绍了linux 内存屏障的知识:系 https://www.kernel.org/doc/Documentation/memory-barriers.txt 文翻译 ============================ Linux内核的内存屏障============================ By: David Howells <dhowells@redhat.com> Paul E. McKenney <paulmck@linux.vnet.ibm.com>  内容:  (*)抽象内存访问模型。       ...
Global site tag (gtag.js) - Google Analytics