- Netty和Websocket的区别
moton2017
websocket网络协议网络
Netty和WebSocket没有直接可比性,因为它们在网络编程环境中具有不同的用途。Netty:Netty是一个高性能、事件驱动的网络框架,用于用Java构建网络应用程序。它提供了一组用于处理各种网络协议(例如TCP和UDP)的工具和抽象。Netty通常用于构建需要低延迟、高吞吐量通信的服务器和客户端。Websocket:WebSocket是一种通信协议,可通过单个长期连接提供全双工通信通道。它
- linux-LAMP搭建
Theshaye
linux系统服务器linuxapache
LAMP1.架构描述LAMP是一个C/S架构的平台:web客户端基于tcp/ip协议,发出http请求,服务端进行回应,用户的请求可能是动态的也可能是静态的。web服务器通过用户发送的url后缀判断动静态请求:静态请求web服务器直接处理静态请求web服务器转发给后台应用服务器去处理:(CGI)php运行的后台程序apache与php所处环境不同决定其通讯方式不同:安装在同一台服务器,就默认使用系
- 微服务网关springcloud gateway整合nacos实现动态路由
程序猿20
nacos微服务springcloudgatewaynacos微服务
1.添加依赖com.alibaba.cloudspring-cloud-starter-alibaba-nacos-config2.添加配置spring:cloud:nacos:config:#配置中心地址server-addr:127.0.0.1:8848#配置文件格式file-extension:ymlusername:password:3.定义读取配置和监听类packagecom.demo.
- 【Linux】---Samba服务
Jackson~Y
linux运维服务器
Samba服务1.SMB协议:SMB(ServerMessageBlock)协议是微软和英特尔联合制定的协议,主要作为微软网络的通信协议(可以将它看作局域网中的文件和打印共享协议)。SMB协议工作于会话层表示层和一小部分的应用层,它使用了NetBIOS的应用程序接口(API)。另外,它是一个开放性的协议,允许协议扩展(这使得它变得庞大而复杂)。为了让Windows和Linux计算机之间能相互访问,
- Mysql学习笔记(一):Mysql的架构
荆州克莱
面试题汇总与解析springcloudspringbootspring技术css3
一、mysql的组成部分下面是来自Mysql实战的图片,该图片很好的表示了mysql的组成mysql架构图我们主要是和server层打交道,该层由连接器,分析器,优化器执行器、(查询缓存)组成二、连接器的作用每个客户端的连接都会有一个线程(在mysql5.5之后,mysql支持线程池插件,使得少数线程可以服务大量的服务的连接)。首先,再进行三次握手之后,建立了网络连接,然校验用户名,原始主机信息和
- C++和Python实现SQL Server数据库导出数据到S3并导入Redshift数据仓库
weixin_30777913
c++python数据库数据仓库sqlserver
用C++实现高性能数据处理,Python实现操作Redshift导入数据文件。在VisualStudio2022中用C++和ODBCAPI导出SQLServer数据库中张表中的所有表的数据为CSV文件格式的数据流,用逗号作为分隔符,用双引号包裹每个数据,字符串类型的数据去掉前后的空格,数据中如果包含双引号,则将一个双引号替换为两个双引号,创建gzip压缩文件,输出数据流写入到gzip压缩文件包中的
- error: Metrics API not available
喝醉酒的小白
K8s云原生
目录解决方案11.**确认MetricsServer是否安装**2.**安装MetricsServer**方法1:通过`kubectlapply`安装方法2:通过Helm安装3.**检查MetricsServer的运行状态**镜像问题证书问题解决方法1.**允许InsecureSkipVerify**2.**验证更新**3.**查看日志**长期解决方法1.**更新Kubelet的证书**2.**使
- 万字长文 | 面向k8s编程,如何写一个Operator
新钛云服
kubernetespythonjava大数据docker
新钛云服已为您服务1489天概述随着我们对Kubernetes的逐步了解,可能就会发现Kubernetes中内置的对象定义,比如Deployment、StatefulSet、ConfigMap,可能已经不能满足我们的需求。我们希望在Kubernetes定义一些自己的对象,一是可以通过kube-apiserver提供统一的访问入口,二是可以像其他内置对象一样,通过kubectl命令管理这些自定义的对
- linux监听tcp端口数据包,linux tcpdump抓包
weixin_39615741
linux监听tcp端口数据包
8种机械键盘轴体对比本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?tcpdump是在命令行下运行的常用数据包分析器。它允许用户显示通过计算机所连接的网络传输或接收的TCP/IP和其他数据包。根据BSD许可分发,tcpdump是免费软件。tcpdump适用于大多数类Unix操作系统:Linux,Solaris,BSD,macOS,HP-UX,Android和AIX等。在这些系统中,tcpd
- Oracle角色
weixin_30409849
一、概述角色就是相关权限的命令集合,使用角色的主要目的就是为了简化权限的管理。假定有用户a,b,c为了让他们都拥有权限1、连接数据库2、在scott.emp表上select,insert,update如果采用直接授权操作,则需要进行12次授权。如果采用角色就可以简化首先将createsession,selectonscott.emp,insertonscott.emp,updateonscott.
- RocketMQ 系列文章
点滴~
rocketmq
目录使用RocketMQ的业务系统怎么处理消息的重试?使用RocketMQ的业务系统怎么保证消息处理的幂等性?使用RocketMQ的业务系统怎么处理消息的积压?RocketMQ怎么保证消息的可靠性?RocketMQ怎么保证消息的顺序性的?RocketMQ的Topic和消息队列MessageQueue信息,是怎么分布到Broker的?怎么负载均衡到Broker的?NameServer在RocketM
- SQL Server约束
昔舍
数据库c#笔记
###1.主键约束(PRIMARYKEY)-**作用**:用于唯一标识表中的每一行记录,确保表中不会存在两条主键值相同的记录,且主键列不允许为`NULL`。一个表只能有一个主键,但主键可以由多个列组成(复合主键)。-**示例**:--创建一个包含主键约束的表CREATETABLEStudents(StudentIDINTPRIMARYKEY,StudentNameNVARCHAR(50));```
- Linux网络抓包分析工具tcpdump
AKA|布鲁克林欧神仙
运维网络linux网络服务器
Linux中的网络抓包分析工具一,TcpdumpLinuxtcpdump命令用于倾倒网络传输数据。执行tcpdump指令可列出经过指定网络界面的数据包文件头,可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你摘取有用信息。由于它需要将网络接口设置为混杂模式,普通用户不能正常执行,但具备root权限的用户
- Nginx的常用模块
入眼皆含月
nginx运维
一、概述Nginx是一款高性能的开源Web服务器和反向代理服务器,它通过模块化架构提供了丰富的功能。二、模块介绍1、autoindex模块1.1、位置:http、server、location1.2、开启autoindexserver{listen80;server_name_;location/{root/code;indexindex.html;autoindexon;#开启列表功能}}1.3
- OceanBase 重启方法
Livedba
oceanbasedba数据库
OceanBase服务使用obd重启查看OB服务名admin@server070oceanbase-ce]$obdclusterlist+--------------------------------------------------------+|ClusterList|+------+-------------------------------+-----------------+|Na
- 【PCIe 总线及设备入门学习专栏 6.2 -- PCIe VDM (Vendor Defined Messages)】
主公讲 ARM
#【PCIeBus专栏】学习网络服务器
文章目录OverviewPCIeVDM(VendorDefinedMessages)概述PCIeVDMHeader的各个字段及作用VDM的工作方式例子:一个简化的VDM示例注意事项Overview本文将详细介绍PCIeVDM及PCIeVDMHeader各个域的作用。PCIeVDM(VendorDefinedMessages)概述在PCIe协议中,VendorDefinedMessages(VDMs
- 开源的数据库监控和管理工具—PMM
蚂蚁在飞-
数据库人工智能运维后端
PMM(PerconaMonitoringandManagement)是一个开源的数据库监控和管理工具,主要用于监控MySQL、MariaDB、MongoDB和PostgreSQL等数据库的性能和健康状况。PMM提供了一套可视化的界面,帮助数据库管理员和开发人员对数据库进行深度监控、性能优化和故障排查。PMM由两个主要组件组成:1.PMMServerPMMServer是PMM的核心组件,负责收集和
- 调整oracle服务器时间,那些年Oracle数据库主机时间调整的风花雪月
环球旅行船长
调整oracle服务器时间
最近工作中又遇到因时间问题导致的故障,这让本新四有好青年想起了N年前的一个案例,今天整理分享一下。当时是应用反应主机时间与正确的时间相差有8分多钟,影响了正常的业务,登录发现主机的NTP服务是开启的,查看NTP同步状态:可以看到offset是0.051s,基本没有延迟,那么问题就出在Ntpserver时间存在不准确的可能,通过主机侧查看,果然server端存在延迟的情况。为尽快恢复业务,通过以下方
- .NET MAUI 手搓 UDP/TCP 通信
云端狂人
.netudptcp/ip
在.NETMAUI中,UDP和TCP是网络通信协议,与MAUI框架本身的关系在于.NETMAUI可以利用.NET的网络功能来实现跨平台的网络通信。.NET提供的System.Net.Sockets命名空间来处理。该命名空间提供了创建和管理套接字(Sockets)来进行网络通信的相关类和方法。在.NETMAUI中,这些类同样适用于跨平台应用开发。具体来说:.NETMAUI是一个跨平台框架,用于构建A
- 使用飞书群机器人监控服务器GPU使用率
sunrise_ccx
服务器飞书
目标:如果服务器GPU空置,可以及时推送消息到飞书群。其他类似的监控目标也可以修改代码实现。步骤:(1)首先在群聊设置加入机器人,复制webhook_url(2)在服务器后台运行如下代码。注意替换webhook_url"""nohuppythonmonitor_gpu.pymy_server>monitor_gpu.log2>&1&"""importsysimportsubprocessimpor
- Linux网络编程——TCP多客户端连接服务器
「已注销」
linuxc语言tcpip
1、Select函数原型#includeintselect(intnfds,fd_set*readfds,fd_set*writefds,fd_set*exceptfds,structtimeval*timeout);函数参数:intnfds:监听的文件描述符中最大文件描述符加1,告诉内核需要检测文件描述符的个数;readfds:监听有读数据到达文件描述符集合,传入传出参数;writefds:监听
- Linux(UOS系统:DHCP)
Jackson~Y
网络系统管理服务器运维linux
赛题拓扑:题目:DHCP为OutsideCli客户端网络分配地址,地址池范围:81.6.63.110-81.6.63.190/24。域名解析服务器:按照实际需求配置DNS服务器地址选项。网关:按照实际需求配置网关地址选项。root@ispsrv:~#aptinstallisc-dhcp-server-yroot@ispsrv:~#vim/etc/default/isc-dhcp-serverINT
- 【微服务与分布式实践】探索 Eureka
Forest 森林
微服务与分布式实践eureka
服务注册中心心跳检测机制:剔除失效服务自我保护机制统计心跳失败的比例在15分钟之内是否低于85%,如果出现低于的情况,EurekaServer会将当前的实例注册信息保护起来,让这些实例不会过期。当节点在短时间内丢失过多的心跳时,那么这个节点就会进入自我保护模式,以防止因网络问题导致的服务注册失败高可用:注册中心集群模式、互相注册、服务同步AP(保证可用性,放弃数据一致性)服务注册服务心跳续约、定期
- Linux——网络(tcp)
爱吃喵的鲤鱼
linux运维服务器
文章目录目录文章目录前言一、TCP逻辑1.面向连接三次握手(建立连接)四次挥手(关闭连接)2.可靠性3.流量控制4.拥塞控制5.基于字节流6.全双工通信7.状态机8.TCP头部结构9.TCP的应用场景二、编写tcp代码函数1.Socket创建与配置socket()setsockopt()2.绑定与监听bind()listen()3.连接与接受连接connect()accept()4.数据发送与接收
- 解决Windows Server环境下PPTX转PDF时WebP格式图片缺失
重楼七叶一枝花_1200
Java代码小抄javamicrosoft
如果喜欢,欢迎关注WX:攻城狮重楼在WindowsServer环境下,将PPTX文件另存为PDF时,遇到的一个问题是PDF中的图片部分缺失,且这些缺失的图片实际为WebP格式。本文将介绍这一问题的原因及两种解决方案。问题原因在WindowsServer环境下,将PPTX文件另存为PDF时,若PDF中的图片部分缺失,且这些缺失的图片为WebP格式,通常是由于Windows的图片解码器不支持WebP格
- SQLAlchemy
xnuscd
人工智能
SQLAlchemy系统性开发文档(扩展版)目录简介核心概念EngineSessionModels(ORM映射)SQLAlchemy的工作流程使用SQLAlchemy进行查询基础查询过滤和条件排序和分页连接查询结合FastAPI和SQLAlchemy集成SQLAlchemy与FastAPI依赖注入使用SQLModel实践示例定义模型创建数据库会话执行查询详细分析get_chatmessage函数最
- Nginx(二):主配置文件 nginx.conf 6个指令块
shyuu_
nginx网络运维服务器运维开发云计算linux
文章目录主配置文件nginx.conf详解1.全局块2.events块(I/O事件块)3.HTTP块4.Server块5.Location块6.Upstream块1.全局块2.events块(I/O事件块)3.HTTP块4.Server块5.Location块6.Upstream块主配置文件nginx.conf详解文件位置:/usr/local/nginx/conf/nginx.conf概述:全局
- LNMP 和 LAMP 对比 (仅供参考)
小小先生好无情
windows运维
Nginx性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少。Apache是LAMP架构最核心的WebServer,开源、稳定、模块丰富是Apache的优势。但Apache的缺点是有些臃肿,内存和CPU开销大,性能上有损耗,不如一些轻量级的Web服务器至于安装哪个好呢?要省内存的话LNMP是最好的选择,但似乎不太稳定,有时会比较常50静态的多用LNMP还是不错的动态内容多的话,LA
- 机房局域网聊天服务器(Python)1.0
InF-POP
python网络
importthreadingimporttimeSERVER_HOST='10.177.32.60'#这里以这个ip为例,就是以10.177.32.60的这台电脑作为服务器SERVER_PORT=19198#样例端口号:19198ADMIN_IP='10.177.32.60'#存储连接的客户端clients=[]#用于存储客户端的最后消息时间,防止刷屏last_message_time={}#处
- 机房局域网聊天客户端1.0
InF-POP
python网络
importsocketimportthreading#客户端的地址和端口SERVER_HOST='10.177.32.18'SERVER_PORT=19198#创建一个socket连接到服务器client_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)client_socket.connect((SERVER_HOST,SERVER
- 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