
架构师-03-实施
cnmqw
闹啥子嘛闹
展开
-
Arch-03-06-仿 facebook 底条实现聊天功能
facebook 很火,那条能聊天的底部工具条更惹眼,似乎也容易抄袭,好象还很受用,决定抄一把。 (1)基础框架就选 DWR,为什么,因为我讨厌写太多 JS 脚本。还有更重要的原因是 DWR3 支持多种 WEB 容器的 comet 特性。我喜欢这句话“Asynchronous servlet support for Tomcat and Glassfish”。 那么多的 web ...原创 2011-05-04 11:17:14 · 117 阅读 · 0 评论 -
Arch-03-04-关注人人网的架构
其实是想模仿 facebook , 无奈庭院深深,翻-墙烦琐,幸好有人人网资源丰富,抄得完整,便也就抄抄人人网好了,跟非死不可的确差不多的样子。虽然只是山寨强盗之流,也想学人家搞搞研究,所以就说这是人人网框架的研究好了。 1、目标:(1)抄个一样的架构,能跑起来的哈。(2)重点是应用程序装置部分。2、网络资源(1)人人网官方开放平台首页: http://wiki.dev.r...原创 2011-03-23 11:44:26 · 261 阅读 · 0 评论 -
Arch-03-22- 编程实现多数据源,水平切分,异种数据源
在 Spring 的框架下,通过编程实现多数据源(JDBC),水平切分(sharding),异种数据源(SQL & NOSQL),标题很强悍,实现应该比较纠结。 初步构想是在 DAO 的 BASE 层实现这几件事情,不想扰乱经典的 Controller-Manager-Dao 架构。原有的 Ibatis Dao 都继承于 BaseDao,BaseDao 中已经封装常见的数据访问方...原创 2011-10-20 17:35:32 · 103 阅读 · 0 评论 -
Arch-03-23- ActiveMQ 实践
ActiveMQ 到了非用不可的地步了,学习一下吧。主要用途定位在分发用户消息上,pub/sub。 (一)堆砌 org.apache.activemq.broker.BrokerService;org.apache.activemq.store.PersistenceAdapter; (二)实战一:应用服务器集群节点之间通讯 (1)原理,每个 app 服...原创 2011-10-28 15:03:22 · 85 阅读 · 0 评论 -
Arch-03-15- Nginx+tomcat 配置负载均衡动静分离
Nginx+tomcat 配置负载均衡动静分离,再强大一些,多个 Tomcat 之间实现共享 Session。 #user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log inf...原创 2011-08-12 12:22:27 · 122 阅读 · 0 评论 -
Arch-03-25-JAVA异常列表
ClassCastException类型转换异常类ClassNotFoundException未找到相应的类ArithmeticException算术异常ArrayIndexOutOfBoundsException数组下标越界异常ArrayStoreException数组中包含不兼容的值而抛出异常SQLException操作数据库...原创 2011-12-20 09:37:17 · 192 阅读 · 0 评论 -
Arc-03-26-相册图片短码编码实现
应用中需要上传用户图片,不想数据库单独维护图片的信息,想直接从编码定位到图片文件,又不想编码太长,所以需要压缩数字串。 /** * 64进制和10进制的转换类 * * @author * */public class compressEncodeing { final static String PHOTOS_PREFIX = "H"; fina...原创 2011-12-29 17:01:09 · 205 阅读 · 0 评论 -
Arc-03-27-FTP 服务和客户端小结
尽管局域网中传输文件有 n 多方法,samba,webdav,http,ftp,因为同时跨 windows,linux, mac os,还是选择了最稳定的 FTP 方式。服务器端 FTP:vsftpd 是首选,但因为需要在文件传输后做处理,不懂 vsftpd 的编程,后来用了 apache mina FtpServer客户端 FTP:主要使用 apache 的 org.apache.co...原创 2012-01-29 18:08:36 · 145 阅读 · 0 评论 -
extjs4 有用的资源链接
对 Ext 扩展的一些小总结http://laodaobazi.iteye.com/blog/1356264原创 2012-05-12 01:07:32 · 95 阅读 · 0 评论 -
Arch-03-24- Spring Security 应用
Spring Security 用了几次,还没有在集群环境中使用的,这次需要在集群中使用了。 (一)认证的基本术语 User - 用户Fecerated User - 联合用户External User - 外部用户Authentication - 验证Credentials - 凭据Application Security Layer - 应用安全层,过渡器...原创 2011-11-08 17:47:04 · 117 阅读 · 0 评论 -
CXF 结合jaxb返回json字符串时,当属性为数值型字符串时,没有双引号问题
问题:CXF 结合jaxb返回json字符串时,当属性为数值型字符串时,没有双引号问题。这个问题应该是影响比较大的,网上的资料并不多,其中比较有帮助的是 http://fly2wind.iteye.com/blog/730350 写道CXF,RESTEASY返回格式为JSON时,如果类型为String的值为数值时,JSON中引号消失的问题解决要解决这个问题,需要修改相关的底层...原创 2012-06-04 14:00:05 · 352 阅读 · 0 评论 -
Arc-03-32 用户事件跟踪
参照 clickstream 项目,保存到数据库1.实现原理创建 Session 时候,开始跟踪,每一个请求都记录在该 Session 下。销毁 Session 时候,将该 session 的全部历史操作保存到数据库。2.依赖工程web 工程需要引入的工程: plusrun-security3.用户登录时,需要将用户ID写入 session//......原创 2012-07-05 15:25:46 · 199 阅读 · 0 评论 -
Arch-03-28 Jndi 配置 Mongodb jetty 实现
使用 springdata mongodb,直接使用 spring 配置,很简单,但如果一定要使用 jndi 方式配置,则需要费一翻功夫了。 <!-- spring 中配置 springdata mongodb--> <mongo:mongo id="replicaSetMongo" replica-set="192.168.1.24:30001,192.168.1....原创 2012-03-06 15:20:48 · 192 阅读 · 0 评论 -
Arc-03-29 CXF 实现 REST 方式上传文件
CXF 实现 REST 方式上传文件 /** * */package com.demo.rest;import java.io.IOException;import java.io.InputStream;import java.util.Date;import javax.activation.DataHandler;import java...原创 2012-04-09 00:46:56 · 324 阅读 · 0 评论 -
避免跨域问题 ajax proxy
前端全是 AJAX 框架,其中用到一些动态 API 调用,动静站点部署分离后,为避免跨域问题,使用了站点内代理,从网上的 httpClient3 版本升级到 httpClient4. ...原创 2012-12-04 09:31:02 · 113 阅读 · 0 评论 -
Base64扩展,自定义字串和顺序
Base64很标准,sun 的 jdk 包含了实现,JS 也有许多可选实现。已知 sun 的 Base64 性能不行,远不及自己写的代码,这并不重要,无须深究。比较关注的是通常 JS 到 JAVA 间通常是私有的 Base64 编码和解码,如果采用公共的方式编码与解码,不能实现简单的加密。但可以通过适当的修改 Base64 来实现简单加密与解密。尽管不及专门的对称加密和非对称加密的安全性,但...原创 2012-12-06 11:10:28 · 466 阅读 · 0 评论 -
Arch-03-21- Spring 中调用 Guice 中的注入
当 spring 和 guice 共同存在一个项目中,且 spring 中需要访问 guice 的注入时,这个方法似乎可以使用。 (1) spring 中配置转换的 factory <bean id="guiceBeanProvider" class="com.plusrun.util.GuiceBeanProviderFactory"/> (...原创 2011-10-06 20:27:53 · 179 阅读 · 0 评论 -
Arch-03-20- Shindig 实践
之前已经抄录了几篇网文,初步了解 shindig 功能与特性,现在想搭建一个基于 SNS 的应用软件平台,SNS 开源实现已经比较不太纠结,但涉及开一些行业应用的时候,还没能发现直接可以拿来使用的开源 app store 实现,决定用 shindig 组合一个。还想尽快实现基于 SNS 平台的 RIA 应用程序部署。 OpenSocial 开发实践,第 1 部分: OpenSo ......原创 2011-10-06 16:53:47 · 108 阅读 · 0 评论 -
Arch-03-15-比较图片的相似性
比较图片的相似性 显然是陌生和困难的,先收集点算法补补课。 (1)计算图像相似度——《Python也可以》之一 http://blog.youkuaiyun.com/lanphaday/article/details/2325027(2)数字图像处理中基于纹理特性的匹配 http://www.iteye.com/topic/176101(3)图像相似度算法的C#实现及测评 http:/...原创 2011-07-14 23:29:50 · 124 阅读 · 0 评论 -
Arch-03-07-开发 Firefox 插件
由于需要用到热敏打印机,甚至黑标走纸,而运行环境铁定是 firefox,没办法了,必须开发个小插件来实现,在此学习一把。(最新修改,将黑标功能改为硬件外接走纸按钮,不在软件中实现了,所以这个插件挂了,以下代码没有成功测试) (1)从0开始,入门训导:http://www.firefox.net.cn/forum/viewtopic.php?t=25314(2)看来是写插件,再学习:...原创 2011-05-19 10:47:32 · 122 阅读 · 0 评论 -
Arch-03-08-热敏打印机集成方法
纯原创,由于做一款查询一体机,需要打印小票纸,其中用到热敏打印机,由硬件人员找到了板子和 epson 532 的机芯,但是供应商没能提供打印示范程序,只有一个 epson 的驱动程序,还附有一份命令文档,硬着头皮上吧。(1)找开源相同型号的打印机 VC 代码,失败(2)找到了 VB 检测黑标代码,成功(3)安装 VB 6 开发环境(4)调试程序(5)高级打印没问题,关键是要黑标...原创 2011-05-24 09:59:45 · 245 阅读 · 0 评论 -
Arch-03-01-非一般的架构范例
5.0 版本精要 Access PointsUser InterfaceCascading style sheets (CSS)JavaScriptSoy templatesFreeMarker template (FTL)JavaServer Pages (JSP) CustomizingWidgetsEmailWeb ServicesRE...原创 2011-01-27 23:50:49 · 172 阅读 · 0 评论 -
Arch-03-02-范例中用到的 jar 包和说明
jar 包太多,老是记不住,就记在这儿好了。 包名作用站点daisydiff.jar比较 html 差异http://code.google.com/p/daisydiff/ ssce.jar拼写检查http://www.wintertree-software.com/dev/ssce/ sac.jarsac解析css...原创 2011-01-28 17:03:24 · 150 阅读 · 0 评论 -
Arch-03-09-使用 Apache CXF 封装现有的 Service 为 REST
Rest 方法简洁得令人抓狂,必须得把现有的 service 封装成 REST 方式。 Apache CXF 是不二之选。 计划一下内容:(1)了解 CXF;(2)下载 CXF;(3)集成现有环境;(4)封装 PhotoService 试试;(5)前端调用一下下。 一、了解CXF引用http://www.iteye.com/topic/424737 ...原创 2011-06-02 13:48:37 · 115 阅读 · 0 评论 -
Arch-03-16- RIA 最佳实践摸索
RIA 是必须的了,实现 RIA 的路径也特别的多,摸索正确的框架搭档和最佳实践路径也成了必须。 1、基调(1)后端用: java(2)前端用: Dojo 或 JQuery(3)前端组件库:smartClient 或 dojo/jquery官方组件库 2、路径(1)struts,chain,tile,dojo,smartClient(2)struts,dwr,j...原创 2011-09-18 11:53:02 · 118 阅读 · 0 评论 -
Arch-03-17- 用 pgpool-II 搭建 PostgreSQL 集群
(一)方案 尽管做数据库 postgresql 集群的方式有很多种,数据库9.0以上原生的 standby,呼声很高的 guzz,老牌的 Slony-I,但看过了小日本仔的一篇 pdf 后,觉得用 Streaming replication + Hot Standby + pgpool-II 似乎比较适合我的口味。(1)我一向赞成数据库集群应该由数据库厂商提供(2)数据库集群对应用是透...原创 2011-09-19 10:00:50 · 243 阅读 · 0 评论 -
Arch-03-18- 用 Mysql-proxy 搭建 MySQL 集群
对应上篇 pgpool2 搭建 postgresql 集群,因偏好 mysql ,也试着做一个 mysql 集群。参考 http://heylinux.com/archives/1004.html http://blog.youkuaiyun.com/swengineer/archive/2011/03/11/6239711.aspxhttp://swengineer.iteye.com/bl...原创 2011-09-20 10:21:37 · 185 阅读 · 0 评论 -
Arch-03-10-自动投票机器人
由于生活中需要对网站上的某张图片投票决定排名,无可避免地想起了做个自动投票机器人。 经过一天的尝试,三种方案:(1)保存投票页面到本地,分析代码,直接用 js 和 ajax 循环提交,每次循环中间随机休眠几秒。一开始居然有效,不过好景不长,第二天就被网站改了页面,不能直接提交了。 <html> <head> <meta ...原创 2011-06-19 10:07:36 · 286 阅读 · 0 评论 -
Arch-03-19- NoSQL实践
虽然对新技术甚为谨慎,但目前大家所做的伪 sns 的 nosql 似乎也让一帮同事兴奋不已,没办法,试试吧。不讨论nosql 的长短,直接实施吧,关键在于 nosql 表的设计和与 postgrsql 间数据的关系组织。 一、用 YCSB 测试候选的数据库(1)候选:hbase,voldemort,mongodb(2)ycsb 环境:centos5.4,12G,4x4核 服务器...原创 2011-09-26 10:27:27 · 103 阅读 · 0 评论 -
Arch-03-03-解剖企业级的 ajax 框架(dojo+smartclient)
无论感情上是否好恶以 javascript 为主编程,但现实需要了,只能硬着头皮上。先就解剖一只青蛙看个明白,刀子划到哪就记到哪,没什么树型组织,也不好组织大脑记忆,所以记在这里比较方便。 一、对象:dojo+smartclient 是一个企业级的工具软件中UI部份,貌似很健壮,至少可以算顶级架构师们的作品了。(1)骨架是 dojo,(2)分为两类 js 代码,一类是面向对象的应用...原创 2011-03-03 23:19:48 · 85 阅读 · 0 评论 -
Arch-03-11-开发小问题杂烩
开发小问题杂烩1、牛X人加了个用户登录session 后,采用 rest 方式交互的程序内部取不到用户(1)<url-pattern>*.htm</url-pattern> 只对 htm 结尾的有兴趣,rest 中没有 htm,结果就挂了。 2、IE8 的不支持,firefox 和 chrome 没问题(1)不支持 ".trim()" var user...原创 2011-07-05 14:18:00 · 148 阅读 · 0 评论 -
arch-03-12-YoxView相册使用 jQuery1.6.1 出现问题修复方法
YoxView相册使用 jQuery1.6.1 出现问题修复方法 YoxView 相册很好用,但JQuery 版本是1.42~1.5.2 之间,升级到 jQuery 1.6.1 后出现错误,页面的按钮显示不正常。由于上传组件 blueimp 使用了 Jquery 1.6.1 的版本,冲突之间寻找解决方法,版本往回降比较困难,所以保留 JQuery1.6.1,想办法升级 YoxView 才是...原创 2011-07-06 01:26:08 · 104 阅读 · 0 评论 -
Arch-03-13-JMagic 切割图片时,使用多线程异步大幅提高性能
JMagic 切割图片时,使用多线程异步大幅提高性能 由于使用 jQuery blueimp 的上传组件及 yoxView 显示组件,图片上传后自动切割成8个不同规格的图片,如果采用单线程处理 10x3M 的文件需要 2分20秒,如果加入了多线程异步(并做了单线程优先生成即时显示的缩略图)需要 53秒,完成任务是一样的,而对于前端的用户体验差别明显。 ...if(prof...原创 2011-07-06 11:17:38 · 143 阅读 · 0 评论 -
Arch-03-14-缓存策略
Arch-03-14-缓存策略 robin(有人谓肉饼,太有才了)的一文很强悍,摘在这儿做个灯引。http://robbin.iteye.com/blog/770553 写道操作系统磁盘缓存数据库缓存 --Query Cache --Data Buffer应用程序缓存 --对象缓存 --查询缓存 页面内部缓存 --动态页面静态化 --Servlet缓存W...原创 2011-07-08 10:21:37 · 146 阅读 · 0 评论 -
集成Hibernate Search做全文检索
集成Hibernate Search做全文检索 原文来自 http://blog.youkuaiyun.com/zhengwei223/article/details/11952763 版本及依赖: [html] view plaincopy <dependency> <groupId>org.hibernat...原创 2014-05-03 15:42:15 · 166 阅读 · 0 评论