- 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在客户端服
- Rsync学习笔记1
CCH2023
RsyncLinuxlinux
企业架构Web服务器的文件及时同步:1)能够理解为何要服务器的文件同步;2)能够简单描述实现文件同步的几种方式;3)能够实现服务器文件实时同步的案例;服务器同步文件的必要性:当业务代码发生改变,上传到web服务器的时候,因为架构已经不是单台服务器提供服务,而是由多台Web服务器提供服务,业务代码需要同时上传到多台Web服务器,在操作上带来了很多不便。故需要解决以上问题,就需要Web服务器中的业务代
- rsync远程同步部署
成长中的Mr.Wu
服务器运维linux
目录一、rsync简介二、rsync同步源三、配置rsync源四、rsync命令五、配置源的两种表达方式六、inotify简介七、配置rsync下行同步1、Master(192.168.184.10)2、Slave(192.168.184.20)八、rsync+inotify实时同步1、Master(192.168.184.10)2、Slave(192.168.184.20)一、rsync简介一款
- 备份工具——rsync——inotify——远程同步
渡渡甲
redisnosql缓存
备份工具——rsync——inotify——远程同步前言一、rsync服务器1、Rsync介绍2、同步方式3、增量备份4、rsync命令5、配置源的两种表示方法6、实验:远程复制(下行复制)二、inotify1、简介2、inotifywait(持续监控并实时输出监控结果的命令)3、实验:rsync+inotify总结前言正确、有效的备份方案是保障系统及数据安全的重要手段。在服务器中,通常会结合计划
- linux服务器使用rsync 和 inotify或者sersync 实现服务器之间文件实时同步
小吴-斌
Linux服务器linux运维
服务器环境服务端:172.16.57.26centos6.7rsync-server接收文件客户端:172.16.57.25centos6.7sersync+rsync-client发送文件服务端rsync安装#首先确认软件是否安装:rpm-qarsync#未安装yuminstallrsync编辑配置文件/etc/rsyncd.confvim/etc/rsyncd.conf##全局配置uid=rs
- day36 文件实时同步
Linux_淡忘
备份服务方案(利用实时复制方式,实现实时备份数据等重要信息)imageimage2.1、实时复制细节实现说明1)实时复制软件会监控文件系统的变化,比如:指定一个/data目录,实时复制服务软件进程会实时监控/data目录中数据的变化,即文件系统block和inode信息的变化2)一旦/data目录发生变化,就会执行rsync命令,将变化的数据信息推送到备份服务器相应的备份目录中,从而完成数据的实时
- rsync+inotify实现文件的实时同步
胖虎是只mao
Linuxlinuxcentos
一、rsync工具介绍rsync(remotesync)即远程同步。rsync不仅可以远程同步数据(类似于scp),而且可以本地同步数据(类似于cp),但不同于cp或scp的是,它不会覆盖以前的数据,而是先判断已经存在的数据和新数据的差异,只有数据不同时才会把不相同的部分覆盖。rsync安装:yuminstall-yrsyncrsync的命令格式:rsync[选项]...SRCDESTrsync[
- 【简单认识rsync远程同步】
除我以外皆是我
云计算
文章目录一.rsync1、简介2.rsync应用场景3、rsync+inotify的应用场景4、rsync+cron的应用场景二.配置rsync备份源(同步方式)1.rsync同步源2.同步方式3.备份的方式三.常用rsync命令3.配置源的两种表达四、配置rsync实现同步1.使用ip表达式同步2.使用url表达式同步3.不存在的文件也同步4.免交互访问同步目录5.使用ssh访问五、实时同步1.
- rsync远程同步+inotify实时同步部署
2301_77369997
云计算
文章目录一、rsync简介1.rsync同步方式2、备份的方式3.rsync同步源二、rsync命令基本用法三、配置源的两种表达方法四、配置服务端与客户端的实验1.将Master服务器数据备份到Slave服务器2.配置Rsync+Inotify实时同步五、rsync的应用场景总结一、rsync简介Rsync(RemoteSync)是一个功能丰富、快速和灵活的文件复制和同步工具。它以增量复制的方式工
- rsync远程同步
Utopia_dower
云计算
目录一、rsync介绍1.1rsync简介1.2rsync特性二、rsync同步源服务器三、配置rsync下行同步(定时同步)3.1配置源服务器3.2发起端配置四、rsync实时同步(上行同步)4.1定期同步的不足4.2实时同步的优点4.3Linux内核的inotify机制4.4发起端配置rsync+Inotify五、配置rsync实时同步(上行同步)5.1修改rsync源服务器配置文件5.2发起
- Rsync 远程同步
Tizzy33
云计算数据库运维服务器阿里云安全架构
目录一、Rsync简介二、备份的方式三、常用Rsync命令四、配置源的两种表达方法五、配置服务端与客户端的实验六、发起端(客户端)配置rsync+inotify一、Rsync简介Rsync(RemoteSync,远程同步)是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。在
- 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