自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Vern的专栏

新博客地址:http://www.vernonzheng.com

  • 博客(23)
  • 收藏
  • 关注

原创 Javascript三种文字编码方式(对应java里的编解码)

一、Javascript里三种编码方式js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,d  ecodeURIComponent1、   传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断。

2012-10-31 22:30:23 2590

原创 Hash一致性算法在分布式中的应用实践

一、Hash算法与分布式架构的发展第一阶段考虑到单服务器不能承载,因此使用了分布式架构,最初的算法为 hash() mod n, hash()通常取用户ID,n为节点数。此方法容易实现且能够满足运营要求。缺点是当单点发生故障时,系统无法自动恢复。第二阶段为了解决单点故障,使用 hash() mod (n/2), 这样任意一个用户都有2个服务器备选,可由clien

2012-10-27 16:02:26 1594

原创 页面显示js和HTML标签内容(防js注入攻击)

(1)只需要由界面输出的话,可以用document.write()(2)通用性更高的一种方法是使用textarea来完成。可以满足从后台批量取数据显示。比如这是个分页的表格内有个绑定字段包含html标签,如果不做处理,第一条记录的评论内容显示为空,如果内容由客户端上传,就可能会被js注入,获取cookies等信息。这里可以用第二种方法完美解决,“

2012-10-26 13:07:04 4111

原创 CAP,BASE和最终一致性是NoSQL数据库存在的三大基石

CAPCAP理论最早是在2000年7月19号,由Berkeley的Eric Brewer教授在ACM PODC会议上的一个开题演讲中提出,PPT在此。此后,MIT的Seth Gilbert和Nancy Lynch,理论上证明了Brewer猜想是正确的,CAP理论在学术上正式作为一个定理出现了。CAP理论的C就是一致性(Consistency),这里不多解释,想了解的可以看看我之

2012-10-25 23:02:36 4948

转载 hyperic mysql scaling 案例学习(数据库优化)

这是看了Sun 的communityone 上一篇介绍hyperic 在mysql 上scaling 的介绍写的笔记.hyperic 是一个在大型数据中心用作服务器管理和监控的软件,Hyperic HQ 提供中心服务器来收集多台主机的状态和性能指标,并且在一个中心界面上管理…… 其他的好处看后面的参考资料Hyperic 默认是支持三种数据库mysql,oracle,postgresql

2012-10-25 11:09:20 1713

原创 PostGresql索引深入分析

一、索引的类型:    PostgreSQL提供了多种索引类型:B-Tree、R-Tree、Hash、GiST和GIN,由于它们使用了不同的算法,因此每种索引类型都有其适合的查询类型,缺省时,CREATE INDEX命令将创建B-Tree索引。        1. B-Tree:    CREATE TABLE test1 (        id integer,

2012-10-17 22:22:51 4480

转载 利用散列算法优化唯一索引性能(长文本字段的唯一索引优化)

问题我们通常需要对一些长文本字段建立唯一索引,比如,我们自己的应用里面,经常会有 URL 或者 URI 字段,里面保存类似: http://www.pgsqldb.org/mwiki/index.php http://www.eeeeworks.org/#post-27这样的数据,并且要求唯一、不重复,常见的做法是创建一个唯一索引: create unique i

2012-10-16 22:36:05 1782

原创 Base64编码详解

Base64与MIMEBase64常用于在通常处理文本数据的场合,表示、传输、存储一些二进制数据。包括MIME的email,email via MIME, 在XML中存储复杂数据.其中MIME主要使用两种编码转换方式——Quoted-printable和Base64——将8位的非英语字符转化为7位的ASCII字符。(关于Quoted-printable的介绍请看文章结尾备注。)虽然这样

2012-10-14 16:47:45 2524

原创 根据平均值(期望)生成min与max范围内的等概率随机数

缘由:       为完成伪造导入大量应用评论,需取到0-10分的随机评论分数值,插入数据集合,且保持整体数据的平均值(期望)与之前基本不变。 /** * 得到随机的评论分数 * @param avgScore * @param max * @param min * @return * @author vernon.zheng */ pub

2012-10-12 13:29:27 4910 1

转载 java的concurrent用法详解

我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便。而当针对高质量Java多线程并发程序设计时,为防止死蹦等现象的出现,比如使用java之前的wait()、notify()和synchronized等,每每需要考虑性能、死锁、公平性、资源管理以及如何避免线程安全性方面带来的

2012-10-12 11:04:25 3453

转载 jQuery验证控件jquery.validate.js使用说明+中文API

一导入js库 二、默认校验规则(1)required:true                必输字段(2)remote:"check.php"      使用ajax方法调用check.php验证输入值(3)email:true                    必须输入正确格式的电子邮件(4)url:true

2012-10-09 16:29:32 1667

原创 瓦片数据分片算法与规则

现在的网络地图大多采取TMS(瓦片地图服务)的存储方式,是用REST接口支持的URL参数(地理参数)来描述空间瓦片存储方式,并通过URL的get方法访问到这些瓦片的。比如GoogleMaps瓦片数据请求URL的规则为http://xxxx:port/WebServiceName?x=X&y=Y&z=Z,其中Z为缩放级别,X为瓦片的衡中做参考点坐标。      假设地图投影为平面,缩放级

2012-10-08 00:06:42 5705

原创 OpenLayers性能瓶颈与优化(闭包引用与GML解析低效率)

1. 结构中大量闭包的引用关系造成的性能瓶颈    OpenLayers其实是受到了js本身的限制,js是解释型的语言,执行效率不高,而且寄生在客户端让浏览器执行的。而OpenLayers中大量用到了闭包,最开始OpenLayers的内存泄露问题也是满严重的,后来差不多每个类中都写了destroy方法,用于释放资源,解除对象与DOM的绑定,相当于析构函数那种,这在很大程度上优化了Ope

2012-10-07 23:52:39 8055

转载 OpenLayer源代码总体结构分析

OpenLayer源代码总体结构分析   通过前面的项目介绍,我们大概已经知道 Openlayers是什么,能够做什么,有什么意义。接下来我们分析它怎么样,以及怎样实现的等问题。  这个图是从它的文档上截取的,旨在从感官上认识一下OpenLayers的类。下面分别介绍(文档中的类是按字母顺序排列的,也按这个顺序说吧):  我们看到在类的顶层“高高在上”的是OpenLay

2012-10-07 23:29:37 8267

原创 Geoserver的安装配置(组合OpenLayers使用)

毕业设计时候做的WEBGIS系统。最近整理了一下。 GeoServer + MySQL的安装配置方法参见http://simen-net.javaeye.com/blog/609092 1、下载GeoServerhttp://geoserver.org/display/GEOS/Stable,因为我是想基于tomcat实现WEBGIS功能,所以我下载的是Web Archiv

2012-10-07 22:30:10 3961

转载 原子变量AtomicInteger

An int value that may be updated atomically. See the java.util.concurrent.atomic package specification for description of the properties of atomic variables. An AtomicInteger is used in applic

2012-10-07 21:54:36 1748 6

转载 数据库事务与隔离级别

一、数据库事务的定义  数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久

2012-10-07 13:22:37 1112

原创 Hibernate事务并发问题处理(乐观锁与悲观锁)

使用悲观锁解决事务并发问题  悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据)。  一个典型的依赖数据库

2012-10-07 11:56:47 2291

原创 LINQ学习

1. LINQ的读法:(1)lin k (2)lin q   2. LINQ的关键词:from, select, in, where, group by, order by …   3. LINQ的注意点:必须以select或者是group by 结束。   4. LINQ的语义:   from 临时变量 in 集合对象或数据库对象   where 条件表达式

2012-10-06 11:46:22 708

原创 aspx页面乱码问题解决

问题描述:      最近在修改ExtJs主界面的时候,本来index.html能够正常显示,接下去讲html的内容添加到index.aspx文件中,于是出现了乱码,不能正常显示。具体:      把GB2312编码的HTML页面另存为.ASPX文件,然后进去加服务器代码。这样搞出的ASPX页面,即便在页面中已经有了  这样的语句,在浏览器中查看时,编码只有UTF-

2012-10-06 11:44:59 4576

转载 ExtJS编程基础--类(Classes)

创建一个类Javascript与其他的面向对象语言不同,如C++,Java或PHP等。它并不是基于类的,而是基于原型的一种语言。     在Javascript中创建一个类是非常容易的:你不必通过定义一个类然后实例化该类来创建一个对象。我们在这里使用了一个对象构造器。它满足了使用单个对象的场合。如果我们需要使用同一个类型的多个对象,我们必须使用一个构造器函数和new关键字。 例:

2012-10-06 11:38:44 931

原创 JavaScript必知必会小结(《JQuery实战》)

一、JavaScript对象的基本原理(1)       Object对象,与其他面向语言相比,这里的Object几乎没有任何相同之处。Object的实例是属性的集合,也就是说,得到Object实例的主要目的就是用作其他对象的已命名集合。(2)       JavaScript对象是属性的无序集合。(3)       属性由名称和值所构成。(4)       对象可以利用对象字面量

2012-10-06 11:32:00 1084

转载 System.gc()与Object.finalize()的区别

finalize()是由JVM自动调用的,你可以用System.gc(),但JVM不一定会立刻执行,JVM感觉内存空间有限时,才会开始执行finalize(),至于新的对象创建个数和被收集个数不同是因为收集的对象只和JVM的垃圾收集策略有关。1.构造函数要点:构建器(Constructor)属于一种较特殊的方法类型,因为它没有返回值.这与 void返回值存在着明显的区别。对于voi

2012-10-06 11:22:19 1589

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除