自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Paxos的应用场景

在分布式算法领域,有个非常重要的算法叫Paxos, 它的重要性有多高呢,Google的Chubby [1]中提到 all working protocols for asynchronous consensus we have so far encountered have Paxos at their core. 关于Paxos算法的详述在维基百科中有更多介绍,中文版介绍的是choose value的规则[2],英文版介绍的是Paxos 3 phase commit的流程[3],中文版不是从英

2010-12-21 22:37:00 792

原创 hessian over tcp[zz]

原文 http://618119.com/archives/2009/01/11/126.html  作者 lizongbo 扩展java.net.URL支持自定义协议来优化hessian调用 hessian是个高性能的java RPC调用协议,但是官方默认只提供了基于http和https两种方式的远程调用。 虽然每天使用http方式调用上千万次也没出现性能问题,(有jdk一份功劳,jdk1.5及以上版本支持了http.KeepAlive, 默认设置为: http.KeepAlive.rem

2010-11-24 01:33:00 1274

原创 amoeba------介于DB和客户端之间的代理

http://amoeba.meidusa.com/wordpress/?page_id=2 很实用的项目,还是国产,支持一下

2010-09-02 15:32:00 379

原创 Ecipse走向MDA

在Rational Architect中,MDA过程是: 通过工具本身建立设计Model,中间可以用pattern来优化设计。 然后,根据自己的架构,开发符合Rational Architect要求的转换插件,把模型转换为代码模型;也可以把模型转换为代码。 可以反向。 而在open source里: 通过ArgoUml设计模型。 通过Argo2Ecore转换为xmi。 基于Merlin开发自己的代码模板或插件。 把模型转换为符合自己框架的代码。 如果自定义@Generator可能可以反向,

2010-07-16 16:31:00 517

原创 模型驱动架构

模型驱动架构 自从2002年被OMG(Object Management Group 国际对象管理集团)提出以后,"随风潜入夜,润物细无声",未见轰轰烈烈宣传,各大厂商却惊人一致地争相跟进,关于MDA的话题转眼之间在网络上也如火如荼地繁荣起来了。为了实现MDA这一宏大构想,OMG制定了一系列的标准 UML:UML被MDA用来描述各种模型。它并不是为MDA而生,但是作为目前最为风行的建模语言,UML已经占据了全球建模语言领域90%的市场份额,成为了建模语言事实上的标准,因此OMG将它作为MDA技术的基础是

2010-07-16 16:25:00 559

原创 MDA工具

ATL ATL 是一种混合语言(宣告式与命令式的混合)设计用于表达MDA框架中的模型转换。它通过一种抽象的语法(一种MOF元模型)进行描述,建模者可以利用上下文相关的语法和一个辅助的图形符号来描绘转换模型的局部视图。 一种转换模型在ATL中表示成一组转换规则。推荐采用宣告式的编程风格。 openArchitectureWare(oAW) openArchitectureWare (oAW)是一组工具和组件能够辅助使用模型驱动(Model-Driven)所进行的软件开发。它构建在一个模块化的MDA/

2010-07-16 16:19:00 2537

原创 Flex4+Eclipse3.5.2+spring3+blazeds完美整合方案

四、创建工程 待续

2010-06-10 18:29:00 936 1

原创 Flex4+Eclipse3.5.2+spring3+blazeds完美整合方案

三、环境的安装 1、 解压eclipse到你指定的目录,比如D:/eclipse 2、 安装FlexBuilder插件版,安装过程中几个值得注意的地方: a) 先选择解压目录,这个目录在FlexBuilder安装完成之后是没用的,安装完之后可以删除。 b) 再选择安装目录,比如D:/FlashBuilder c) 有一个选择Plugin to another eclipse的地方,一定要选上,然后指向刚才eclipse的目录。 3、 在线安装Spring和Hibernate插件,

2010-06-10 17:55:00 1583 1

原创 Flex4+Eclipse3.5.2+spring3+blazeds完美整合方案

一、初学者的苦恼 Flex4通过blazeds直接调用spring的bean,bean调用hibernate操作数据库,怎么样,是不是一个完美的方案?但我在学Flex的过程中,网上有无数关于Flex和Spring的整合方案的文章和实例,但是事实证明,大多都跑不起来,或者调用不到spring的bean。关于这个,有两种可能性:一是各个组件版本升级了,比如从Flex3升级到Flex4,导致原来可用的东西不可用了;二是作者不负责任,给出的代码不全甚至错误,误导我等初学者。 在我折腾了两天之后,终于能够前后跑通

2010-06-10 09:48:00 2853

原创 JMX笔记

注册MBean时其ObjectName是随意取的,只要包含一个冒号,冒号前表示域,冒号后表示名称。管理界面会根据域来分类。

2010-05-05 21:04:00 268

原创 aspectj几点容易混淆的点备忘

1、execution和call切点:    比如A方法调用了B方法,那么call(void B(int))捕捉到的是A方法, 对应的通知将在调用B方法的前后执行。execute(void B(int))捕捉的是 B方法的执行,对应的通知将在方法体的最前/最后执行。 2、this和target: 根据我的理解,this、target、args三个切点关键词是用于切点参数化时,传入参数用的。比

2010-02-28 18:46:00 1204

原创 编程性能之取大舍小

一个系统的性能,80%取决于20%的功能,这20%的功能是访问最为频繁的功能,也是系统优化的主要目标。优化时绝对不要对着次要的功能甚至细枝末节紧追不舍。比如,一个账号服务器,优化的目标当然是验证类的功能,而非设置类,后者使用的人少,对系统较少构成威胁。 当系统出现性能问题,能够比较准确的判断出问题的方向,需要非常多的经验积累。判断是大致方向之后,准确定位到问题之所在,更是一个精细的技术活,需要经

2010-02-10 14:45:00 641

原创 万无一失地通过反射调用方法

大概BeanUtils大半人都用过,MethodUtils用过的人少。最后写一个东西需要通过反射调用方法,就自己通过简单的反射来实现,测试通过,但是发现在多个ClassLoader的环境中有问题(尤其是有继承关系的时候),明明有这个方法却说没有这个方法,或者获取到了方法却无法调用。 只能说我对反射的底层了解得还不多,做了不同的尝试之后我放弃了,转而使用MethodUtils中的方法: Meth

2010-02-10 14:24:00 747

原创 关于使用jaxb做配置解析

jaxb是个好东西,三步解决配置解析问题: 1、首先写好自己的xsd文件(用于规定配置文件的格式) 2、使用xjc命令生成对应的java配置类。 3、使用生成的java类和jaxb工具类来解析配置文件。 例如,我写好一个server.xsd: http://www.w3.org/2001/XMLSchema"     xmlns:tns="http://www.x

2010-02-08 18:31:00 1153

原创 代码生成之merge

代码生成之后,手动修改了后,再次生成时怎么办?覆盖当然不行,不覆盖也不行,这时就涉及到代码合并的问题。 代码的merge算法是相当复杂的,我粗略的想了一下,就有不少的技术难点。merge的思路基本上分为两个:1、基于文本文件的合并;2、基于java类结构的合并。 其实类似svn的merge方法挺好的,如果没有冲突的话直接合并,如果有冲突,标记之。 网上找了一下,好像没有很好的开源实现,有一个

2010-02-08 18:30:00 766

原创 解决服务器问题的数据库负载均衡

刚开始服务器开始挂的时候,发现其中一台数据库负载特别搞,活跃连接数达到数百个甚至上千个,后来发现新用户都分配在这台机器上,新用户一般比较活跃,对服务器的压力较大。当时采用的数据库分库的原理是按userNo按段分配,比如0-30万分配给db0,30-60万分配给db1。 这种分库的原则完成没有达到负载均衡的作用,但这是我接手时的现状。所以我决定,在总库增加字段,表示该用户被分配到哪个分库中去了。同

2010-02-06 02:21:00 592

原创 深圳——》杭州?

2010-02-06 01:34:00 757

原创 最近分析数据库问题总结(linux+mysql)

1、show processlist非常有用,正常状态下,非Sleep状态的进程应该只有几个,偶尔出现十几个、几十个,但是成百上线的就不正常了。Sleep状态的不用管,一般使用了连接池就会有大量的Sleep进程(连接)。 2、如何分析各种状态的连接数?首先执行mysql –uroot –p123456 –e “show processlist” | grep –v Sleep > tmp.txt

2010-02-06 01:32:00 555

原创 服务器扫雷中

稳定了几天的服务器又继续不稳定了,经过排查,首先发现mysql show processlist的时候,里面数百个进程都在closing table/opening table,另外十多个进程在Copying to tmp table。Copying to tmp table是一个select ….where ….group by …..order by语句引起的,这个语句group by字句使用

2010-02-06 01:10:00 672

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除