Project Description

  • Zap is a light weight .NET communication framework. It is designed for programs running in local area network. Zap provides code generation tool that enables user to call remote methods, add/remote event listener to remote objects, while hides the lower details.

Features

  • Object with attribute tags will generate its remote mapping source code.
  • Remote object can direct call and get return result from server side.
  • Client mapping object can add/remove event listener to the server side object.
  • Be able to catch remote exception
  • Multi-threading support
  • High speed.

Notice

  • Zap doesn't support remote method with complex type parameters
  • Remote objects are instances. Do not support dynamic create server side object.
  • Don't make it heavy. KEEP it SIMPLE and FAST

Speed Test

  • Zap vs WCF HttpBinding
1 client * 5000 calls: 800ms vs 21s
2 client * 2500 calls: 500ms vs 10s


This project is in early development. Welcome to participate.

Zap 轻型远程对象调用框架

  • Zap 的设计目标是将远程对象通过代码自动生成的方式自动生成客户端代码,所生成的客户端对象可以直接被客户端调用,或者做事件绑定。

特色

  • 代码自动生成
  • 远程调用,结果即时返回,如同使用本地对象
  • 支持事件绑定,远程对象的事件能够通知到客户端
  • 支持远程捕获异常
  • 多线程保证并发处理高效有序

注意

  • 不支持远程调用的方法含有复杂类型
  • 类似于单例模式,远程对象均只有一个实例
  • 请保持该框架简捷

歡迎參與測試反饋或者開發。

Follow me

  • twitter: @imneio
  • 新浪微博 @周聪辉
  • Blog: www.imneio.com

Change Log

Version 0.2
  • Remove dependency of JSON.net
  • Fix thread creating issues (largely increase the speed)
  • Change underline protocol

Version 0.1.1
  • Add Array return type support

Version 0.1.0
  • Initial release


Last edited Mar 6, 2012 at 8:25 AM by Neio, version 16