东儿童
爱拼才会赢
摘要: /// <summary> /// C#截取不超出指定长度的中英文混合字符串 /// </summary> public string CutString(string s, int MaxLength) { char[] stringChar = s.ToCharArray(); System.Text.StringBuilder sB = new System.Text.StringBuilder(); System.Text.Encoding encoding = System.Text.Encoding.GetEncoding("gb2312" 阅读全文
posted @ 2011-07-11 10:53 哎!无悔 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 首先堆栈和堆(托管堆)都在进程的虚拟内存中。(在32位处理器上每个进程的虚拟内存为4GB)堆栈stack堆栈中存储值类型。堆栈实际上是向下填充,即由高内存地址指向地内存地址填充。堆栈的工作方式是先分配内存的变量后释放(先进后出原则)。堆栈中的变量是从下向上释放,这样就保证了堆栈中先进后出的规则不与变量的生命周期起冲突!堆栈的性能非常高,但是对于所有的变量来说还不太灵活,而且变量的生命周期必须嵌套。通常我们希望使用一种方法分配内存来存储数据,并且方法退出后很长一段时间内数据仍然可以使用。此时就要用到堆(托管堆)!堆(托管堆)heap堆(托管堆)存储引用类型。此堆非彼堆,.NET中的堆由垃圾收集器 阅读全文
posted @ 2011-07-05 17:58 哎!无悔 阅读(664) 评论(0) 推荐(0) 编辑
摘要: 服务器提供服务的方式网络服务器由于要同时为多个客户提供服务,就必须使用某种方式来支持这种多任务的服务方式。一般情况下可以有三种方式来选择,多进程方式、多线程方式及异步方式。其中,多进程方式中服务器对一个客户要使用一个进程来提供服务,由于在操作系统中,生成一个进程需要进程内存复制等额外的开销,这样在客户较多时的性能就会降低。为了克服这种生成进程的额外开销,可以使用多线程方式或异步方式。在多线程方式中,使用进程中的多个线程提供服务,由于线程的开销较小,性能就会提高。事实上,不需要任何额外开销的方式还是异步方式,它使用非阻塞的方式与每个客户通信,服务器使用一个进程进行轮询就行了。虽然异步 阅读全文
posted @ 2011-06-03 15:25 哎!无悔 阅读(307) 评论(0) 推荐(0) 编辑
摘要: PHP是全世界上使用率最高的网页开发语言,台湾每4个网站,就有1个用PHP语言开发。1995年发明PHP语言的Rasmus Lerdorf,也是打造出Yahoo全球服务网站的架构师之一,他首度来台分享如何架构网站扩充性丶安全性和效能的秘诀。Q:越来越多Web2.0网站走向应用平台,你认为打造这类平台的关键为何?A:简单来看,应用平台就是API,任何Ajax或 Web 2.0类型的网站,都是在应用平台上运用了API来创造出视觉介面的互动效果。例如Yahoo Mail,透过简单的Request呼叫,来读取後续的信件。打造这类网站,如何规画解决问题的方式,会决定了网站未来的扩充性(Scalabili 阅读全文
posted @ 2011-06-03 14:27 哎!无悔 阅读(499) 评论(0) 推荐(0) 编辑
摘要: 1.甲去买烟,烟29元,但他没火柴,跟店员说:“顺便送一盒火柴吧。”店员没给。乙去买烟,烟29元,他也没火柴,跟店员说:“便宜一毛吧。”最后,他用这一毛买一盒火柴。这是最简单的心理边际效应。第一种:店主认为自己在一个商品上赚钱了,另外一个没赚钱。赚钱感觉指数为1。第二种:店主认为两个商品都赚钱了,赚钱指数为2。当然心理倾向第二种了。同样,这种心理还表现在买一送一的花招上,顾客认为有一样东西不用付钱,就赚了,其实都是心理边际效应在作怪。启示:变换一种方式往往能起到意想不到的效果! 通常很多事情换一种做法结果就不同了。人生道路上,改善心智模式和思维方式是很重要的。2.有个小男孩,有一天妈妈带着他到 阅读全文
posted @ 2011-05-30 17:39 哎!无悔 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 我们经常在项目开发和维护过程中遇到这样的问题:在开发周期后期快结束验收时才发现了设计缺陷或流程错误;要花大量时间精力时间进行单元测试;忙中出错会将错误的版本发布到线上;花了大量的时间在项目布署上,甚至在多台服务器上的同步部署更是费时费力。现在这些问题其实都可以借助持续集成(Continuous Integration)平台得到解决。通俗一点说,持续集成平台就是对于开发人员的每一次代码提交(到SVN),都会自动地把版本库中的所有代码 check out到另一个代码副本目录,并且自动在这个代码副本中运行所指定的测试用例(Test Case),如果所有单元测试全部通过则接受这次提交,并将代码复制到W 阅读全文
posted @ 2011-05-29 21:12 哎!无悔 阅读(775) 评论(1) 推荐(0) 编辑
摘要: PHPUnit可以通过PHP扩展和程序库(PEAE)获得。PEAR是可重用PHP组件的框架和分发系统。安装PHPUnit可以通过PEAR安装程序命令获得: pear install PHPUnit2 pear channel-discover pear.phpunit.de(该命令是初始化pear的下载地址)可能中间还会出现某些channel找不到的错误那么,可以添加如下channelpear channel-discover components.ez.nopear channel-discover pear.phpunit.depear channel-discover pear.symf 阅读全文
posted @ 2011-05-21 16:22 哎!无悔 阅读(370) 评论(0) 推荐(0) 编辑
摘要: 1. 下载XDebug二进制文件: http://www.xdebug.org/download.php 5.2 http://www.xdebug.org/files/php_xdebug-2.1.0-5.2-vc6.dll 5.3 http://www.xdebug.org/files/php_xdebug-2.1.0-5.3-vc6.dll2. 找到php.ini3. 如果配置过 ZendOptimizer, 需要先屏蔽 ZendOptimizer 有关的配置, 通常如下: [Zend] zend_extension_manager.optimizer_ts="path\Zen 阅读全文
posted @ 2011-05-21 16:14 哎!无悔 阅读(852) 评论(0) 推荐(0) 编辑
摘要: 将memcache服务器安装包解压到C:\memcached文件夹后,使用cmd命令窗口安装。1>开始>运行:CMD(确定)2>cd C:\memcached(回车)3>memcached -d install(回车 这步执行安装)4>memcached -d start(回车 这步执行启动memcache服务器,默认分配64M内存,使用11211端口)此时memcache服务器已经可以正常使用了。在服务端运行:# ./memcached -d -m 2048 -l 10.0.0.40 -p 11211这将会启动一个占用2G内存的进程,并打开11211端口用于接收 阅读全文
posted @ 2011-05-21 01:04 哎!无悔 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 简介许多服务器部署(尤其是 web 服务器部署)面对的最大问题之一是必须能够处理大量连接。无论是通过构建基于云的服务来处理网络通信流,还是把应用程序分布在 IBM Amazon EC 实例上,还是为网站提供高性能组件,都需要能够处理大量并发连接。一个好例子是,web 应用程序最近越来越动态了,尤其是使用 AJAX 技术的应用程序。如果要部署的系统允许数千客户端直接在网页中更新信息,比如提供事件或问题实时监视的系统,那么提供信息的速度就非常重要了。在网格或云环境中,可能有来自数千客户端的持久连接同时打开着,必须能够处理每个客户端的请求并做出响应。在讨论 libevent 和 libev 如何处理 阅读全文
posted @ 2011-05-20 22:59 哎!无悔 阅读(399) 评论(0) 推荐(0) 编辑