- Nagios安装部署全攻略
weixin_34109408
memcachedphp操作系统
概述:公司的生产机器一共有12台,2台LVS(主备)、2台nginx、2台tomcat、1台后台服务器(nginx_tomcat)、3台mysql(主+备+异地灾备)、1台图片服务器、2台memcached.可以看出网站的架构就是基于高可用的原理的,每个层面都做了主备、系统的PV不高,对于并发布,高性能没有那么苛求,对于系统安全、稳定有较高要求,前期已经对系统做了各种日志分析,WAF配置,漏洞扫面
- zabbix监控MySQL
lu9up
zabbixmysql数据库
1PMP介绍PMP(percona-monitoring-pluggins)是高质量的mysql监控组件,以模板、插件和脚本的形式提供我们去应用。可以将企业级MySQL功能添加到现有的本地监控解决方案中,支持如Nagios、Cacti和Zabbix等热门解决方案。更详细介绍请阅读官方文档第三章【TEMPLATESFORZABBIX】:Percona-Monitoring-Plugins-1.1.8
- vulnhub靶机midwest-v1.0.1
himobrinehacken
vulnhub安全系统安全网络安全
下载地址:https://download.vulnhub.com/midwest/midwest-v1.0.1.ova主机发现目标144端口扫描服务扫描漏洞扫描访问web咯改一下host接下来用wpscan看一下用户名接下来看一下密码能不能出来扫的时候顺便看了一下网站目录nagios401了那就是又这个东东被拦截了这玩意又是一个waf好好好密码估计是出不来了再用域名扫一下这个也是一样的,只能访问
- 源码部署zabbix监控详细步骤
Mr Sean
zabbix监控类
由于实际工作中所需要监控的服务器数量之大,人工监控耗时耗力,基于这种情况寻找可用于监控的服务器的开源软件,有三款推荐软件可使用:Cacti、Nagios、Zabbix三款软件各自的特点如下:Cacti:基于SNMP协议的监控软件,强大的绘图能力Nagios:基于Agent监控,强大的状态查验与报警机制,插件极多,自己写监控脚本潜入到Nagios非常方便.Zabbix:基于多种监控机制,支持分布式监
- Hack The Box-Monitored
0415i
HTB靶场合集网络服务器运维linuxwebhttp
端口扫描&信息收集使用nmap对ip进行扫描nmap10.10.11.248开放了22、80、389、443端口使用dirsearch对网站目录进行扫描dirsearch-u10.10.11.248发现一个/nagios的网页,尝试访问发现需要用户名和密码,这里没有用户名密码,先继续下一步将ip和域名加入到hosts文件中后,访问ipecho'10.10.11.248nagios.monitore
- htb monitored root方式其中的一种(仅作记录)
春猿火
linux
快下班时候审出来的,目前root的第5种方式nagios@monitored:~$cat/usr/local/nagiosxi/scripts/backup_xi.sh#!/bin/bash##CreatesaFullBackupofNagiosXI#Copyright(c)2011-2020NagiosEnterprises,LLC.Allrightsreserved.#BASEDIR=$(di
- Linux运维日常使用软件和技能
寻宝记_楠哥
运维工程师使用的运维平台和工具包括:Web服务器:apache、tomcat、nginx、lighttpd监控:nagios、ganglia、cacti、zabbix自动部署:ansible、sshpt、salt配置管理:puppet、cfengine负载均衡:lvs、haproxy、nginx传输工具:scribe、flume备份工具:rsync、wget数据库:mysql、oracle、sql
- 持续运维与监控
Michaelzh
运维的趋势,挑战,事件管理,流程管理运维权限管理开源运维平台云上IAM监控开源监控方案zabbix+短信、邮件、微信、钉钉告警普罗米修斯(容器)Nagiosopen-falconzenoss监控对象服务器、虚拟机监控数据库监控中间件监控容器监控云上监控云上自带服务,例如AWS的cloudwatch+SNS、阿里云的云监控+短信服务等告警消息分级,人性化监控系统运维可视化开源技术grafana云上服
- 开源监控服务一瞥:Prometheus、Grafana、Zabbix、Nagios、Icinga和Open-Falcon
CodeArtisanX
开源监控
前言随着信息技术的发展,监控服务在维护系统稳定性和性能方面变得越来越重要。本文将比较一些流行的开源监控服务,以帮助你选择适合你需求的解决方案。监控服务对比监控服务特点优势不足性能扩展性安全性Prometheus-多维度数据模型-监控容器化环境的强大工具-需要单独设置存储后端-查询性能较高,适用于大规模环境-可通过分布式部署进行横向扩展-支持基于HTTPS的数据传输,提供基本认证-支持服务发现自动发
- nagios部署记录
shaoqiu.wu
linuxcentos运维
nagios主程序部署前期准备工作#关闭防火墙systemctlstopfirewalld#关闭防火墙开启自启systemctldisablefirewalldvi/etc/sysconfig/selinuxSELINUX=disabled#重启#换源cd/etc/yum.repos.d/#备份源mvCentOS-Base.repoCentOS-Base.repo.bak#下载阿里源curl-o/
- pnp4nagios 配置 nagios
nextflying
java前端服务器
/root/software/pnp4nagios-0.6.26/sample-config/nagios.cfg-sample.in/root/software/pnp4nagios-0.6.26/sample-config/misccommands.cfg-sample.in/root/software/pnp4nagios-0.6.26/sample-config/nagios.cfg-sa
- nagios php-fpm,nagios平台从apache迁移到nginx
weixin_39907762
nagiosphp-fpm
nginx的性能远远优于apache,但由于nagios的web界面中包含php和c-cgi程序,因此需要两套fcgi管理工具(并非必须)和两套解释器(必须)。php用php-cgi跑就可以,c-cgi我选用fcgiwrap。下面介绍安装/配置步骤。php-fpm:是为PHP打的一个FastCGI管理补丁,可以平滑变更php.ini配置而无需重启php-cgiSpawn-fcgi:是lighttp
- 《高性能Linux服务器构建实战》笔记
SkTj
系统安全、故障排查、自动化运维、集群架构1、账号安全,安装完后可以删除的账号:adm,lp,sync,shutdown,halt,news,uucp,operator,games,gopher禁用登录功能:usermod-s/sbin/nologinnagios2、关闭不需要的服务:anacronauditdautofsavahi-daemonavahi-dnsconfdbluetoothcpus
- L2tp客户端
jameslord
makefilenagioslinuxubuntufile服务器
root@ubuntu:~/download/backfire$lsfeeds/packages/net/xd/feeds里面放了很多Makefile,编译时怎么没把xd编译出来呢?filesMakefilepatchesREADMEroot@ubuntu:~/download/backfire$lsdl/|grepxfeeds/packages/admin/nagios/Makefilenagi
- 16、Mysql用户工具
geek-wmy
Mysql高性能学习mysql数据库java后端面试
接口工具MysqlWorkbenchSQLyogphpMyAdminAdminer命令行工具集PerconaToolkitMaatkitandAspersaTheopenarkkitMysqlWorkbench工具集SQL实用集common_schemamysql-sr-libMysqlUDF库MysqlForge监测工具开源的监控工具NagiosZabbixZenossHypericHQOpen
- k8s实战之部署Prometheus+Grafana可视化监控告警平台
诸葛钢铁云
K8S
写在前面之前部署web网站的时候,架构图中有一环节是监控部分,并且搭建一套有效的监控平台对于运维来说非常之重要,只有这样才能更有效率的保证我们的服务器和服务的稳定运行,常见的开源监控软件有好几种,如zabbix、Nagios、open-flcon还有prometheus,每一种有着各自的优劣势,感兴趣的童鞋可以自行百度,但是与k8s集群监控,相对于而已更加友好的是Prometheus,今天我们就看
- 《中小银行运维架构:解密与实战》李丙洋_2021
hotwater99
#运维运维
目录传统IT基础架构IT基础设施网络架构灾备架构运维日常系统监控基础设施层监控系统层监控应用层监控业务层监控用户体验层监控事件管理事件管理流程事件应急处理事件管理制度及分级事件管理优化运维标准化域名化安全基线基础运行环境标准化操作系统中间件运行规范中间件编码规范网络标准化数据库标准化立体化监控体系监控体系流行监控系统NagiosGangliaZabbixOpen-FalconPrometheusE
- 分布式下有哪些好用的监控组件?
小小哭包
分布式解决方案分布式监控组件
在之前的内容中,分析了分布式系统下的线上服务监控的常用指标,那么在实际开发中,如何收集各个监控指标呢?线上出现告警之后,又如何快速处理呢?本文我们就来看下这两个问题。常用监控组件目前分布式系统常用的监控组件主要有OpenFalcon、Nagios、Zabbix、CAT等,下面一起来看看这几款组件的应用及相关特性。好钢要用在刀刃上,由于各类监控组件的应用和配置更偏向基础运维,所以本课时的目的是希望你
- 监控系统看这一篇就够了!Zabbix、Prometheus等常见监控教程
开源Linux
zabbixprometheus运维大数据
监控俗称「第三只眼」,几乎是我们每天都会打交道的系统,俗话说:无监控、不运维,监控的地位不言而喻,尤其是在运维自动化时代,传统运维、DevOps,亦或是SRE,监控都是一项必备的技能。我们先来认识一下主流的开源监控系统,Zabbix、Open-Falcon、Prometheus等,今天就简单介绍一下【Zabbix】【Prometheus】【Cacti】【Nagios】【Garafana】等5种主流
- Nagios NRPE安装(官方文档)
瑷护你
NagiosNRPE官方文档1、安装并启动xinetd服务yuminstallxinetd-ysystemctlstartxinetd2、下载nrpe源码文件wgethttps://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz3、编译安装tarxzfnrpe-3.2.1.tar.gz
- grafana zabbix 模板_Zabbix+Grafana打造高逼格监控系统
执行机器人
grafanazabbix模板
目录正文第一章zabbix监控的意义1.1为什么要监控业务安全性的保障系统的保障产品持续性的运行1.2监控的内容1.3zabbix的选择性[x]纯命令监控太局限性[x]监控三剑客(Nagios、zabbix、Cacti)[x]可及时发现故障,并在故障恢复的第一时间得到通知[x]灵活运用,包括zabbix的阈值定义,自动发现,API接口,触发动作等功能1.4zabbix的工作组件及告警流程数据采集:
- Zabbix 6.0 详细基础介绍
Stars.Sky
Zabbixzabbix
目录一、如何选择自己的运维监控平台1.1常用的开源运维监控工具1.1.1Cacti1.1.2Nagios1.1.3Ganglia1.1.4Centreon1.1.5Grafana1.1.6Prometheus1.1.7Zabbix1.2监控工具选型经验1.2.1中小企业传统监控选择Zabbix1.2.2云原生监控选择Prometheus二、Zabbix版本发布与安装需求2.1Zabbix版本发布计
- Ambari 基本架构
cpuCode
Ambariambari架构前端hadoop大数据
Ambari利用了已有的优秀开源软件,并结合起来:agent端,采用了puppet管理节点在web端,采用ember.js作为前端MVC框架和NodeJS相关工具,用handlebars.js作为页面渲染引擎,在CSS/HTML方面还用了Bootstrap框架在Server端,采用了Jetty、Spring、JAX-RS等同时利用了Ganglia、Nagios的分布式监控能力Ambari框架采用的
- 从零开始运维之旅:如何监控你的 Windows?
weixin_30347335
操作系统运维
小弟乃刚刚踏入运维圈的资深小白一枚,正所谓完事开头难,公司里怕我把生产系统搞坏就让我先在测试环境上先练练手。巧的是测试环境又是我熟悉的Windows环境,心中窃喜啊。但问题随之而来,运维从何下手呢。同事正巧解囊相助,告诉我可以先从监控开始多了解下系统的性能参数等数据。这时有一种拨开云雾见光明的感觉啊,哈哈。不过选择什么来监控呢。向大神们用的Zabbix和Nagios这等开源神器我这入门小弟暂时也不
- 一个用于监控Dell PowerEdge服务器硬件状态的nagios/icinga插件
weixin_34032827
运维开发工具awk
一个用于监控DellPowerEdge服务器硬件状态的nagios/icinga插件手头有几台dell服务器,分别是PE2850和PER710,想把硬件状态监控加入icinga中,但是网上提供的大多是依赖dellopenmanager的snmp服务,用起来有些不对劲,自己对snmp所知较少,尤其是那些OID,一大串数字,不知道具体代表什么。前几天发现openmanager自带的命令omreport
- nagios 监控dell设备(网上相关内容较少,特意留档)
王Sir_yt
nagios运维
#创作灵感#记录工作实践、项目复盘错误信息:a.Unabletogetstatusinformationduetotechnicalissues.b.DellEMCdevicediscoveryisinprogress...Error:EmptyorInvalidPassphraseisconfiguredc.Error:Pathnotconfiguredforthemacro$OMINAGIOS
- lightOps(一个轻量级运维管理系统)
软件研发漫谈
工具运维运维监控监控系统
lightOps(轻量级运维管理系统)源码地址https://gitee.com/joshho/lightOps需求背景在开发过程中修改数据库数据或表结构,但是在上线时需要将变动的sql脚本刷到N个表结构相同的库中,如何方便的更新过去?如果你只需要监控相关系统URL的状态,但是zabbix、nagios的安装又太复杂,怎么办?如果你想监控相关服务器的端口状态,又不想用zabbix、nagios怎么
- MySQL数据的备份与导入
tangpy
备份:mysqldump-uroot-p--all-databases>all.sql#备份所有库表mysqldump-uroot-pnagios>nagios.sql#备份nagios库导入:需要先创建nagios库才能导入:usenagios;sourcenagios.sql;#导入备份的所有数据或者在外面执行:[root@VM_36_201_centos~]mysql-uroot-pnagi
- Prometheus监控服务-上
程序源~
监控服务器运维网络
目录一、监控介绍1、cacti2、Nagios3、Zabbix4、Prometheus二、运维监控平台设计思路三、prometheus监控体系1、系统层监控(需要监控的数据)2、中间件及基础设施类监控3、应用层监控4、业务层监控5、Prometheus支持通过三种抓取类型6、安装Prometheus四、Prometheus工作流程一、监控介绍1、cactiCacti(英文含义为仙人掌)是一套基于P
- 企业级 Zabbix 监控
大不牛
linux云计算
一、监控介绍1.你用过哪些监控软件?2.zabbix和nagios的区别3.zabbix和nagios、cacti、ganglia有什么区别4.zabbix的好处5.zabbix的监控流程6.常见监控项使用SNMP协议获取主机CPU、内存、磁盘、网卡流量等数据. 用脚本将获取到的SNMP数据存入数据库中,然后再使用一种名为MRTG的软件根据获取的数据绘制图表来分析数据的变化。MRTG(
- 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