自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 如何让java XMLStreamReader能发出CDATA事件

要对一个带CDATA的XML文档的某些element内容加密,加密后除了被加密的element外,其他内容不能变。这个需求看起来比较简单,为了有比较好的性能,用了java XML stream API。先看看能否把一个XML文档由XMLStreamReader读出,再由XMLStreamWriter写入新的XML文件。代码比较简单:import javax.xml.stream.*;impo

2017-05-19 13:14:47 703

原创 创建docker image时可能会用到的.dockerignore

一直用docker build命名创建docker镜像时都很顺利,没有遇到什么坑。但是今天试图创建一个mysql docker镜像时docker build命令报告如下错误:Error checking context: 'no permission to read from '/home/db-test/db-data/ca-key.pem''.我的第一反应是我的Dockerfile

2017-03-21 11:36:44 1926

原创 docker-compose中的环境变量

使用docker-compose部署一个MySQL server. mysq serverl的数据库文件存放在/var/lib/mysql目录下,为了重启mysql server不至于丢失创建的数据库数据,我们需要mount一个目录到mysql server容器的/var/lib/mysql。用docker-compose创建一个mysql instance大概如下:version: '2'

2017-03-20 15:09:15 4692 1

原创 alpine linux docker安装体验

alpine linux中安装Docker,设置Docker http proxy

2017-02-28 13:45:45 5630

转载 The Eight Fallacies of Distributed Computing - Peter Deutsch

Essentially everyone, when theyfirst build a distributed application,makes the following eight assumptions.All prove to be false in the longrun and all causebig troubleand painful learningexperience

2016-09-01 13:10:51 421

原创 如何让socket的accept线程安全退出

今天,在linux上实现程序的graceful shutdown功能,通过log发现一个socket的accept线程怎么样也不退出,即使是调用了shutdown和close。回来通过google才发现,调用shutdown和close并不能够让accept()自动返回,郁闷!要调用select()才能实现我要的功能,select除了socket的fd外,还要创建pipe,让selec

2012-11-19 18:01:52 3498

原创 gearmand中的Map/Reduce

除了gearman协议中的定义的提交job到jobServer的下列原语:SUBMIT_JOB,SUBMIT_JOB_BG,SUBMIT_JOB_LOW,SUBMIT_JOB_LOW_BG,SUBMIT_JOB_HIGH,SUBMIT_JOB_HIGH_BG,gearmand添加了两条原语:SUBMIT_REDUCE_JOB和SUBMIT_REDUCE_JOB_BACKGROUND。从名字上看我们

2012-05-27 17:11:30 840

原创 gearmand 中的job持久化

C语言版的gearman实现中,job可以持久化到数据库或者一些流行的Cache产品,当前gearman可以将job持久化到:MySQLPostgressDrizzleSqliteMemcachedRedisTokyocabinet如果job server挂了重启后,job可以从用户所选择的持久化产品中恢复,gearman job server又可以调度没有这些或者完成的job。G

2012-05-08 11:19:31 828

原创 Gearman后台job处理流程

下图是Gearman后台处理流程图  1) worker通过TCP/IP连接到jobServer2) worker向jobServer注册它所支持的功能,这是通过worker向jobServer发送CAN_DO命令完成的。CAN_DO命令只有一个参数: 功能名。如果worker支持多种功能,可以多次调用CAN_DO命令告知jobServer它支持的功能。如果一个功能worker必须

2012-05-04 13:27:36 1233

原创 Gearman 协议工作流程

Gearman协议可以在http://gearman.org/?id=protocol找到  下图是Gearman的一个正常工作流程:1) worker通过TCP/IP连接到jobServer2) worker向jobServer注册它所支持的功能,这是通过worker向jobServer发送CAN_DO命令完成的。CAN_DO命令只有一个参数: 功

2012-05-04 12:57:51 1488

Professional C++ 2nd Edition

学习C++和CXX11好书籍,CXX11标准为C++语法增添了现代编程语言的流行元素,比如类型的自动推导,闭包...,简化了C++的开发。如果你是一个C++爱好者,一定对本书感兴趣。

2012-06-16

空空如也

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

TA关注的人

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