E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ESFramework
ESFramework
最新进展 --
ESFramework
体系 2006.08.25
最近一段时间忙里抽空将
ESFramework
整理了一下,改动比较大,
ESFramework
1.0Beta版将在不久后发布。
·
2015-10-30 11:57
framework
ESFramework
介绍之(35)―― IMessageTransceiver
(本文适用于
ESFramework
V0.3+) 在
ESFramework
·
2015-10-30 11:55
framework
ESFramework
介绍之(34)―― ITcpServerAgent和IUdpServerAgent组件关系图
(本文适用于
ESFramework
V0.3+) 在
ESFramework
介绍之(7)-- 服务器代理IServerAgent
·
2015-10-30 11:54
framework
ESFramework
介绍之(32)―― Tcp客户端核心组件关系图
如果你的客户端基于
ESFramework
构建,并使用Tcp与服务端通信。通过这篇文章你将知道如何迅速、高效地创建客户端应用。
·
2015-10-30 11:53
framework
ESFramework
介绍之(30)―― 消息侦察者 INetMessageSpy
(本文适用于
ESFramework
V0.2+) 现在我们回想一下,当网络组件(Tcp/Udp组件)接收到一个消息后
·
2015-10-30 11:53
framework
ESFramework
介绍之(6)―― 基于C/S的4层架构概述
ESFramework
的4层结构的4层分别是:客户端(Client)、应用服务器(AS)、功能服务器(FS)、数据库服务器。
·
2015-10-30 11:53
framework
ESFramework
介绍之(33)―― AS与FS通信实现及相关
(本文部分内容只适合
ESFramework
V0.3+) 在
ESFramework
介绍之(14)-- AS与FS
·
2015-10-30 11:53
framework
ESFramework
介绍之(31)―― 消息分类及对应的处理器
nbsp; 这是一篇迟到了很久的文章,要不是今天看到Mediar朋友写的“ 基于ESFramewok的 客户端和客户端通迅”的文章,我也许还不会想起写这篇应该很早就发表的Blog,它可以帮助
ESFramework
·
2015-10-30 11:52
framework
ESFramework
介绍之(29)―― 插件公共设施 AddinUtil
(本文适用于
ESFramework
V0.2+) 不知你是否还记得,前面我们讲过,
ESFramework
规定了插件有如下特点
·
2015-10-30 11:52
framework
ESFramework
介绍之(28)―― Udp组件
ESFramework
对Tcp和Udp协议都提供了完整的支持,在
ESFramework
介绍之(21)-- Tcp组件接口ITcp介绍 和
ESFramework
·
2015-10-30 11:51
framework
ESFramework
介绍之(27)-- 支持OverdueMessage
(本文适用于
ESFramework
V0.2+) QQ上,你给好友发消息,如果对方不在线,则服务器会把这个消息持久化存起来
·
2015-10-30 11:50
framework
ESFramework
介绍之(23)―― AgileTcp
前面已经介绍了ITcp接口,而AgileTcp就是
ESFramework
给出的ITcp的参考实现。
·
2015-10-30 11:49
framework
ESFramework
介绍之(21)-- Tcp组件接口ITcp介绍
写了这么多篇介绍
ESFramework
的文章才想起来还有一些很基础的内容没有介绍,前面介绍的一些组件、框架基本上是与协议无关的
·
2015-10-30 11:49
framework
ESFramework
介绍之(19)―― 对动态组ActiveGroup的支持
什么是动态组?举个例子就清楚了。QQ支持多人在一个组中聊天的模式是群,这是一种静态组;而MSN中的动态的将多个人拉到一个组中来群聊,就是动态组。关于动态组,还有一个很好的例子,就是多人联网游戏,比如联网的星际。首先由发起者创建一个组(动态组),然后其它玩家加入进来开始游戏,游戏结束了,该动态组就销毁了。所以说,动态组是个“临时性的”,生命比较短暂;而静态组,通
·
2015-10-30 11:48
framework
ESFramework
介绍之(18)―― Tcp用户管理器组件
当我们的应用中客户端与AS之间是通过Tcp进行通信的时候,通常,应用也要求管理所有在线的用户。这种管理至少包含以下几点:(1) 当用户上线时,记录上线时间(2) 当用户请求服务时,记录请求服务的时间、服务的类型、本次服务下载的数据量(3) 当用户下线时,记录下线时间。并把本次用户登录、请求服务过程中的所有信息持久化保存(如记录到数
·
2015-10-30 11:48
framework
ESFramework
介绍之(16)―― Tcp数据自动发送器ITcpAutoSender
我们已经积累了这样的经验:如果有一个大块的数据需要通过Tcp发送,我们会采用异步的方式以避免当前工作线程阻塞。那么,如果我们有多个线程需要同时发送大块的数据了?每个线程都在NetworkStream或Socket上提交异步发送数据的请求会导致数据发送的混乱(多个线程同时在一个Socket上进行写操作),所以,我引入了前面介绍的线程安全的网络流。在引入这个类后,
·
2015-10-30 11:47
framework
ESFramework
介绍之(13)-- 功能插件处理器工厂
上文讲述的是AS中的基于连接池的消息处理器,现在我们把焦点转移到功能服务器FS上来,看看FS上消息分派的过程。当FS接收到到一个请求后,会从已加载的功能插件列表中选择一个合适的插件来处理这个消息,而每一个功能插件就相当于一个消息处理器。FS和AS的结构一致: 要注意的是,功能服务器FS上收到的所有消息都应该交给功能插件
·
2015-10-30 11:47
framework
ESFramework
介绍之(10)-- Tcp连接池
凡是带有“池”的,比如数据库连接池、对象池、缓冲区池(后面可以看到IBuffPool)等等,都是为了避免资源的反复创建/销毁所带来的开销。需要为哪些资源对象建立“池”了?这些资源对象通常符合下面几个特性:(1)在应用中需要反复的被创建/销毁。(2)创建/销毁的开销比较大(3)应用中给定时刻,对该资源对象的数量要求比较大(4)资源对象最好是无状态的(Statel
·
2015-10-30 11:46
framework
ESFramework
介绍之(12)―― 基于Tcp连接池的消息处理器
前面的两篇文章我们已经介绍了Tcp连接池和Tcp连接池管理器,并且引入了ITcpPool接口,这个接口可以将单个连接池和一组连接池统一起来,使它们有相同的外部使用方式。现在我们需要考虑的问题是,当消息分派器分派一个接收到的请求时,如果这个请求需要被FS上的某个功能插件处理,那么消息分派器是如何将这个消息分派到对应的FS上去的?
·
2015-10-30 11:46
framework
ESFramework
介绍之(11)-- Tcp连接池管理器
上文已经讲到,Tcp连接池管理器为我们的应用进行了很多复杂的管理,比如功能服务器的调度(实现FS的负载均衡)、连接池的动态添加/移除、控制每个连接池的相关参数在UI上的显示等,并且连接池管理器与单个连接池拥有一样的接口ITcpPool。我们先回顾一下这个接口: 1 public &n
·
2015-10-30 11:46
framework
ESFramework
介绍之(9)-- 插件对(Addin Pair)调试“框架”
使用
ESFramework
开发C/S(通常为4层、3层也没问题)应用,当需要增加一项新的业务时,我们需要做的仅仅是开发两个插件,一个是服务端的业务功能插件(FunAddin
·
2015-10-30 11:45
framework
ESFramework
介绍之(7)-- 服务器代理IServerAgent
(本文原作于2006.03.15,第一次修正于2006.06.06,修正后适用于
ESFramework
V0.3+) (本文是
·
2015-10-30 11:45
framework
ESFramework
介绍之(8)-- 客户端插件IPassiveAddin
前文已经提到了,在IServerAgent的基础上,客户端也可以采用插件的结构形式,客户端插件需要实现IPassiveAddin接口。 我的想法是,当客户端主程序加载一个新的PassiveAddin时,可以在某个菜单的子Items上添加一项,当双击这个子菜单项时,则弹出该客户端插件提供的“业务操作窗体”。这只是
·
2015-10-30 11:45
framework
ESFramework
介绍之(3)――消息处理器和处理器工厂
无论是服务端还是客户端,都需要对接收到的消息进行处理,在
ESFramework
框架中,处理消息的组件称为消息处理器,所有的消息处理器都实现了接口IDataDealer:
·
2015-10-30 11:44
framework
ESFramework
介绍之(2)――网络通信消息NetMessage
较之C++而言,.NET是一个更加“动态”的平台,其动态能力建立在反射机制之上,而反射的基础是“元数据”。 上文已经提到过,如果一个框架要为我们的应用做更多的事情,那么这个框架必须建立更多的标准,必须对框架自己要处理的消息有更多的了解,所以,每个消息都要是自描述的,也就是说每个消息要包含它自己的“元数据”。那么,“元数据
·
2015-10-30 11:44
framework
ESFramework
介绍之(4)――消息拦截器INetMessageHook
网络上传输的消息经常是经过加密和压缩,有的特定类型的消息可能还需要进行其它变形,
ESFramework
通过INetMessageHook对这些功能提供支持。
·
2015-10-30 11:44
framework
ESFramework
介绍之(5)――消息分派器IMessageDispatcher
(本文原作于2006.03.14,第一次修正于2006.06.06,修正后适用于
ESFramework
V0.3+) 本来Tcp
·
2015-10-30 11:44
dispatcher
ESFramework
介绍之(1)――网络通信消息协议接口IContract
通过网络相互通信的系统之间(如客户端与服务端的通信)要想正常交互,它们必须有“共同的语言”,这种语言就是消息协议。遵守消息协议的消息才能被我们的系统所理解。 我们知道,消息在网路上传输的是字节流,而我们主流的面向对象系统中处理的却是“对象”,如何将从网络上接收到的字节流转化为“对象”,又如何将“对象”转化为字节流以便通过网络传递给其他
·
2015-10-30 11:43
framework
广播与P2P通道(下) -- 方案实现
当然,如果从零开始实现这种方案无疑是非常艰巨的,但基于
ESFramework
提供的通信功能和P2P功能来做,就不再那么遥不可及了。
·
2015-10-27 14:31
实现
让你的Socket应用兼容IPv6
如何才能像
ESFramework
一样,使服务端和客户端都可以同时支持IPv6了?使我们的P2P打洞也兼
·
2015-10-27 14:30
socket
ESFramework
4.0 快速上手(15) -- 客户端登录验证
在之前版本的Rapid引擎中,是没有提供客户端登陆验证的机制的,如果要验证用户的帐号密码信息,我们只有自己手动通过自定义信息来实现。在2011.04.25发布的新版本中,客户端Rapid引擎,则内置了在初始化时验证用户的帐号密码的功能,这使得登录验证变得更加简单。 一. ESPlus.Application.
·
2015-10-27 14:28
framework
ESFramework
4.0 版本升级说明(持续更新 2011.04.25)
ESFramework
4.0 内核(
ESFramework
.dll)已经相当成熟,不会轻易修改,而在不断增强中的是ESPlus和
ESFramework
.SL,所以,如下的一些版本变更几乎都是针对ESPlus
·
2015-10-27 14:28
framework
ESFramework
4.0 快速上手(04) -- 如何使用自定义消息?
在
ESFramework
4.0 快速上手一文中,我们讲述了如何使用Rapid引擎可以快速地上手
ESFramework
开发,文中介绍了使用ESPlus.Application.CustomizeInfo
·
2015-10-27 14:27
framework
ESFramework
4.0 快速上手(07) -- 重登陆模式
在
ESFramework
框架中基于TCP的服务端引擎(当然也包括Rapid引擎)都采用了这样一条规则:默认情况下,客户端与服务器成功建立TCP连接以后,服务端会从客户端发过来的第一条消息中取出消息头的
·
2015-10-27 14:27
framework
ESFramework
通信框架
ESFramework
是一套性能卓越、稳定可靠、可高度伸缩、灵活易用而又功能强大的跨平台通信框架,并提供了可选择的应用群集平台。
·
2015-10-27 14:25
framework
循序渐进做项目系列(3):迷你QQ篇(1)——实现客户端互相聊天
考虑到某些需求较为复杂,本系列采用成熟的通信框架
ESFramework
来做,而不是从socket做起,当然这与本人才疏学浅也有莫大的关系,如果大家不嫌弃小弟写得太“low”,还请捧个人场,顺便给予鼓励!
·
2015-10-27 13:04
客户端
移植到Windows CE 的经验
很多用户希望让
ESFramework
通信框架和轻量级的通信引擎StriveEngine能支持Windows CE 客户端,基于这个需求,前几个月,我将
ESFramework
和StriveEngine的客户端引
·
2015-10-27 11:21
windows
ESFramework
开发手册(07) -- 心跳机制
虽然我们前面已经介绍完了
ESFramework
开发所需掌握的各种基础设施,但是还不够。
·
2015-10-23 09:17
framework
ESFramework
平台下可复用的Tcp通信层实现(续)
.NET平台下可复用的Tcp通信层实现(续) 上一篇主要讲到了Tcp通信层中的核心组件――Tcp组件的实现,Tcp组件是整个通信层的消息驱动源,甚至,可以将Tcp组件看作是我们整个服务器系统的消息驱动源,消息处理过程从这里引发。类似的消息驱动源还有发布的WebService接口、Remoting接口等。今天我们需要关注的是Tcp通信层中的“中
·
2015-10-21 12:56
framework
ESFramework
平台下可复用的Tcp通信层实现
.NET平台下可复用的Tcp通信层实现 2006年已经来临,回首刚走过的2005,心中感慨万千。在人生和生活的目标上,有了清晰明确的定位,终于知道了自己喜欢什么样的生活,喜欢什么样的生活方式;在技术上,成熟了不少,眼界也开阔的不少,从面向对象到组件、从.Net到J2EE、从微软到开源,颇有收获。特别值得一提的是,认识了Rod Johnson这个
·
2015-10-21 12:54
framework
ESFramework
4.0 快速上手(15) -- 客户端登录验证
ESFramework
4.0 快速上手(15) -- 客户端登录验证 在之前版本的Rapid引擎中,是没有提供客户端登陆验证的机制的
·
2015-10-21 12:53
framework
插件自动升级
ESFramework
介绍之(20)―― 插件自动升级 当我们的服务平台搭建成功后,所需要做的主要事情就是开发服务端功能插件(IFunAddin)和客户端插件
·
2015-10-21 12:53
插件
ESFramewor使用技巧(2)-- 在插件中使用NHibernate
ESFramewor使用技巧(2)-- 在插件中使用NHibernate 我们来讨论一下这种情景,你采用基于
ESFramework
的4层架构进行应用开发,你分析用户的需求
·
2015-10-21 12:52
Hibernate
ESFramework
介绍之(20)―― 插件自动升级
当我们的服务平台搭建成功后,所需要做的主要事情就是开发服务端功能插件(IFunAddin)和客户端插件(IPassiveAddin),每个 插件对(AddinPair)实现了一组相似或相近的需求/功能。 好了,我们已经开发了十多对插件对,然后分别XCopy到了各个服务器节点上,“整个系统”已经投入了运行。通过前面的介绍( 回顾),相信大家
·
2015-10-21 12:51
framework
ESFramewor使用技巧(3) -- 在插件中使用Spring.net
这种松耦合特性,我们曾在
ESFramework
介绍之(29)―― 插件公共设施 AddinUtil 一文中特别强调过。
·
2015-10-21 11:58
spring
ESFramework
网络通信框架 -- 序
ESFramework
的最新版本为4.0,关于最新版本的详细介绍,请参见这里。
·
2015-10-21 11:58
framework
给关注
ESFramework
的朋友们 2006.06.25
有好长一段时间没有更新我的blog了,也没有增加介绍
ESFramework
的文章了,对于关注
ESFramework
的朋友们,我深怀歉意。
·
2015-10-21 11:58
framework
ESFramework
使用技巧(1)--
ESFramework
日志记录器的自动装配
ESFramework
中很多重要的组件都配备了日志记录器IEsbLogger,用于记录框架运行时的错误和异常。
·
2015-10-21 11:56
framework
ESFramework
介绍之(26)-- 支持复杂插件(InnerDealer 和 InnerDispatcher)
(本文内容适合于
ESFramework
V0.2+) 通常,最单纯的情况是一个插件对应某一特定类型的功能请求,但是
·
2015-10-21 11:56
dispatcher
ESFramewor使用技巧(2)-- 在插件中使用NHibernate
我们来讨论一下这种情景,你采用基于
ESFramework
的4层架构进行应用开发,你分析用户的需求,并将其分类整理为几大块,考虑每一块使用一个功能插件来完成。
·
2015-10-21 11:55
Hibernate
上一页
1
2
3
4
5
6
7
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他