Cache, pool, msg/async ,mailbox ----performance of Data, process, event-router -runtime arch/org Async_Message - event
Cache and session replication/continuation
ehcache for biz layer,but also for or-mapping/hibernator, for the jsp /ehcacheWeb
For applications in this space, arbitrary in-database joins are already impossible since all the data is not available in any single database. A typical pattern is to introduce a caching layer which will require hashtable semantics anyway.
http:// ehcache.org/documentation/concepts.html Stale –tti ttl Pattern of access cache-aside (or direct manipulation) cache-as-sor (a combination of read-through and write-through or write-behind patterns) read-through write-through write-behind (or write-back) [] Continuation and session replication 1.Group commuication Javaspace - obj storage+event bus Jxta Jgroups –multicast Apache tribes 2.Mobile code, farm depoly — Discovery Delivery Replication/ /rmi Terracotta
With ehcache flash animation http:// ehcache.org/documentation/architecture.html Inject cluster aware bytecode The Terracotta deployment architecture has two primary components, client nodes and the Terracotta Server Array. Client JVMs. Your application servers or standalone Java application JVMs are connected to a Terracotta cluster using a Terracotta client driver. The Terracotta client driver is a JAR library that runs on standard Java Virtual Machines and is loaded when your application starts up. http://www.terracotta.org/confluence/display/docs/How+DSO+Clustering+Works On startup, a Terracotta client JVM initiates a network connection with a Terracotta server instance. Once the connection is made, the client is allowed to proceed with its normal startup operations. As classes are loaded into the client JVM, they are instrumented with Terracotta bytecode modifications according to the Terracotta configuration Terracotta's clustering behavior is injected into application code at runtime by the use of bytecode instrumentation. Before the bytecode of a class is loaded by the JVM, Terracotta manipulates the bytecode of that class according to the Terracotta configuration. This includes acquiring clustered locks and pushing changes to clustered objects among other things. instrument only that subset of classes http://www.terracotta.org/confluence/display/docs/Concept+and+Architecture+Guide
p2p
CAP theory Consistency (一致性):即数据一致性,简单的说,就是数据复制到了 N 台机器,如果有更新,要 N 机器的数据是一起更新的。 Availability (可用性):好的响应性能,此项意思主要就是速度。 Partition tolerance (分区容错性):这里是说好的分区方法,体现具体一点,简单地可理解为是节点的可扩展性。 。如果 R + W > N 能够保证我们“读我们所写”, Dynamo 推荐使用 322 的组合。
Map-reduce, bigtable, hadoop STM Data flow CSP Pi Graph model Neo4j, db4o Doc model--couchDB
龙门阵 架构观察 现在对云计算的炒作就如同上百人在电话会议中狂吼一样喧嚣。回顾 20 年来 IT 的演变,较 为特别(其实也不那么特别)的一点就是每次新技术的诞生都发 生了喧嚣的炒作。以 4 到 5 年为周期的技术更新意味着大量赚钱的良机。从最早的大型机到客户端‐服务器、 CASE 工 具、 .COM 、企业架构 ( 如 EJB 和 DCOM) 、 SOA ,以及发展到现在的云计算, IT 一如既往地关 注于如何想方设法赚钱。
Proceeding 守望 javaEE 传播架构的基本 Sun--Left the glassfish Jee 闭门造车 From pattern to agile Container/sca v.s. ESB ~~~~~~~~~~~~~~~~~~~~~~~~~``` Stream as data Rmi v.s. thrift/protoc_buf json Rest sevice/mashup—comet/websocket
v.S nio pool? Actor not well when Need to achieve global consensus from grid to actor 1.Functional style, closure, tail-rec 2. Gpars or scala Thousand of light thread thread pool, For multi-core v.S nio pool? 3. ,async Msg , msg ,mail box : share nothing Actor ,no lock v.s. erlang Context/thread switching is not free ? 4. Gridgain: aop ,p2p class loading split the process, not data partition ?? Continuation and the actor Parallel Collections For bio: pi-calculus, spim
Event driven actors concurrent actors that share a single pooled thread Using fork/join under the hood Supports distributed actors Implementation matters Threads are not free Message sending is not free Context/thread switching is not free Lock acquire/release is not free
http://www.artima.com/insidejvm/ed2/jvm2.html
Arch Monitoring and tuning Weaver/piper make another kind query—data service !! Pipe v.s. map-reduce dataflow Esper , twitter , esb AMQP cloudMQ 号称搞 Cloud + Event Driven Architecture = Internet Scale SOA Stream as data ----- 软件 /app 是个建筑 Soa 是城市规划 For bio-cell