随笔分类 - 服务器网站策略
摘要:首先问大家一个问题,你在写开放的API接口时是如何保证数据的安全性的?先来看看有哪些安全性问题在开放的api接口中,我们通过http Post或者Get方式请求服务器的时候,会面临着许多的安全性问题,例如: 为了保证数据在通信时的安全性,我们可以采用TOKEN+参数签名的方式来进行相关验证。 比如说
阅读全文
摘要:阅读目录开始在ASP.NET中使用异步异步 HttpHandlerASP.NET 异步页的实现方式1. 调用Page.AddOnPreRenderCompleteAsync()的异步页2. 调用Page.RegisterAsyncTask()的异步页3. 基于事件模式的异步页各种异步页的实现方式比较异步HttpModule的实现方式异步的 Web ServiceASP.NET MVC 中的异步方式受争论的【基于事件的异步模式】结束语在上篇博客【C#客户端的异步操作】, 我介绍了一些.net中实现异步操作的方法,在那篇博客中,我是站在整个.net平台的角度来讲述各种异步操作的实现方式, 并针对各
阅读全文
摘要:ASP.Net 自带的缓存机制对于提高页面性能有至关重要的作用,另一方面,缓存的使用也会造成信息更新的延迟。如何快速更新缓存数据,有时成了困扰程序员的难题。根据我的使用经验,总结了下面几种方法,概括了常见的几种情况,如有更好的方法欢迎补充。(1)Cache 对象缓存Cache 对象提供代码级的缓存,功能强大,可操作性强。更新这种缓存的方法很简单,只要调用 Cache.Remove(key) 方法就可以清除指定的缓存。代码如下:HttpRuntime.Cache.Remove(cacheEnmu.Key.ToString());下列代码清空所有 Cache 缓存:IDictionaryEnume
阅读全文
摘要:首先使用以下步骤时,需要安装sql2005的,管理器Microsoft SQL Server Management Studio Express下载地址:http://www.microsoft.com/downloads/zh-cn/details.aspx?displaylang=zh-cn&FamilyID=C243A5AE-4BD1-4E3D-94B8-5A0F62BF7796(1)开始->程序->Microsoft SQL Server 2005->SQL Server2005外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器"
阅读全文
摘要:Google地图API的同步中文文档:http://www.codechina.org/doc/google/gmapapi/ 百度文库:http://wenku.baidu.com/view/a2885c27a5e9856a561260b2.html csdn博客:http://blog.csdn.net/jiali765/archive/2010/03/03/5338265.aspx http://www.jbedu.com/study/jishuwenzhang/196.html
阅读全文
摘要:背景:在做服务器端应用开发,我们常常要考虑很多东西。从单台机器到集群,从混乱的结构到分层结构,接着是系统优化,中间作cache处理,后端优化缓存。今天就讨论一下服务器端缓存:)举例:先来看一下这么一个应用场景:当应用A要获取应用B的一批数据,这个数据一开始为一个定值10,而这些数据有个特点,一般几天内不会作变化,而且对业务的影响比较小。应用B由于是网络提供服务,获取数据需要一定时间。我们把上面的场景抽取一下:应用B提供的获取数据方法:getData()按照一般编程方法是这样:会直接调用这个函数进行使用但是是否有更好的解决方案,我们注意到,这里的数据是今天或更长的时间才变更一次的,是否可以利用这
阅读全文
摘要:mixi案例研究mixi在提供服务的初期阶段就使用了memcached。 随着网站访问量的急剧增加,单纯为数据库添加slave已无法满足需要,因此引入了memcached。 此外,我们也从增加可扩展性的方面进行了验证,证明了memcached的速度和稳定性都能满足需要。 现在,memcached已成为mixi服务中非常重要的组成部分。图1 现在的系统组件服务器配置和数量mixi使用了许许多多服务器,如数据库服务器、应用服务器、图片服务器、 反向代理服务器等。单单memcached就有将近200台服务器在运行。 memcached服务器的典型配置如下:CPU:Intel Pentium 4 2.
阅读全文
摘要:memcached的分布式正如第1次中介绍的那样, memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能。 服务器端仅包括第2次、第3次前坂介绍的内存存储功能,其实现非常简单。 至于memcached的分布式,则是完全由客户端程序库实现的。 这种分布式是memcached的最大特点。memcached的分布式是什么意思?这里多次使用了“分布式”这个词,但并未做详细解释。 现在开始简单地介绍一下其原理,各个客户端的实现基本相同。下面假设memcached服务器有node1~node3三台, 应用程序要保存键名为“tokyo”“kanagawa”“chiba”“saita
阅读全文
摘要:memcached是缓存,所以数据不会永久保存在服务器上,这是向系统中引入memcached的前提。 本次介绍memcached的数据删除机制,以及memcached的最新发展方向——二进制协议(Binary Protocol) 和外部引擎支持。memcached在数据删除方面有效利用资源数据不会真正从memcached中消失上次介绍过, memcached不会释放已分配的内存。记录超时后,客户端就无法再看见该记录(invisible,透明), 其存储空间即可重复使用。Lazy Expirationmemcached内部不会监视记录是否过期,而是在get时查看记录的时间戳,检查记录是否过期。
阅读全文
摘要:Slab Allocation机制:整理内存以便重复使用最近的memcached默认情况下采用了名为Slab Allocator的机制分配、管理内存。 在该机制出现以前,内存的分配是通过对所有记录简单地进行malloc和free来进行的。 但是,这种方式会导致内存碎片,加重操作系统内存管理器的负担,最坏的情况下, 会导致操作系统比memcached进程本身还慢。Slab Allocator就是为解决该问题而诞生的。下面来看看Slab Allocator的原理。下面是memcached文档中的slab allocator的目标:the primary goal of the slabs subs
阅读全文
摘要:memcached是什么?memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。现在已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中 提高Web应用扩展性的重要因素。许多Web应用都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。 但随着数据量的增大、访问的集中,就会出现RDBMS的负担加重、数据库响应恶化、 网站显示延迟等重大影响。这时就该memcached大显身手了。memcached是高性能的分布式内存缓存服务器。 一般的使用目的是,通过缓存数据
阅读全文