- 安装libcurl4-openssl-dev以支持HTTPS网络通信
Leon_Jinhai_Sun
python
`libcurl4-openssl-dev`是一个在基于Debian的Linux发行版(如Ubuntu)中使用的软件包名称,它用于安装libcurl库的开发文件和OpenSSL支持。下面是对它的详细解释:1.**libcurl**:libcurl是一个免费的、易于使用的客户端URL传输库,支持多种协议,包括HTTP、HTTPS、FTP、FTPS、SFTP、SCP、DICT、TELNET、TFTP、
- petalinux-build ERROR
Ret0
嵌入式硬件
最近编译Xilinx的固件的时候报了一个错,看的我云里雾里,一度认为ubuntu的版本跟petalinux的版本不匹配,想要重新安装操作系统和编译环境,想想都头大。petalinux-create-tproject--templatezynqMP-npetalinux-config--get-hw-description=./petalinux-build第二条命令导入的zu11eg的hdf然后就
- 【个人记录】CentOS7升级glibc至2.28
三千院喵
Linux服务器linuxcentos
CentOS7升级glibc至2.28前言升级步骤替换Yum源升级GCC升级Make更新libstdc++.so.6.0.26更新glibc升级Yum源为CentOS8前言由于CentOS7系统已经停止支持,虽然大部分业务已经迁移至OpenEuler,但仍然有部分业务系统跑在CentOS7上。在尝试部署新业务环境时经常会提示如下错误(以code-server运行需要的node20为例)node-v
- CentOS 7 企业级Redis 7部署指南
去看日出
linuxJAVARediscentosredislinux
CentOS7企业级Redis7部署指南目录导航一、环境准备1.1依赖管理二、离线安装2.1源码编译安装2.2目录结构规范三、生产配置3.1主配置文件3.2配置生成脚本四、系统集成4.1Systemd服务文件4.2服务管理命令五、安全加固5.1网络安全配置5.2审计配置六、性能调优6.1内存优化配置6.2基准测试命令七、维护指南7.1监控命令7.2备份策略##一、环境准备###1.1依赖管理安装依
- 有了Docker为啥还需要k8s?
简单简单小白
dockerkubernetes容器
这里写目录标题Docker的作用:Kubernetes的作用:为什么有了Docker还需要Kubernetes?单机无法满足需求:容器的自动化管理:跨多环境的统一管理:总结:Docker和Kubernetes(K8s)是两种不同的技术,它们各自解决了不同的问题,但一起使用时能发挥更大的作用。简单来说,Docker主要解决的是容器化的问题,而Kubernetes解决的是如何有效地管理和编排这些容器。
- Linux技术学习分享-Vim 编辑器与 Shell 命令脚本【1.5】
BinaryStarXin
Linux技术学习分享【1】linux学习运维安装配置VM虚拟机部署虚拟环境安装Linux系统Vim文本编辑器vim
3.3命令行的通配符大家可能都遇到过提笔忘字的尴尬,作为Linux运维人员,我们有时候也会遇到明明一个文件的名称就在嘴边但就是想不起来的情况。如果就记得一个文件的开头几个字母,想遍历查找出所有以这个关键词开头的文件,该怎么操作呢?又比如,假设想要批量查看所有硬盘文件的相关权限属性,一种方式是这样的:[root@linuxprobe~]#ls-l/dev/sdabrw-rw----.1rootdis
- CentOS上远程连接SSH常用操作命令整理
luckyext
centossshlinux
1.SSH服务状态查询,查看SSH服务是否正在运行的命令sudosystemctlstatussshd2.SSH服务的启动及设置系统启动时自动运行命令sudosystemctlstartsshdsudosystemctlenablesshd3.SSH服务的重启命令sudosystemctlrestartsshd4.SSH的主要配置文件是/etc/ssh/sshd_config,可以用文本编辑器vi
- 【Docker项目实战】使用Docker安装Blossom 笔记应用
江湖有缘
Docker部署项目实战合集docker笔记容器
【Docker项目实战】使用Docker安装Blossom笔记应用一、Blossom介绍1.1Blossom简介1.2主要特点1.3使用场景二、本次实践规划2.1本地环境规划2.2本次实践介绍三、本地环境检查3.1检查Docker服务状态3.2检查Docker版本3.3检查dockercompose版本四、下载Blossom镜像五、部署Blossom应用5.1创建部署目录5.2编辑部署文件5.3创
- ElasticSearch+Kibana通过Docker部署到Linux服务器中
易安杰
elasticsearch搜索引擎linux全文检索中文分词
1、ElasticSearch概念Elasticsearch是一个基于Lucene构建的开源搜索引擎,它提供了一个分布式、RESTful风格的搜索和数据分析引擎。Elasticsearch能够对大量数据进行快速全文搜索,并且具有非常好的水平扩展能力,这意味着当你需要处理更多数据时,可以通过增加更多的服务器来提升性能。文档和字段:elasticsearch是面向文档(Document)存储的,可以是
- Docker 镜像操作笔记
π大星星️
dockereurekaspringcloud
一、简介Docker镜像是容器运行的基础,它包含了容器运行所需的文件系统、应用程序及其依赖。镜像是不可变的,每次修改都会生成一个新的镜像。以下是对Docker镜像操作的详细介绍,包括常用的命令及其参数解释。二、镜像操作(一)拉取镜像1.基本命令dockerpull:2.参数解释dockerpull:从远程仓库拉取镜像。:镜像的名称,例如nginx、ubuntu。:镜像的版本或变体,例如latest
- Linux如何修改SSH端口号
wuling129
CentOS
Linux如何修改SSH端口号SSH是什么?SSH为SecureShell由IETF的网络工作小组(NetworkWorkingGroup)所制定;SSH是建立在应用层和传输层基础上的一种安全协议。SSH传输数据是加密的,可以有效防止传输过程被截取数据保障安全。SSH的数据是经过压缩的,所以可以加快传输的速度SSH服务端口修改1.首先查看一下当前linux是否已经安装SSH软件包,使用rpm-qa
- 【Hadoop】使用Docker容器搭建伪分布式集群
慕青Voyager
分布式hadoopdocker
使用Docker容器搭建Hadoop伪分布式集群1、编写docker-compose.yaml文件配置集群version:"3"services:namenode:image:apache/hadoop:3.3.6hostname:namenodecommand:["hdfs","namenode"]ports:-9870:9870env_file:-./configenvironment:ENS
- 修改ssh默认端口号
weixin_33830216
运维
修改的是/etc/ssh/sshd_config文件[root@linux~]#vi/etc/ssh/sshd_config#$OpenBSD:sshd_config,v1.692004/05/2323:59:53dtuckerExp$#Thisisthesshdserversystem-wideconfigurationfile.See#sshd_config(5)formoreinformat
- Linux修改ssh默认端口22为其他端口2024
lytcreate.
Linux问题记录linuxssh服务器
一、修改配置文件修改ssh服务的配置文件:/etc/ssh/sshd_config将Port22放开注释,并将22修改为2024,并保存二、重启sshd服务systemctlrestartsshd三、重启服务失败如果重启服务失败,可以执行以下命令:semanageport-a-tssh_port_t-ptcp2024semanageport-a-tssh_port_t-ptcp2024命令在SEL
- 如何更改Linux的ssh端口
lxw1844912514
1.修改/etc/ssh/sshd_config里的Port字段Port22改为Port1000(你自定义的端口)2.重启sshd服务#servicesshdrestart
- Linux-RPM、YUM/DNF和软硬链接
CHQ_2157
linux
RPM管理工具RPM是红帽子包管理(RedhatPackageManager)的缩写。由RedHat公司提出的一种软件包管理标准。是Linux各发行版本中最广泛的软件包格式之一(还有debian的发行版deb安装包)RPM功能通过rpm命令使用不同参数来实现rpm:软件包_压缩存贮,拥有一个头文件,其中包含有关于本软件包的相关信息,便于对软件包信息进行查询RPM软件包的典型命名格式:软件名-版本号
- 基于旭日派的Ros系统小车的再开发——使用python脚本Astra调用深度相机(学习笔记)
Z._ Yang
python嵌入式硬件个人开发python
1、Ros系统的简要介绍:ROS是你的机器人的操作系统。它运行在各种不同类型的计算机上的标准Linux系统之上,如树莓派或其他的一些单片机、以及笔记本电脑或台式电脑。ROS中可执行的程序的基本单位是:节点(node)节点之间通过消息机制进行通信,这就组成了:算图(abac)节点之间通过收发消息进行通信,消息的收发机制分为:话题(topic)、服务(service)和动作(action)1.ROS提
- centos 安装alien
编程日记
Linux
出处:http://linux4you.in/install-netapp-oncommand-system-manger-on-centos/1.在root权限下执行命令$sudosu2.安装alien需要的依赖包#yum-yinstallPythonrpm-buildmakem4gcc-c++autoconfautomakeredhat-rpm-configmod_dav_svnmod_ssl
- ok113i平台——多媒体播放器适配
枪眼
linux嵌入式Linux音视频t113i
1.视频播放支持1.1在Linux平台交叉编译ffmpeg动态库,详情查看《ok113i平台——交叉编译音视频动态库》提取如下动态库:libavcodec.so.58.134.100libavdevice.so.58.13.100libavfilter.so.7.110.100libavformat.so.58.76.100libavutil.so.56.70.100libswresample.s
- Git环境搭建指南
郭顺发_
经验分享
Git是当今最流行的版本控制系统,无论是个人开发还是团队协作都离不开它。本文将从零开始,手把手教你在Mac、Windows、Linux三大操作系统上快速搭建Git环境,并验证安装是否成功。#一、Mac系统安装Git#方法1:通过Homebrew安装(推荐)#1.如果未安装Homebrew,先执行以下命令/bin/bash-c"$(curl-fsSLhttps://raw.githubusercon
- Linux下安装压缩包版MySQL记录
蝶衣哦
mysqllinux数据库
本次记录使用Centos7.x最小安装版操作MySQL安装包下载下载地址:https://dev.mysql.com/downloads/mysql/操作系统选Linux-Generic,OS版本根据自己系统处理器架构和glibc版本选择,然后下载筛选结果中的CompressedTARArchive版本例如我选的将安装包上传到你服务器上的任意位置且解压,比如我解压到/home/mysql,以下内容
- dell服务器centos启动后进入emergency mode模式解决方法
探序基因
生信服务器运维服务器运维
碱基跳动计算机研究院整理作者的服务器最近不能登陆,以为是服务器故障,结果重启动后,提示welcometoemergencymodel!Afterloggingin,type"journalctl-xb"orviewsystemlogs,之类的提示。输入root密码登陆后,输入journalctl-xb,也不太看得懂里面的长篇大论。服务器启动的过程中,也隐约能看到有时候提示ERROR。登陆紧急模式的
- centos服务器安装基因组分析软件-bwa和samtools等
探序基因
centoslinux运维
探序基因肿瘤研究院整理安装bwa:github地址:https://github.com/lh3/bwa或者Burrows-WheelerAligner下载页面:https://sourceforge.net/projects/bio-bwa/files/作者通过下载的方式,下载了bwa-0.7.17make发现报错:/usr/bin/ld:./libbwa.a(rope.o):/home/del
- NPM环境搭建指南
郭顺发_
博客经验分享
NPM(NodePackageManager)是Node.js的包管理工具,堪称前端开发的基石。本文将手把手教你在Mac、Windows、Linux三大系统上快速搭建NPM环境,并验证是否成功。一、Mac系统安装NPM方法1:通过Homebrew安装(推荐)#1.安装Homebrew(已安装可跳过)/bin/bash-c"$(curl-fsSLhttps://raw.githubuserconte
- Shell脚本和Python的工作路径
行码棋
#Pythonpython
在Linux中,工作目录(WorkingDirectory)是指当前进程执行时所处的目录路径。工作目录会影响文件路径的解析,相对路径是基于工作目录来确定的。场景描述假设在项目根目录/下运行一个位于子目录/home/user/scripts中的Bash脚本script.sh,而该脚本中又调用了一个Python程序program.py。我们需要分析脚本和Python程序的工作目录。1.运行Bash脚本
- ubuntu搭建Nexus3私服
sunhaha82
nexus3ubuntu运维
ubuntu搭建Nexus3私服Nexus是常用的Maven服务器,在开发过程中,搭建自己的Maven私服可以减小自身开发环境对外部环境的依赖,是一种很好的方式。鉴于Nexus3在功能上可以扩展为docker的私有仓库,因此,本教程内容为在ubuntu上搭建Nexus3私服。一、搭建条件Nexus需要jdk环境,我的环境里本来是配置好jdk环境的,因此,不作赘述。yuminstalljava//安
- 容器方式安装 nexus3 并作为yum私服
chenxizhan1995
总结记录linuxcontainers
nexus3笔记new,2022-10-19,chenxizhan1995@163.com目标虚拟机上docker形式搭建nexus服务,用作yum私服和containerimage私服,为k8s集群提供基础了解nexus数据存储目录,把数据存储到单独的磁盘上,可以迁移资料阅读NexusRepositoryManagerNexusRepositoryOSSvs.ProFeaturesReposit
- linux中Swap分区是做什么的?
yarnecn
基础计算机原理linux服务器windows
文章目录内存分段物理内存虚拟内存内存碎片的出现Swap交换区内存分页有了内存之后的SwapSwap区的弊端总结我们在操作服务器的时候,一般会用top命令查看整体系统资源,top命令除了CPU,内存以及任务运行情况等,在内存的显示信息下边还有一行信息,就是Swap,它跟内存的表示方法一样,以总量,空闲,使用大小来表示当前的占用情况,那它到底是什么呢,跟内存有什么区别么?swap用英文表示是交换的意思
- Docker:4、数据管理(volume数据卷、挂载主机目录bind mounts、tmpfs)、docker-compose(相关命令)、原理(namespace和cgroup)
shanshandeisu
dockerdocker容器运维数据卷
1.数据管理在容器中管理数据主要有三种方式:数据卷(Volumes):完全在Docker中实现和管理。数据存储在宿主机上由Docker控制的位置。可以用于容器之间的数据共享。对数据卷的修改会立马生效。对数据卷的更新,不会影响镜像。即使容器被删除,数据卷仍然存在。挂载主机目录(BindMounts):允许用户指定宿主机上的任意目录或文件作为数据源。可以用于在宿主机和容器之间共享配置文件、日志文件等。
- centos8.0 docker ngnix
期待着2013
服务器
问题1:镜像拉取不下来,用DAO云加速器问题2:ngnix镜像不能运行,无法检索OCI运行时错误,更新包yumupdatelibseccomp问题3:dockerrun-v目录有ngninx.conf或conf.d等.特殊字符,报无效格式docker:invalidreferenceformat..,不要用\换行,用一行运行想到之前装为知等容器时都是单行命令,删掉\及换行后正常完成安装。在Cent
- 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