06 2010 档案
摘要:http://stackoverflow.com/questions/732512/sql-server-vs-access-insert-performance-in-particular-when-using-guid可以看出Access的性能在每秒1.5w,而sqlserver在1400.http://www.cnblogs.com/wlb/archive/2010/03/02/167613...
阅读全文
摘要:------------------前言------------------开发了这么多年,发现最困难的程序开发就是通讯系统。其他大部分系统,例如CRM/CMS/权限框架/MIS之类的,无论怎么复杂,基本上都能够本地代码本地调试,性能也不太重要。(也许这个就是.net的企业级开发的战略吧)可是来到通讯系统,一切变得困难复杂。原因实在太多了,如:性能永远是第一位:有时候一个if判断都要考虑性能,毕竟...
阅读全文
摘要:安装之后。进入命令行mysql -uroot默认密码是空的,所以不需要写。有密码登录:mysql -uroot -pxxxxx修改密码:mysqladmin -uroot password xxxxx已经有密码之后,再修改mysqladmin -uroot -pxxxxx password yyyyyy显示数据库show databases;use test;show tables;使用myecl...
阅读全文
摘要:服务器对全局发送消息必须有个缓存。原因如下:假设服务器的运算瓶颈是每秒钟发送100个信息;如果这个时候服务器本身产生的发送消息数据远远大于了这个数量,会导致服务器宕机,即使不宕机也运行出现异常。而且有可能突然间访问量暴增,如果在socket这一层面可以阻止过高的访问量,那么剩下的就是运算瓶颈。 这2点相互制约。因此理论上要获取信息的过程快,同时检查运算瓶颈,防止服务器宕机。根据这个思路,所有接收的...
阅读全文
摘要:flash能够提供的类型:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--package{importflash.utils.ByteArray;publicclassValueObject{publicvarstringvalue:String;...
阅读全文
摘要:上月工作小结comet+socket的结合。Testdriven的最新框架,支持自动验证。上月基本上完成了50%的任务,中途应该加盟新的webgame公司,大部分计划都搁浅了。----------------------------06-07月计划:<软件工程>2. bamboo实现计划导出报表。方便查看。3. 完成wiki 实现最终的需求跟踪, 能够查看需求、api、version、...
阅读全文
摘要:测试代码:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--importjava.lang.reflect.Method;importjava.util.Calendar;importjava.util.Date;importnet.sf.cglib...
阅读全文
摘要:转行java仅3天,就发现java的所谓开源,简直就是一群不用脑子的程序员张大着嘴巴,等待别人开发出各种框架然后用在自己的程序里。一个很简单的例子,使用flex+java+AMF+socket的架构里面,我搜遍了互联网,仅仅提示了使用blaszeds的remote object / spring之类的http方式集成。即使有socket,也仅仅是使用了java:hashmap -> flas...
阅读全文
摘要:http://www.qqread.com/netbase/w478517.html菜鸟课堂:几个动态代理Proxy工具性能比较JDK 6和CGLib cglib-nodep-2.2.jar对比结果:JDK Proxy: 1,049,937 calls/sCGLIB: 2,820,130 calls/s如果使用cglib以前版本,性能更快:JDK Proxy: 1,037,575 calls/sC...
阅读全文
摘要:http://www.blogjava.net/pixysoft/http://www.blogjava.net/pixysoft/archive/2010/06/17/323706.htmlhttp://www.blogjava.net/pixysoft/archive/2010/06/17/323681.html上文介绍了 Spring的一些配置、Ioc、集成blazeds等;介绍了flash...
阅读全文
摘要:参考了QQ、MSN、GTALK、FETION的协议和源代码,进行了一定的优化。传输协议使用精简XML表达(使用attribute,不使用element)登录方式参考了QQ,采取先获取token,然后对之后的信息进行加密传输。在稳定性方面,增强了对链接的健康度检查,包括出错率、发送频率等等;一旦出现异常立刻挂断。对话方面参考了SIP协议,使用INVITE?BYE协议进行会话绑定。客户端设计参考了lu...
阅读全文
摘要:最近在写即时通讯服务器的时候,遇到了一个两难的问题,就是关于通讯协议中会话的设计。首先先说说现有的一些协议设计:1. Msn、Sip、Fetion(SIP)这种协议中,双方要建立会话,首先会发出一个建立会话请求,以下以一个SIP对话为例:首先向服务器发送一个INVITE,之后收到了OK才能进行对话。MSN的协议设计也是一样,不过MSN会INVITE之后开启一个新的socket进行对话。这种协议设计...
阅读全文
摘要:-----------------前言-----------------本人最近受朋友邀请,转战webgame。可是这个行业的人,排的上名次的,都是统一口径:使用java+linux+flash,拒绝dotnet+windows server.我试图说服,可是发现问题不是.net性能如何好、如何廉价,而是更深层次的问题。-----------------为啥选择Java而不是.net?------...
阅读全文
摘要:http://www.blogjava.net/DoubleJ/archive/2009/08/14/183796.html这是篇很好的介绍文章。http://tonyaction.blog.51cto.com/227462/42039这篇简单的说了spring和aop的实现。先说下背景:spring发展自2002年;而.net发布时间是2003、4、3.应该是接近。从时间上,很难说谁抄袭了谁。个...
阅读全文
摘要:SIP协议:http://tools.ietf.org/html/rfc3261#page-69http://hi.baidu.com/nathan2007/blog/item/1ee3823422ebbdb6d1a2d376.html通过分析,大概过程是:Invite -> ok 绑定了一个信道,之后对话。因此是现有dialog,之后才能对话。在这点,可以看出原来的MyFetion丢失了这...
阅读全文
摘要:入口点是:ScoketAcceptor.bind。SocketAcceptor初始化的时候,1. 绑定executor / 2 新建SocketIsProcessor.startupWorker();==>selector = Selector.open(); // selector 是java.nio的一部份worker = new Worker();// RUnnableexecutor...
阅读全文
摘要:LumaQQ 发送信息流程:MessageManager.SendIMPackageManager.Sendpacket: port =QQPort.Main.NameConnectionManager.EnsureConnection == 确认ConnectionPool 建立socket链接ConnectionPool. Send = IConnection.Send()TCPConnect...
阅读全文
摘要:--------------------前言 Preface--------------------本文介绍了一种新颖的测试思路,并制作了原型系统展示其效果。此技术将作为测试驱动框架2.0的一个部分(Testdriven 2.0) 。而测试驱动2.0的目的是:让代码之间沟通,让变化更加容易。--------------------测试分类 与 本文的讨论对象 Catalog------------...
阅读全文
摘要:------------------前言 Preface------------------这几天正在做dynamic的时候,突然想到了测试框架的最新思路。------------------思路介绍------------------整个测试流程主要是:给出测试数据,查看符合的结果。测试种类非常多,例如CS界面测试(使用钩子等录制并回滚);BS界面测试(使用js直接调用) ;网站的测试(模拟ht...
阅读全文
摘要:优化前性能对比:对象获取dummy结构对比ObjectWithValueAndAttribute p = new ObjectWithValueAndAttribute();100000------ Test started: Assembly: Pixysoft.Framework.Reflection.dll ------reflectionTime Elapsed:4,589msCPU ti...
阅读全文
摘要:1. Dictionary 性能很差,用int比用string做索引快30%左右。2. typeof / type.Assembly / type.Assemlby.XXX 等操作 性能超级差。几乎差了50%!!! 简直是恶劣!3. 2010-06-07:0548在测试remoting的时候,竟然发现了foreach/for使程序性能降低了一倍。如果是按照流水线去写代码,使用300ms,如果是使用...
阅读全文
摘要:参考了微软的realproxy设计模式,使用相同的IMessage结构,重写了整个proxy。使用了emit技术,性能得到了极大提升。模仿旧的pojo代码,得到:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--classMyProxy<T&g...
阅读全文
摘要:方案一:使用RealProxy实现接口,并操作get、set方案二:使用Emit创建接口实现类,并使用DynamicMethod构造创建constructor,操作getset方案三:使用emit创建接口实现类,并用Activator.CreateInstance创建实例。操作getset对比结果:代码Code highlighting produced by Actipro CodeHighli...
阅读全文
摘要:原来的序列化使用微软的。可是接口、内部类无法序列化,根本没法用。后来使用了自己的xml技术+反射,可是性能非常的垃圾。于是用了1天时间写了个emit框架,性能大幅度提升!对比结果:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--publicvoid...
阅读全文
摘要:------------------前言------------------反射性能实在是太恶劣,在通讯系统、数据库系统中已经无法忍受了。于是我在codeproject上找到一篇使用DynamicMethod的替代方法。http://www.codeproject.com/KB/cs/Dynamic_Code_Generation.aspx可是作者实在也太简陋了,目前仅支持FIeld / Prop...
阅读全文
摘要:1. 反射序列化与动态编译序列化。比较结果:------ Test started: Assembly: Pixysoft.Framework.Configurations.dll ------Begin CreateObjectUsingReflectionBegin CreateObjectUsingReflection00:00:04.2031250Begin CreateObjectUsi...
阅读全文
浙公网安备 33010602011771号