- 浏览: 1623679 次
- 性别:
- 来自: 上海
-
最新评论
-
wahahachuang5:
web实时推送技术使用越来越广泛,但是自己开发又太麻烦了,我觉 ...
使用 HTML5 WebSocket 构建实时 Web 应用 -
秦时明月黑:
Jetty 服务器架构分析 -
chenghaitao111111:
楼主什么时候把gecko源码分析一下呢,期待
MetaQ技术内幕——源码分析(转) -
qqggcc:
为什么还要写代码啊,如果能做到不写代码就把功能实现就好了
快速构建--Spring-Boot (quote) -
yongdi2:
好厉害!求打包代码
Hadoop日志文件分析系统
文章列表
Java日志系统确实比较丰富,常用的有log4j、JUL、logback等等,同时伴随着日志系统的发展,出现了日志框架commons-logging和slf4j。
简短地描述下日志发展,最先出现的是apache开源社区的log4j,这个日志确实是应用最广泛的日志工具,成为了java日志的事实上的标准。然而,当时Sun公司在jdk1.4中增加了JUL日志实现,企图对抗log4j,但是却造成了混乱,这个也是被人诟病的一点。当然也有其他日志工具的出现,这样必然造成开发者的混乱,因为这些日志系统互相没有关联,替换和统一也就变成了比较棘手的一件事。想象下你的应用使用log4j,然后使用了一个其他团队的 ...
yii具有很多当今web2.0开发所需要的特性。下边是一个简短列表。
MVC设计模式 :yii在WEB设计中采用经过验证的技术,可以较好的把显示与逻辑分离。
DAO,活动记录:yii充许在对象方面建立数据库模型,保存长而重复语句。
整合jquery:最流行的javascript框架之一,苦于jquery可以定屈非常高效并且多功能的javascript接口
表单输入验证:yii可以很简单啊安全的采集表单输入。具有一整套验证方法确保输入数据的正确,还有辅助的方法与组件,在验证失败时,提示错误信息。
WEB2.0组件:jquery提供的一套web2.0组件,可以自动完成输入域,树形视 ...
Linus为Linux Kernel Project发起的版本控制项目。
千万人同时访问的网站,一般是有很多个数据库同时工作,说明白一点就是数据库集群和并发控制,这样的网站实时性也是相对的。这些网站都有一些共同的特点:数据量大,在线人数多,并发请求多,pageview高,响应速度快。 ...
这几天一直在关注和学习一些大型网站的架构,希望有一天自己也能设计一个高并发、高容错的系统并能应用在实践上。今天在网上找架构相关的资料时,看到一个被和谐的视频网站YouTube的架构分析,看了以后觉得自己又向架构走近了一步,于是赶快拿出来与大家一起分享。
YouTube发展迅速,每天超过1亿的视频点击量,但只有很少人在维护站点和确保伸缩性。这点和PlentyOfFish类似,少数人维护庞大系统。是什么原因呢?放心绝对不是靠人品,也不是靠寂寞,下面就来看看YouTube的整体技术架构吧。
平台
说起MySpace,可能很多人对他印象很深,MySpace.com成立于2003年9月,是目前全球最大的社交网站。它为全球用户提供了一个集交友、个人信息分享、即时通讯等多种功能于一体的互动平台,同时他也是.NET应用最出色的网站之一。下 ...
架构学习:
MySpace的五个里程碑
YouTube的架构 今天我们来谈谈一个网站一般是如何一步步来构建起系统架构的,虽然我们希望网站一开始就能有一个很好的架构,但事物是在发展中不断前进的,网站架构也是随着业务的扩 ...
之前我在一篇blog中有提到一个例子,我称之为业务事务,其实可能定义有点偏颇,不过表达的意思很明确,即使用业务的方法来保证最终数据一致性,尽量避免使用分布式事务。这几天我看到一篇文章,恍然大悟,才明白原来这 ...
1. PlentyOfFish 网站架构学习http://www.dbanotes.net/arch/plentyoffish_arch.html采取 Windows 技术路线的 Web 2.0 站点并不多,除了 MySpace ,另外就是这个 PlentyOfFish。这个站点提供 “Online Dating” 服务。一个令人津津乐道的、惊人的数据是这个只有一个人(创建人Markus Frind)的站点价值 10 亿,估计要让很多人眼热,更何况 Markus Frind 每天只用两个小时打理网站–可操作性很强嘛。2. 从LiveJournal后台发展看 大型网站系统架构以及性能优化方法htt ...
问题表象
问题描述
1.最近有项目组的童鞋反馈,web页面频繁出现假死的状态。
2.web页面的假死出现是概率事件,且无法确定假死的引发原因。
3.是在一定的操作之后出现的,但是无法确定究竟是哪些操作引发这些操作。
问题分析
初步分析
BTrace 是一个非常不错的java诊断工具, 最近试着用了一下, 文档比较少, 主要是看例子吧. BTrace 中的B表示bytecode, 表明它是在字节码层面上对代码进行trace 用来在运行中的java类中注入trace»
BTrace 是一款利用hotSpot虚拟机可以动态替换class的特点而完成的,可以对online的程序动态的改变类的行为(一般为加些打印日志),进而进行线上调试的一个工具。
主要步骤如下(本次测试只针对BTrace和测试的程序在同一台机器上,remote的还待实验):
1、下载地址:http://kenai.com/projects/btrace/downloads/download/releases/
2、解压到linux相应的目录下。
3、编写普通运行的程序如下:
要实现防盗链,我们就必须先理解盗链的实现原理,提到防盗链的实现原理就不得不从HTTP协议说起,在HTTP协议中,有一个表头字段叫referer,采用URL的格式来表示从哪儿链接到当前的网页或文件。换句话说,通过referer,网站可 ...
下面的内容包括:1 Nginx Referer 模块2 valid_referers 指令3 测试Nginx 防盗链1 Nginx Referer模块当一个请求头的Referer字段中包含一些非正确的字段,这个模块可以禁止这个请求访问站点。这个头可以随意的伪造,因此,使用这个模块并不能100%的阻止这些请求,绝大多数拒绝的请求来自一些典型的浏览器,可以认为这些典型的浏览器并不能提供一个”Referer”头,甚至是那些正确的请求。2 valid_referers 指令语法:
[php]<?php//error_reporting(E_ALL);error_reporting(E_ALL || ~E_NOTICE);define('DEDEINC', ereg_replace("[/\\]{1,}", '/', dirname(__FILE__) ) );//获得include的目录define('DEDEROOT', ereg_replace("[/\\]{1,}", '/', substr(DEDEINC,0,-8) ) );//获得更目录define('DEDEDATA', DEDEROOT.'/data');d ...