上一页 1 2 3 4 5 6 7 ··· 11 下一页

2011年12月9日

Asp.net 和 Comet 开发入门, 第一个例子

摘要: Comet, (Reverse AJAX)主要是通过HTTP 长连接, 保持和服务器的连接, 实现ServerPUSH 和双向通信。好处:1.和AJAX轮询比起来 节省资源,并且延迟小, 2.和webSocket比起来,适用的场景比较广泛。 1.先建立一个Asp.net MVC的空项目 添加一个控制器 (同样的代码在Asp.net WebForm中也是可以使用的) public class CometController : Controller { public ActionResult Test() { Response.B... 阅读全文

posted @ 2011-12-09 16:27 听说读写 阅读(2367) 评论(3) 推荐(0) 编辑

2011年12月6日

关于 HashCode做key的可能性

摘要: 最近在设计一个分布式的key-value系统的时候中,出于性能和存储空间的考虑,准备把string类型的key替换为它的HashCode值.GetHashCode这个方法可能很多人都有所了解,不熟悉的可以看看这里:http://msdn.microsoft.com/zh-cn/library/system.object.gethashcode.aspx以下信息只限于String.GetHashCode,其他的例如Object.GetHashCode根据其他对象的实现不同而不同:1.对于不同的对象类型,或者同类型的不同值,返回值是可能重复的2.String.GetHashCode的实现是平台相关 阅读全文

posted @ 2011-12-06 11:17 听说读写 阅读(3414) 评论(1) 推荐(0) 编辑

2011年12月5日

.Net Famework 和 Library的源码下载

摘要: 对以下项目源码有兴趣的朋友可以点击这里进去下载源码http://referencesource.microsoft.com/netframework.aspx.net 4.0Asp.net MVC 1.0 2.0WCFWF在Visual Studio中调试.net代码请看这里:http://blogs.microsoft.co.il/blogs/arik/archive/2010/07/12/step-into-net-framework-4-0-source-code.aspx.net 2.0 代码可以这边下载http://netmassdownloader.codeplex.com/ 阅读全文

posted @ 2011-12-05 15:56 听说读写 阅读(711) 评论(0) 推荐(0) 编辑

网站开发中的安全检查(Penetration Test)

摘要: 一般稍微大一点规模的网站上线前都要做一下安全性测试。(Penetration Test)安全测试一般包括以下几个步骤:1.选择一系列安全问题点,分析测试的可行性.(选择几个需要进行测试的问题,例如SQL注入)2.定位系统缺陷,并在其中找出高风险性的部分.(一般使用自动化工具)3.定位那些可能存在的, 难以被自动化测试工具测试出来的缺陷.4.评估缺点对潜在业务和操作的影响.5.测试现有系统防御能力,应对和处理攻击数据的能力.6.提供用于改进享有系统安全性的建议一般常见的问题如下:(包括但不仅限于)1.SQL 注入。2.XSS 和 CSRF。3.Cookies,Session劫持和伪造。4.不必要 阅读全文

posted @ 2011-12-05 15:49 听说读写 阅读(1644) 评论(0) 推荐(1) 编辑

2011年12月4日

将switch case转为条件驱动

摘要: switch case是一种.net里面常用的条件分支语句,挺好用的;不过有些缺点:1.在有包含大量条件和执行语句的时候代码结构会很乱。2.不太符合面对对象的设计原则。3.对于查询条件是否满足一定范围这样的逻辑不太好用。将其转为条件驱动的实现,(本例使用Dictionary+Delegate的方式)View Code class SwitchTest { /// <summary> /// 常规写法 /// </summary> /// <param name="type"></param> public st... 阅读全文

posted @ 2011-12-04 16:53 听说读写 阅读(3058) 评论(2) 推荐(3) 编辑

2011年11月30日

Facebook Tab & App 开发入门和FAQ

摘要: 最近在做Facebook Tab & App的开发.想分享一些基本的文档和概念给大家;希望可以帮助大家了解Facebook中一些基本的概念, 资源和初步开发入门.Facebook已经成为一个重要的公司宣传平台,活动和广告平台,还有丰富的应用和游戏.Facebook Tab & App DevelopmentWhat is Tabhttps://developers.facebook.com/docs/appsonfacebook/pagetabs/Maximum width is 520px.Tab can add to a Page.What is PageThis is a 阅读全文

posted @ 2011-11-30 10:42 听说读写 阅读(1903) 评论(1) 推荐(2) 编辑

2011年11月28日

开源一个组件, Clover.Proxy, 请大家指正

摘要: Clover.Proxy是一个基于.net 4.0的类库,项目地址:https://github.com/xwj90/Clover.Proxy (MIT,随便使用)它提供一种简单的方式代理执行现有类库里面的方法和属性,它可以用于以下情况:1. 对现有类的方法和属性,增加BeforeCall 和AfterCall通过赋值delegate的方式很方便的自定义BeforeCall 和AfterCall在BeforeCall 和AfterCall中可以执行记录日志,分析参数,修改参数,记录每个方法的调用次数等. (可以通过配置的方式,打开或者关闭功能,如此就能较为方便的调试了)通过配置的方式,很方便的 阅读全文

posted @ 2011-11-28 10:42 听说读写 阅读(2326) 评论(11) 推荐(3) 编辑

2011年11月25日

HTML, CSS和Javascript调试入门

摘要: 本文介绍一些入门的HTML,css和Javascript调试技巧。希望能让初学者有所收获,少走一点弯路。个人推荐Chrome作为开发工具(FF可以使用FireBug,IE8和之后的版本也有自己的调试工具)1.HTML的调试将鼠标放在任意元素上,右键Inspect Element,即可查看该元素的HTML内容。(也可以通过F12打开开发者工具) 效果如下 在Elements面板中 将鼠标放在任意元素上,HTML界面上对应的元素会被选中右击元素,可以直接修改或者是移除元素,修改后的元素效果会马上反应在页面上2.CSS的调试在开发者工具的右侧面板可以找到对应的CSS调试框 Styles分类... 阅读全文

posted @ 2011-11-25 10:09 听说读写 阅读(18138) 评论(5) 推荐(2) 编辑

2011年11月21日

【不小心就会犯错】 .NET的ConcurrentDictionary,线程安全集合类

摘要: ConcurrentDictionary 是.NET 4.0里面新增的号称线程安全的集合类。那么自然,我们会预期ConcurrentDictionary 中的代码是线程安全的(至少几个关键方法是线程安全的).举个例子,使用者可能会预期GetOrAdd中的方法当Key不存在的时候只执行一次Add的委托,第二次调用GetOrAdd就应该直接取回刚才生成的值了.参考一下以下代码: public static void Test() { var concurentDictionary = new ConcurrentDictionary<int, i... 阅读全文

posted @ 2011-11-21 11:51 听说读写 阅读(22254) 评论(14) 推荐(6) 编辑

2011年11月17日

【设计原则和建议】 构造和析构对象

摘要: 良好的构造和析构对象,控制对象生命周期可以较大的提高程序的性能,降低GC的压力,减少BUG几率。本文还是比较简单的,主要还是经验的总结,很多东西也许各位已经知道,也许不知道。希望大家一起讨论。1.如果可能,避免静态构造函数 (也成为类型构造函数)性能原因 (不过因为一个类的静态构造函数只会执行一次,这不是一个大问题)静态构造函数不应该抛出异常2.如果可以,构造函数应该尽可能轻量级职责上说,构造函数只应该构造出一个对象,而不是执行一大堆初始化等的操作如果有很重量级的代码,用静态方法Create出来 例如WebRequest.Create3.一个常识,调用构造函数时,会先调用父类的构造函数4.一个 阅读全文

posted @ 2011-11-17 12:47 听说读写 阅读(1846) 评论(2) 推荐(1) 编辑

2011年11月12日

【高性能web开发】 SQL Server入门(一)用户表

摘要: 本文只是一个入门级别的数据库案例。希望能通过一些经典案例的分析,大家能共同讨论和分享。数据库案例(一)简单的用户表。业务假设:用户表,10个列,无外键, 200万数据 (如果数据量再大一般就考虑分表了)以下是假设的操作分布 (仅供参考) 50% 按照用户Id查询 40%按照用户名查询 8%按照Email查询 1.5%修改用户的数据,例如状态,最后登录时间 0.5%添加用户数据操作特征:一般都只有单条数据的查询 (如果有分析和统计,一般弄一个同步库出来,在那个单独的库上做较大数据量的分析)(某些操作,例如用户排名,最近用户操作等,一般是用其他的方式实现,而不是直接压在用户表上)(当然,... 阅读全文

posted @ 2011-11-12 13:38 听说读写 阅读(3228) 评论(2) 推荐(4) 编辑

2011年11月6日

JavaScript 跨域访问的问题和解决过程

摘要: 分享一下最近用jQuery跨域请求的经历,希望能给大家一些关于这个方案的概念和资料。该部分包括客户端和服务器端,(如果服务器不在自己手上,那么还是考虑通过自己的服务器转发请求吧)1.原本的代码很简单。。如果是同域名什么问题都没有 (有兴趣的朋友可以尝试在自己的服务器上运行以下代码) $.ajax({ url: "http://www.google.com/", //不同域名,而且google 没有允许第三方提交所以会出错 cache: false, //data: params, ... 阅读全文

posted @ 2011-11-06 18:59 听说读写 阅读(39306) 评论(11) 推荐(4) 编辑

2011年11月3日

【高性能web开发】 ASP.NET Web服务器 (一)

摘要: 本文通过一个特别的案例:最终用户使用浏览器向服务器请求包含100条最新新闻纪录的页面,慢慢的展开。本文集中在ASP.NET Web服务器(特指用于接收用户请求,处理业务逻辑和响应HTML的服务器; 分布式,客户端,IIS,数据库和应用服务器配置和优化部分,稍后介绍)应用程序级别1.生产环境使用Release版本,而不是Debug版本关闭所有调试日志和信息移除所有用于调试,测试和跟踪的代码使用宏操作可以很方便的关闭和管理这些代码#if DEBUG Console.WriteLine("");//日志?输出?调试?#endif配置Web.Config关闭调试模式2.移除不必要. 阅读全文

posted @ 2011-11-03 23:05 听说读写 阅读(5186) 评论(17) 推荐(7) 编辑

2011年10月20日

【设计原则和建议】 lock

摘要: lock是.net中最常用的锁了解lock机制,引用类型,值类型,字符串和应用程序域的朋友可能对以下的内容都很熟悉了1.先来看看推荐的lock代码 class LockDemo { private static object asyncLock = new object();//使用static object作为互斥资源 public static void Test() { lock (asyncLock)//保证该方法是线程安全的 { // 程序代码 ... 阅读全文

posted @ 2011-10-20 23:38 听说读写 阅读(2221) 评论(14) 推荐(3) 编辑

2011年10月18日

【高性能web开发】 网络传输环节

摘要: 【高性能web开发】将会是一个系列.从html,js,css等前端,到HTTP/TCP等网络传输环节.从Asp.net等应用服务器语言到数据库优化.从架构设计到第三方组件和解决方案的应用.之后大约还有4-5篇Blog和高性能web开发有关.【高性能web开发】 网络传输环节1.减少请求数.缓存,使用Expires等设置过期时间;如果内容没有过期就不发送请求合并小体积内容,例如吧数量众多的小图片放在一个图片,之后用css部分呈现(大体积的内容就别合并了)延迟加载;部分内容,例如图片在页面呈现的时候才加载 (常用的就是滚动条到了以后才加载);减少不必要的请求合并重复内容和文件考虑使用第三方CDN资 阅读全文

posted @ 2011-10-18 10:28 听说读写 阅读(3036) 评论(4) 推荐(7) 编辑

上一页 1 2 3 4 5 6 7 ··· 11 下一页

导航