Endeca自动化流程管理之浅淡

DreamForce从事Endeca架构设计与开发有半年之多,Endeca其实也不算是什么神奇的东西,大可以认为就是一个搜索引擎同时配置了一个以数据为驱动的视图引擎。

不过遗憾的是,Endeca在中国的份额并不多,而且Endeca对于大多数IT从业人员来说也较为陌生,所以关于Endeca的自动化流程管理也并没有所谓的最佳实践,DreamForce就谨此以半年左右的所思所想进行一下总结。

Continue Reading →
 

Oracle Endeca& Experience Manager 简介

2011年10月18号,Oracle公司宣布收购Endeca,Endeca是一个在电子商务(E-commerce)及商业智能(BI)等领域的基于非结构化数据管理的先驱。

Orcacle公司计划创造一个集处理,存储,管理,搜索以及数据分析等功能为一体的综合技术平台,以使业务更加健壮和更利于分析。 而Endeca就是Orcale这套综合平台中的的关键点之一: Search

Endeca是一个可以让你构建个性化,一致的用户体验的产品解决方案。同时Endeca解决方案是跨平台:无论你是手机,在线,社交场合,只要能与业务相联,Endeca就会分析用户行为或用户资料并回应你相应的Target,对应的Content等等。

Continue Reading →
 

Gradle最佳实践

为什么会用Gradle

其实这个也是我最先使用Gradle这个脚本的的疑问,说实话,dreamforce是带着疑问去编写这个脚本的,幸运的是, gradle并不是一个非主流的脚本,他结合并保持了动态脚本语言的特色和书写方式,而dreamforce有着JAVA和Python的基础能很顺利的上手这门脚本语言。

gradle上面支持Groovy语法,也就是说也支持着原生的JAVA语法,如果你实在不清楚groovy的API,可以干脆直接写JAVA代码,这是完全支持的。gradle与Maven可以完美的结合,gradle也可以完美的支持ANT脚本,shell脚本..etc..

经过了数天的脚本编写后,Dreamforce发现Gradle确实比较实用,扩展性相当不错,甚至可以书写出非常良好可维护的代码结构,而这是ANT这些脚本很难做到的。(你见过面向对象的ANT么?可是你可以写面向对象的Gradle)

Continue Reading →
 

Gradle入门(DreamFroce精选版)

What’s Gradle?

Gradle is build automation evolved. Gradle can automate the building, testing, publishing, deployment and more of software packages or other types of projects such as generated static websites, generated documentation or indeed anything else.

Gradle combines the power and flexibility of Ant with the dependency management and conventions of Maven into a more effective way to build. Powered by a Groovy DSL and packed with innovation, Gradle provides a declarative way to describe all kinds of builds through sensible defaults. Gradle is quickly becoming the build system of choice for many open source projects, leading edge enterprises and legacy automation challenges.

Continue Reading →
 

Groovy 教程入门精选(DreamForce整理版)

What’s Groovy?

Groovy is an alternate language for the JVM — alternate meaning that you can use Groovy for Java programming on the Java platform in much the same way you would use Java code. Groovy code combines well with Java code when writing new applications, and can also be used to extend existing ones. Groovy currently is in version 1.5.4 and works on the Java 1.4 and Java 5 platforms, as well as Java 6.

Continue Reading →
 

Python简单入门教程:使用Python提高工作效率

DreamForce,最近闲的蛋疼,所以开始学习Python。
Why Python?

其实我也纠结了很久,比如有Perl,RUBY等等等等。可是最终选择了Python,因为Google也选择了Python,其实Python的语言很简洁明了,再加上它鲜明的版式编码,让我也觉得很新奇。
Python能做什么?

很多人都会问这个问题,Python是一个跨平台的脚本,我相信作为业内人士,这一句话已经够解释很多了。Dreamforce本人之所以要学习和应用Python是为了弥补JAVA某些领域的不足,比如我C/C++真的很菜,我不可能为了一款简单的桌面工具而花费极大的学习成本,毕竟这些工具的开发只是为了提高效率而已,并不是作为我的主流产品的开发线。

Continue Reading →
 

JAVA序列化的浅析与性能优化(Best Practice about Serialization)

文章会的简要目录如下:
Serialization的概述
用‘transient’进行性能优化
关键点总结
Serializtion的概述
Serializtion是将一个完整的JAVA对象写入输出流的过程,这个流可以是文件,字节数组或者TCP/IP相关的Socket流。
Deserializtion就是反序列化,也就是说将一个完整的JAVA对象从输入流里读取出来。

JAVA类必须如果实现 java.io.Serializable或 java.io.Externalizable 接口,也可以继承实现了这些接口的超类。那么此JAVA对象就被序列化或者反序列化了。
所以的基本数据类型和一些JAVA API类都是进行了序列化的,你不必要进行额外的序列化。
如果你使用Externalizable可以定制你的序列化方式。这篇文章主要关注的是Serializtion接口
Serializable接口是一个标志位接口,他没有任何的接口方法。像EJB,RMI,ATG这些主流的JAVA技术都是基于序列化进行对象传输的,这些技术本身都暗中的将你的对象进行了序列化的操作。。

Continue Reading →
 

关于JMS与SPRING的整合实例(基于Apache ActiveMQ)

什么是JMS?
jms即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。
JMS的优势
当前,CORBA、DCOM、RMI等RPC中间件技术已广泛应用于各个领域。但是面对规模和复杂度都越来越高的分布式系统,这些技术也显示出其局限性:
(1)同步通信:客户发出调用后,必须等待服务对象完成处理并返回结果后才能继续执行;
(2)客户和服务对象的生命周期紧密耦合:客户进程和服务对象进程 都必须正常运行;如果由于服务对象崩溃或者网络故障导致客户的请求不可达,客户会接收到异常;
(3)点对点通信:客户的一次调用只发送给某个单独的目标对 象。

Continue Reading →