最近看MySpace的DataRelay代码,有点抓狂(无文档、注释极少、缺少用例),DataRelay是MySpace开源的一个中间层框架,核心是一个支持插件的消息系统,内部使用了微软的CCR(Concurrency and Coordination Runtime,a component originally released as part of the Microsoft Robotic Studio)来作为消息的分发,包括3个核心组件:
- Forwarder - This handles the actual moving of messages, both from client to server and between servers ,实现消息的不同服务器节点以及客户端之间的数据分发传递.
- BerkeleyDB - This handles storing data, and is the component used for basic key/value caching,Oracle的KeyValue数据库,查询效率高,数据能够持久化到硬盘,支持多个节点来实现分布式缓存.
- Index Cache - This is a two tiered indexed data system, for more advanced queries than simple key/value,通过创建索引数据并存储到BerkeleyDB,并通过Component在服务端进行计算筛选,来实现复杂的数据查询.
MySpace作为.NET架构最为成功的案例之一,确实有其过人之处,DataRelay提供了高性能的缓存系统和消息处理机制,并支持自定义计算Component组件,各组件支持Cluster,有完整的Replication和负载均衡机制,组件都是以windows服务的形式,可以非常灵活的进行部署,客户端与服务端使用Socket进行通讯,另外通过自定义组件可以提供更多的扩展,譬如缓存部分可以使用Memcached组件来替换等。
MySpace虽然开源出来了这套东西,但是好像不怎么上心,CodePlex上面连个像样文档都没有,扔上去的代码连测试用例都没有一个,想要用这套东西还真只能全凭看代码了。
CodePlex代码下载地址:http://datarelay.codeplex.com/SourceControl/list/changesets#
MIX 10上的演讲:Robots at MySpace: Massive Scaling a .NET Website with the Microsoft Robotic Studio (有CCR相关的介绍) PPT下载
CCR at MySpace : http://channel9.msdn.com/shows/Communicating/CCR-at-MySpace/
本文来自: 小议 MySpace DataRelay
Sandcastle, created by Microsoft, is a tool used for creating MSDN-style documentation from .NET assemblies and their associated XML comments files. The current version is the May 2008 release. It is command line based and has no GUI front-end, project management features, or an automated build process like those that you can find in NDoc. The Sandcastle Help File Builder was created to fill in the gaps, provide the missing NDoc-like features that are used most often, and provide graphical and command line based tools to build a help file in an automated fashion.
Base: http://sandcastle.codeplex.com/
GUI: http://shfb.codeplex.com/
Eazfuscator.NET是一个免费的NET混淆工具。
Eazfuscator.NET is a free obfuscator for .NET platform. The main purpose of obfuscator is to protect intellectual property of the software
最新版:Version 2.8 released on April 13, 2010
Download setup
本文来自: Eazfuscator.NET
sqlserver2008安装报错 “Previous releases of Microsoft Visual Studio 2008″ failed.
<Date: 2010-04-27> <Category: .NET, SQL Server> 发表评论“Previous releases of Microsoft Visual Studio 2008″ failed.
问题原因,vs2008未安装sp1
解决办法:
1.去掉下面3个安装组件
2.转到安装目录,执行:
Setup /ACTION=install /SkipRules=VSShellInstalledRule RebootRequiredCheck
本文来自: sqlserver2008安装报错 “Previous releases of Microsoft Visual Studio 2008″ failed.
据说:SmartAssembly 提供了一种用于优化你的 .NET 汇编程序,保护你的作品和软件,最小化发布程序尺寸,增强性能以及添加强大的发布配置调试能力的独特的解决方案。SmartAssembly 可以让你高效地立刻提交一个你的没有异常状况的 .NET 应用软件的精巧版本。
主要特性:优化代码,合并依赖程序集,混淆,字符编码,压缩等
本文来自: redgate的{smartassembly}
errorMSB3323: Unable to find manifest signing certificate in the certificate store.
<Date: 2010-03-10> <Category: .NET> 发表评论CCNET build报的错
D:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets (1783,7): errorMSB3323: Unable to find manifest signing certificate in the certificate store.
解决办法,如下,工程属性,singing选项卡,去掉ClickOne的钩即可。
本文来自: errorMSB3323: Unable to find manifest signing certificate in the certificate store.
实例上下文模式
InstanceContextMode 控制在响应客户端调用时,如何分配服务实例。InstanceContextMode 可以设置为以下值:
•Single - 为所有客户端调用分配一个服务实例。
•PerCall – 为每个客户端调用分配一个服务实例。
•PerSession – 为每个客户端会话分配一个服务实例。
InstanceContextMode 的默认设置为 PerSession
并发模式
ConcurrencyMode 控制一次允许多少个线程进入服务。ConcurrencyMode 可以设置为以下值之一:
•Single - 一次可以有一个线程进入服务。
•Reentrant - 一次可以有一个线程进入服务,但允许回调。
•Multiple - 一次可以有多个线程进入服务。
ConcurrencyMode 的默认设置为 Single。
本文来自: WCF实例上下文模式与并发模式对性能的影响
string configFile = string.Empty; if (HostingEnvironment.IsHosted) //如果是web环境 { configFile = Path.Combine(HostingEnvironment.ApplicationPhysicalPath, ConfigurationManager.AppSettings["spring.config"]); } else { string assemblyFilePath = Assembly.GetExecutingAssembly().Location; string assemblyDirPath = Path.GetDirectoryName(assemblyFilePath); configFile = Path.Combine(assemblyDirPath, ConfigurationManager.AppSettings["spring.config"]); } if (File.Exists(configFile)) { currentContext = new XmlApplicationContext(configFile); } else { throw new ConfigurationException("Spring 配置错误!"+configFile); }
WCF部署在IIS下,报错如下:
应用程序“DEFAULT WEB SITE/IMF”中的服务器错误
Internet 信息服务 7.0
HTTP 错误 404.3 - Not Found
由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
| 模块 | StaticFileModule |
|---|---|
| 通知 | ExecuteRequestHandler |
| 处理程序 | StaticFile |
| 错误代码 | 0x80070032 |
| 请求的 URL | http://localhost:80/imf/MetaDataService.svc |
|---|---|
| 物理路径 | E:\Development\IMF\deploy\services\MetaDataService.svc |
| 登录方法 | 匿名 |
| 登录用户 | 匿名 |
- 可能是缺少处理程序映射。默认情况下,静态文件处理程序将处理所有内容。
- 您要使用的功能可能尚未安装。
- 没有为网站或应用程序启用相应的 MIME 映射。(警告: 请不要为用户不应下载的 .ASPX 页或 .config 文件等内容创建 MIME 映射。)
- 如果未安装 ASP.NET。
- 在 system.webServer/handlers 中:
- 确保映射了当前页所需的处理程序。
- 请特别注意前提(例如,runtimeVersion、pipelineMode、bitness)并将这些前提与应用程序池的设置进行比较。
- 请特别注意所需处理程序行中的书写错误。
- 请确认要使用的功能已经安装。
- 确认启用了 MIME 映射,或使用命令行工具 appcmd.exe 为网站添加 MIME 映射。
- 要设置 MIME 类型,请使用以下语法: %SystemRoot%\windows\system32\inetsrv\appcmd set config /section:staticContent /+[fileExtension='string',mimeType='string']
- 变量 fileExtension 字符串是文件扩展名,变量 mimeType 字符串是文件类型说明。
- 例如,要为扩展名为“.xyz”的文件添加 MIME 映射: appcmd set config /section:staticContent /+[fileExtension='.xyz',mimeType='text/plain']
警告: 请在确认您的 Web 服务器需要此 MIME 映射之后再将其添加到列表中。配置文件(如 .CONFIG)或动态脚本页(如 .ASP 或 .ASPX)不应直接下载,应始终通过处理程序来处理。有时会使用其他文件(如数据库文件或 .XML 或 .MDF 等用于存储配置的文件)来存储配置信息。请先确认客户端能否下载这些类型的文件,然后再启用这些文件。
- 安装 ASP.NET。
- 创建跟踪规则以跟踪此 HTTP 状态代码的失败的请求。有关为失败的请求创建跟踪规则的详细信息,请单击此处。
解决办法:
阅读这篇文章的其余部分 »
本文来自: IIS7下WCF扩展配置问题








