`
文章列表
接上一篇 征服Kestrel,介绍XMemcached对于Kestrel的支持实现。 关于XMemcached具体代码,可以参考Memcached笔记——(二)XMemcached&Spring集成 这里为了代码简洁,直接使用Spring+XMemcached集成模式,先给出Spring的配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" ...
因为要面对高并发PUSH需求,考虑将其按队列方式实现,最终选型Kestrel。 至于Kestrel: 基于Scala语言的Twitter开源消息中间件 高性能(TPS 6000不成问题)、小巧(2K行代码)、持久存储(记录日志到journal)并且可靠(支持可靠获取) Kestrel的前身是Ruby写的Starling项目,后来twitter的开发人员尝试用Scala重新实现。 可支持的标准协议: SET          存 GET          取 FLUSH_ALL    清理 STATS        状态 扩展协议: SHUTDOWN       关闭kestrel se ...
为了将N个前端数据同步,通过Memcached完成数据打通,但带来了一些新问题: 使用iBatis整合了Memcached,iBatis针对每台server生成了唯一标识,导致同一份数据sql会产生不同的key,造成重复缓存。——通过重写iBatis部分原码,终止了 ...
用Excel作为数据源,通过Java Web进行导入,需要POI的jar。 apachepoi(org.apache.poi 3.8) 可以支持公式、日期等格式! 不说废话,上代码: /** * Jun 25, 2012 */ import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import or ...
想要插入一条数据,要避免重复插入,又不想折腾两回数据库连接操作,可以参考如下办法。 INSERT INTO table(column1,column2,column3 ...columnN) SELECT value1,value2,value3 ...valueN FROM dual WHERE NOT EXISTS( SELECT * FROM table WHERE value = ? ); dual是为了构建查询语句而存在的表,Oracle中很常见,配合INSERT ... SELECT构建成我们需要的表,并指定了数据项. EX ...
2年前一直折腾Apache,现如今更习惯Nginx。 搭建网站又遇到2年前遇到的问题——Session同步。 (参考我以前的帖子——征服 Apache + Tomcat)只不过现今担当负载均衡的Apache换成了Nginx! 今天简要说明一下Nginx+Tomcat负载均衡实现,重点介绍Nginx+Tomcat+Session共享实现。 相关内容: 征服 Apache + SSL 征服 Apache + SVN 征服 Apache + SVN +  LDAP 征服 Apache + Tomcat 征服 Nginx 征服 Nginx + Tomcat Nginx负载均衡,其实主要就是用u ...
Linux基本命令天天用,想不熟悉都难,用户操作却不是天天都搞,多少容易有些遗漏,继续整理! 相关链接: Linux 命令整理 —— 基本操作 Linux 命令整理 —— 用户管理 Linux用户管理以读、写、执行动作为权限,以用户组为单位,限制用户行为。对于文件的的操作,可以限制读、写、执行中的哪一种,也可以限制文件所有者、组用户、组外用户相应的权限。 所以,要建立用户,最好先确定其所在的组。 一、用户组操作 1. 创建用户组——groupadd #新增deploy组 groupadd deploy 2. 修改用户组——groupmod #将用户组deploy更名 ...
赶上要配置测试服务器,赶上Nginx-1.2.0 stable version释放,正好重新配置一下Nginx! 相关内容: 征服 Apache + SSL 征服 Apache + SVN 征服 Apache + SVN +  LDAP 征服 Apache + Tomcat 征服 Nginx 征服 Nginx + Tomcat 一、准备工作 下载如下组件: nginx-1.2.0 pcre-8.10 zlib-1.2.5 pcre,有关正则表达式匹配;zlib,用于压缩。这些就不细说了,如果要安装最简版的nginx,记得准备好这两样东西就好了。 用root账户启动服务是比较危险的! ...
项目完结,整理一些技术方面的相关收获。 已经记不得EhCacheController这个实现类最早来自于那里了,总之稍加修改后非常有效果,大家就这么用了,感谢最初开源的那位兄弟。这里,主要是做个记录,为以后类似扩展(譬如Memcached)做个准备。 iBatis提供CacheController接口,用于实现第三方缓存架构的扩展。 这里以iBatis 2.3.0,EhCache 1.2.3版本为基础,构建iBatis+EhCache实现。 EhCacheController类: package com.ibatis.sqlmap.engine.cache.ehcache; im ...
接N年前写的一篇Spring AOP相关的内容征服Spring AOP—— Schema,沿用原有例子,将Schema方式转换为@AspectJ方式实现。 注解方式的确更加简洁,由配置优先转为契约优先,还是需要点过程,至少是理解上和心理上! 相关内容: 征服Spring AOP—— Schema 征服Spring AOP—— @AspectJ 先看Spring配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.spri ...
今天研究Memcached的Java的Client,使用XMemcached 1.3.5,做个简单的测试,并介绍如何与Spring集成。 相关链接: Memcached笔记——(一)安装&常规错误&监控 Memcached笔记——(二)XMemcached&Spring集成 Memcached笔记——(三)Memcached使用总结 Memcached笔记——(四)应对高并发攻击 一、Memcached Client简要介绍 Memcached Client目前有3种: Memcached Client for Java SpyMemcached XMemcac ...
08年的时候接触过Memcached,当时还对它的客户端产品嗤之以鼻,毕竟手工代码没有各种ORM原生XML配置方便。尽管如此,Memcached现在已经成了服务器架构里不可或缺的一部分! 相关链接: Memcached笔记——(一)安装&常规错误&监控 Memcached笔记——(二)XMemcached&Spring集成 Memcached笔记——(三)Memcached使用总结 Memcached笔记——(四)应对高并发攻击 一、下载 1.Libevent 简单的说就是一个事件触发的网络库,Memcached离不开它。 wget http://cloud.g ...
眼看就要2012了,这一年给自己树立的研究课题基本上因为工作的转型,最终都没能实现。开发经验开始消减,更没能赶上新技术。终于,我要恢复开发经验! 找回曾经的我! 最近被问到很多Java基础性的问题,突然发现自己长时间沉迷于框架整合的乐趣中,有关于底层这方面原来不曾深度研究,有必要恶补下了。 “transient”——“瞬态”,先不说这个翻译是否恰当,这个变量关键字一直不曾使用,简单的说就是被瞬态定义的变量不可序列号。或者这么给他换个名字——“不可序列化状态”? 打个比方,如果一个用户有一些敏感信息(譬如密码,银行卡号等),为了安全起见,不希望在网络操作(主要涉及到序列化操作,本地序列化缓存也 ...
昨天看了一遍《Learn Objective-C on the Mac》,晦涩难懂。这本书的编码环境实在是过于陈旧,跟我现在用的Xcode4.2差距甚远。边看边写边求索于谷歌、百度。最终,凭着尚有老本的C/C++基础,弄明白这是怎么一回事。 C语言的确是万源之源,只要你还有那么点C的基础,入手Object-C就不算太难。 做个简单的纪录,定义一个人物类,只要求有名字,年龄。 先做个接口定义,要求对成员变量赋值,并且输出结果 #import <Foundation/Foundation.h> @interface Person : NSObject { // 是不是可以理解 ...
Maven用了一段时间了,基本上被我摆平了。结合Eclipse跟Bamboo,Maven还是相当给力的! 先整理下已知内容,以免过早遗忘,甚至丢失! 相关链接: Maven零散笔记——常用配置 Maven零散笔记——配置Nexus pom.xml基础配置: maven中,最让我迷惑的还是那一堆配置! 就拿这个属性配置来说: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.framework.versi ...
Global site tag (gtag.js) - Google Analytics