dev:projects:sparetime:reflect_proxy
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
dev:projects:sparetime:reflect_proxy [2013/10/06 12:12] – [一些想法] hackerzhou | dev:projects:sparetime:reflect_proxy [2020/06/06 23:32] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 53: | Line 53: | ||
* 低优先级,留到最后再做,应该不太麻烦的。 | * 低优先级,留到最后再做,应该不太麻烦的。 | ||
* **Remote Object**:Flex构建的Web前台UI和UI Server之间通信用Remote Object技术通信。 | * **Remote Object**:Flex构建的Web前台UI和UI Server之间通信用Remote Object技术通信。 | ||
- | 提高消息传递效率:始终保持有一个监听的连接是alive的;每次传递HTTP包的总个数/ | + | * **提高消息传递效率**:始终保持有一个监听的连接是alive的;每次传递HTTP包的总个数/ |
- | * **异步Servlet**:减少服务器负载,降低宕机的可能,资料,原来做的版本异步不够彻底。 | + | * **异步Servlet**:减少服务器负载,降低宕机的可能,[[http:// |
* **通信协议设计**: | * **通信协议设计**: | ||
* **Base64 + GZip**:把对象转成byte array,再用GZip压缩,最后用Base64序列化成字符串供传输。不过用随机字符串/ | * **Base64 + GZip**:把对象转成byte array,再用GZip压缩,最后用Base64序列化成字符串供传输。不过用随机字符串/ | ||
* **对象转成byte array再用GZip压缩**:服务器和客户端之间通信并不一定要用xml,也不一定非得是字符串,压缩过的二进制传输似乎更加好些,暂定采用这个方案。 | * **对象转成byte array再用GZip压缩**:服务器和客户端之间通信并不一定要用xml,也不一定非得是字符串,压缩过的二进制传输似乎更加好些,暂定采用这个方案。 | ||
* **Binary XML**:Server和Client之间使用二进制的XML传输,或者直接传送二进制的Object,加快传输速度。Binary XML的话应该可以直接parse,不需要先解压再parse,提高处理速度。 | * **Binary XML**:Server和Client之间使用二进制的XML传输,或者直接传送二进制的Object,加快传输速度。Binary XML的话应该可以直接parse,不需要先解压再parse,提高处理速度。 | ||
- | * Efficient XML:是现在W3C的标准,有现成的Java类库提供支持exificient[1],不过该标准争议较大,褒贬不一,有待仔细研究。 | + | * Efficient XML:是现在W3C的标准,有现成的Java类库提供支持exificient[[http:// |
* Gzipped XML:把普通XML文本用GZip算法压缩成byte array然后再传递或者再把byte array用base64转成文本,不过转成base64的话就抵消掉一部分压缩的效果了。 | * Gzipped XML:把普通XML文本用GZip算法压缩成byte array然后再传递或者再把byte array用base64转成文本,不过转成base64的话就抵消掉一部分压缩的效果了。 | ||
* **轻量级**:尽量使用轻量级的架构以及类库,减小服务器负载并且增强反应速度。 | * **轻量级**:尽量使用轻量级的架构以及类库,减小服务器负载并且增强反应速度。 | ||
* **Event Driven**使用基于事件的处理模式来简化客户端的操作,可以很简单的简化成一个类似状态机的方式,抛弃原先的基于Thread的处理(虽然由于Java对事件机制支持不好,我做的事件处理依旧是基于Thread来dispatch event,不过代码有条理多了)。 | * **Event Driven**使用基于事件的处理模式来简化客户端的操作,可以很简单的简化成一个类似状态机的方式,抛弃原先的基于Thread的处理(虽然由于Java对事件机制支持不好,我做的事件处理依旧是基于Thread来dispatch event,不过代码有条理多了)。 | ||
=====一些文档===== | =====一些文档===== | ||
- | + | * {{: | |
- | 文件:SettingDataBitwiseLayout.docx | + | * {{:dev: |
- | 文件: | + | * {{:dev:projects: |
- | 文件:论文.docx | + | * {{: |
- | 文件:答辩PPT.pptx | + | |
=====第三方类库===== | =====第三方类库===== | ||
- | + | ^ 名称 | |
- | 名称 | + | | BlazeDS |
- | 用途 | + | | Hibernate |
- | 许可证 | + | | MySQL JDBC Driver |
- | BlazeDS | + | | log4j | 日志记录 |
- | Flex UI端到Java Server端的通信(RemoteObject的实现) | + | | dom4j | 解析xml |
- | LGPL | + | | JavaMail |
- | Hibernate | + | |
- | 数据库ORM层 | + | |
- | LGPL | + | |
- | MySQL JDBC Driver | + | |
- | MySQL数据库连接jdbc驱动 | + | |
- | LGPL | + | |
- | log4j | + | |
- | 日志记录 | + | |
- | Apache License | + | |
- | dom4j | + | |
- | 解析xml | + | |
- | BSD | + | |
- | JavaMail | + | |
- | 发送邮件 | + | |
- | Sun | + |
dev/projects/sparetime/reflect_proxy.1381061544.txt.gz · Last modified: 2020/06/06 23:32 (external edit)