- Linux: rsync+inotify实时同步及rsync+sersync实时同步
能不能别报错
linux系统运维linux服务器运维
rsync+sersync和rsync+inotify是两种常用的实时文件同步方案,用于监控源目录变化并自动同步到目标位置。以下是对两者的详细对比和配置指南:核心区别方案原理优点缺点rsync+inotify使用Linux内核的inotify监控文件变化,触发rsync同步原生支持,无需额外依赖需手动编写脚本,稳定性依赖实现rsync+sersync基于inotify和rsync,封装为独立工具,
- rsync+inotify实时同步实操
灬小特曼
云计算基础linux
rsync概述一款快速增量备份工具可以实现远程同步支持本地复制,或者与其他SSH,rsync主机同步配置操作rsync服务端:20.0.0.185客户端:20.0.0.186安装rsyncyum-yinstallrsyncsystemctldisablefirewalldvim/etc/selinux/config###关闭核心防护SELINUX=disabledsetenforce0yum-yi
- rsync+inotify报错问题解决
反复反复修改修改
服务器linuxcentosbash
编写了一个inotify实时同步脚本,用来检测nfs挂载目录是否有数据变化,如果有变化通过脚本里的rsync命令将数据传输的从的服务器上。#cat/etc/nfschuanhsu.sh#!/bin/bash#编写inotify实时监控脚本backup_Server=192.168.8.30inotifywait=/usr/bin/inotifywaitbakData=/data/rsync/nfs
- rsync+inotify
Hu_O&M
rsyncinotifyrsync+inotifylinux运维
一、rsync简介rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具RemoteSync可以远程同步。它使用一种称为“Rsync演算法”的技术,只传输文件的不同部分,而不是每次都整份传送,这使得它在备份和同步大量数据时非常高效。rsync可以镜像保存整个目录树和文件系统,保持原来文件的权限、时间、软硬链接等属性,并且可以通过SSH等方式安全传输文件。rsync特性:rsync支持
- 开源免费数据同步工具全景解析与实战指南
社恐码农
Hivemysqlpostgres开源数据同步工具
一、数据同步工具生态全景图1.1工具分类矩阵类型代表工具核心能力适用场景开源协议ETL工具DataX、SeaTunnel异构数据源批量同步数据仓库构建Apache2.0CDC工具FlinkCDC、Canal实时数据变更捕获实时数仓/监控系统Apache2.0文件同步GoodSync、FreeFileSync跨设备文件实时同步备份/多云同步GPLv3数据库复制SymmetricDS、MaxScale
- lsyncd文件实时同步
DK_Allen
运维junitlsyncd文件实时同步linux
说明lsyncd是一个支持实时、双向、多机器的多模式文件同步工具。使用Lua语言封装了inotify和rsync工具,采用了Linux内核(2.6.13及以后)里的inotify触发机制,然后通过rsync去差异同步,达到实时的效果。完美解决了inotify+rsync海量文件同步带来的文件频繁发送文件列表的问题——通过时间延迟或累计触发事件次数实现。配置#防火墙配置firewall-cmd--p
- Python实现的自动化文件同步工具
python
功能说明:这个Python程序是一个自动化文件同步工具,能够将一个源文件夹的文件实时同步到目标文件夹,保持两个文件夹中的文件一致。它支持递归复制子文件夹,并且能够自动检测文件的变化(如文件的新增、修改或删除),并做出相应的同步操作。该工具适用于需要保持文件夹之间数据一致性的场景,例如备份文件夹、开发环境同步等。程序功能的亮点包括:实时监控源文件夹的变化。自动将源文件夹的变化同步到目标文件夹。支持递
- Rsync+Sersync实时文件同步
WFkwYu
运维devopslinux服务器rsync
Rsync+Sersync实时文件同步实时同步方案:1、rsync+inotify(不推荐,inotify是对本地文件或目录的实时监控)2、rsync+sersync(推荐,是inotify的升级版,功能更强大,本篇博客就使用该方案)sersync是基于inotify开发的,类似于inotify-tools的工具,Sersync可以记录下被监听目录中发生变化的(包括增加、删除、修改)具体某一个文件
- rsync+inotify文件增量同步
少儿频道
linux基础1024程序员节运维rsync
文章目录前言一、安装rsyncRsync特性和原理二、参数详解三、server端配置文件参数四、rsync的client/server模式1、本地使用补充案例:快速删除文件夹中近百万个文件2、远程使用五、rsync的client/client模式1、rsync的client/client模式的两种应用形式2、使用案例六、rsync+sersync实现数据实时同步七、rsync+inotify实现数
- 使用rsync+inotify简单实现文件实时双机双向同步
handsomestWei
后端后端linux运维
使用rsync+inotify简单实现文件实时双机双向同步实现思路使用inotify-tools的inotifywait工具监控文件变化,触发后使用rsync做同步。加入系统服务项,实现实时监听,方便管理。以下配置操作,单向同步,只需在单边部署。双机双向,需要在两台服务器分别执行。依赖软件简介rsync简介Rsync是一款开源的文件同步和数据传输工具,适用于文件同步、各种数据备份等场景。主要功能
- Rsync教程--linux服务器文件实时同步
皮猴的路数
安装教程以及Bug解决Linux运维linux服务器运维
目录一、什么是rync?二、准备工作(linux-linux文件实时同步)三、安装配置Rsync服务端(linux)四、安装Rsync客户端五、客户端测试-使用Rsync服务将远端的backup目录拉取到当前目录六、Rsync配置文件详解七、Rsync常用命令版权声明一、什么是rync?rsync——remotesynchronize,是一款实现远程同步功能的软件;rsync使用“Rsync算法”
- windows下文件实时同步迁移至服务器的简易解决方案
伽蓝寺听雨
文件同步实时迁移批处理服务器同步
近期做项目的过程中,需要做一个文件实时同步的需求,现将解决思路记录如下,便于后期继续学习和提高。具体需求如下:1、本地机器会不定期产生文本文件(.txt),需要将其新增的文本文件实时同步至阿里云服务器。2、本地生成的文件的过程是按天进行存储的,所以同步后的服务器中也希望按照这样的形式存储。解决思路:1、考虑在服务器搭建一个文件上传的服务,本地用java开发一个小程序(本人对java较熟练)实时监控
- 第十六周作业
马晖
1、使用rsync+inotify实现/www目录实时同步配置服务器端安装inotify工具[root@centos7~]#yuminstall-yrsyncinotify-tools配置/etc/rsyncd.conf文件[root@centos7~]#cat/etc/rsyncd.confuid=rootgid=rootusechroot=nomaxconnections=0ignoreerr
- sersync+rsync实现数据文件实时同步
时间*路人
服务器运维
目录简述rsync+sersync同步原理同步原理配置rsync服务配置Sersync服务简述rsync+sersyncrsync在同步时,只同步发生变化的文件或目录(每次发生变化的数据相对整个同步目录数据来说很小,rsync在遍历查找对比文件时,速度很快),因此效率很高sersync可以记录被监听目录中发生变化的(增,删,改)具体某个文件或目录的名字;同步原理1.在源数据服务器上开启sersyn
- rsync远程同步
GnaW1nT
rsync
目录简介【实验】实现rsync远程同步配置rsync源服务器发起端验证发起端的指令格式下行同步,从源服务器拉数据上行同步,推数据到源服务器免交互(rsync-daemon方式)免交互(rsync-ssh方式)使用rsync来实现快速删除大量文件【实验】基于rsync+inotify实现的实时同步修改rsync源服务器配置文件调整inotify内核参数去到客户端上安装inotify-tools在客户
- rsync+inotify同步备份MYSQL数据
潘晓华Michael
rsync原文链接:https://blog.csdn.net/hkyw000/article/details/51508204备份源10.16.77.93备份端10.16.77.95原理:利用inotify监控mysql数据库数据目录:/usr/local/mysql/data一.备份端服务的配置1)确认rsync是否安装,大多数linux发行版默认安装rsyncrpm-qrsync2)手动创建
- lsyncd + rsync实现文件实时同步
huaweichenai
服务器运维
一:方案介绍rsync+lsyncd的解决方案,rsync实现同步,lsyncd监听文件变化,去触发rsync进行同步二:方案实现1:新服务器(接收备份文件的服务器)(1):安装rsyncyuminstall-yrsync(2):rsync配置账号密码echo'[user]:[password]'>>/etc/rsync.passwordchmod600/etc/rsync.password(3)
- Rsync远程同步
王尼码
linuxrsync同步
目录一、rsync简介二、rsync同步源三、配置rsync源四、rsync命令五、配置源的两种表达方式六、inotify简介七、配置rsync下行同步1、Master(192.168.48.100)2、Slave(192.168.48.101)八、rsync+inotify实时同步1、Master(192.168.48.100)2、Slave(192.168.48.101)一、rsync简介一款
- Rsync+notify文件实时同步工具
Harry_z666
linux
rsync(Remotesync,远程同步)是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。在远程同步任务中,负责发起rsync同步操作的客户机称为发起端,而负责响应来自客户机的rsync同步操作的服务器称为同步源。在同步过程中,同步源负责提供文件的原始位置,发起端应对该
- rsync远程同步
KK小草莓
rsync
rsync远程同步rsync远程同步一、关于rsync二、rsync下行同步1、配置rsync源服务器(1)建立/etc/rsyncd.conf配置文件(2)为备份账户创建数据文件(3)启动/关闭rsync服务程序2、客户端(下行同步)(1)将指定的资源下载到本地/opt/data/目录下进行备份(2)免交互格式配置(3)定时同步3、ssh认证方式三、rsync+inotify实时同步(上行同步)
- Linux下rsync+inotify实现实时文件同步
wolf1105
linuxbash服务器
一、【接收端配置】#cat/etc/rsyncd.confuid=rootgid=rootmaxconnections=8pidfile=/var/run/rsyncd.pidlogfile=/var/log/rsyncd.loghostsallow=192.168.3.0/24[dkms]readonly=nowriteonly=nopath=/data/digitalkey/upload/dk
- rsync远程同步(rsync+inotify)
koeda1
工具mysql架构运维
目录一、概述1、关于rsync2、rsync的特点:3、备份方式:4、同步方式:二、rsync相关命令1、rsync常用命令的选项:2、启动和关闭rsync服务:3、关闭rsync服务三、免交互:1、免密同步:2、定期同步:四、inotify工具:1、发送端安装inotify工具:2、inotify内核参数3、设置监控实例和实例文件修改:4、inotify命令:五、实验:1、下行同步:2、上行同步
- 怎样能实现不同服务器之间的文件实时同步?
Ftrans
数据同步安全大数据
数字化时代,数据已经成为企业的重要资产,其中文件共享是企业运行中的重要业务场景。由于办公文件可能存在不同服务器甚至不同的城市之间,企业文件的实时同步是很多中大型企业急需解决的问题,为了不耽误业务的运行,甚至出现过跨城送硬盘来保证文件的一致性和安全性。目前国内市场上的文件同步软件质量参差不齐,企业很难选择适合自己的满足个性化场景需求的同步软件,其痛点主要表现在以下几点:1、同步软件的选择性不多:目前
- Centos7搭建NFS服务器
brinzhang_yy
Linux
现在有3台服务器s1(主),s2(从),s3(从)需要实现文件实时同步,我们可以安装Nfs服务端和客户端来实现!一、安装NFS服务器所需的软件包:yuminstall-ynfs-utils二、编辑exports文件,添加从机vim/etc/exports/home/nfs/192.168.248.0/24(rw,sync,fsid=0)同192.168.248.0/24一个网络号的主机可以挂载NF
- rsync+inotify实时同步+双向同步
爱吃biangbiang面
MIS系统linux运维服务器
准备主机192.168.1.247(源)/home/appdata192.168.1.248(目的)/home/appdata实现效果:1.用rsync手动将192.168.1.247的/home/appdata同步到192.168.1.248的/home/appdata目录。2.用inotify组件实现文件的实时同步3.实现两个服务器的双向实时同步手动单向同步目的主机操作(192.168.1.2
- rsync+inotify实时同步部署 详解
朝花夕誓、
linuxrsync运维
rsync同步一、rsync同步介绍二、rsync实时同步1、定期同步的不足2、实时同步的优点三、关于inotify1、Linux内核的inotify机制四、rsync+inotify实时同步1、调整inotify内核参数2、安装inotify-tools辅助工具3、通过inodifywait触发rsync同步操作五、实验步骤1、配置rsync源服务器2、发起端2、同步方法3、rsync+inot
- rsync远程同步(下行同步)+inotify实时同步部署
爽姐想退休
linuxrsync
文章目录一、rsync简介二、rsync同步源三、配置rsync源1、基本思路2、配置文件rsyncd.conf3、rsync账号文件4、启动rsync服务四、rsync命令五、配置源的两种表达方法六、rsync实时同步七、inotify简介八、配置rsync下行同步九、rsync+inotify实时同步1、Master(192.168.182.11)2、Slave(192.168.182.22)
- rsync 备份工具(附rsync+inotify 实时同步部署实例)
小冯同学。
云计算
rsync备份工具(附rsync+inotify实时同步部署实例)1、rsync概述1.1关于rsync1.2rsync的特点1.3工作原理2、rsync相关命令2.1基本格式和常用选项2.2启动和关闭rsync服务2.3下行同步基本格式2.4上行同步基本格式2.5免交互2.5.1指定密码文件2.5.2rsync-daemon方式2.5.3rsync-ssh方式2.6定期同步3、部署rsync定期
- rsync远程同步+inotify监控
我不道啊;
linux运维
目录一、rsync介绍:二、rsync复制时原理:三、rsync同步方式:四、基本格式:1.常用选项:2.同步的两种方法:3.免交互格式配置:五、配置rsync源服务器:1.准备:2.编写配置文件:3.为备份账户创建数据密码文件:4.为同步目录添加权限:5.启动rsync服务程序:6.同步:六、配置rsync+inotify:1.源服务器修改rsync源服务器配置文件:2.调整inotify内核参
- 实现linux多台服务器间目录文件同步
b哈利路亚d
服务器运维Linux服务器linux运维
由于平台要上负载均衡,后面有4个emc节点,每次更新系统都比较麻烦,所以这里记录一下收集到的一个看着靠谱的同步方案出处:Linux中文件实时同步-刘新元-博客园注意:看着靠谱,暂时没有实验过,等实验后也许会更新本文。目录1.Rsync基本介绍2.rsync的两种工作模式3.rsync的同步方案3.1方案一3.2方案二4.环境信息4.1配置服务端4.1.1安装rsync和修改配置文件4.2在客户端服
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http