51CTO博客开发
网站的web server与缓存 1.1 Web server Webserver 用来解析HTTP协议。当web 服务器接收到一个HTTP请求时,会返回一个HTTP响应,例如送回一个HTML页面。为了处理一个请求,web服务器可以响应一个静态页面或者图片。进行页面跳转,或者把动态响应的产生委托给一些其它的程序完成,比如CGI,JSP,servlets,ASP,PHP脚本。
标签:负载均衡 服务器 健康检查 算法 原理 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://virtualadc.blog.51cto.com/3027116/615836 负载均衡设备作为纵跨网络2-7层协议的设备,往往放置在网络设备和应用设备的连接处,对工程师在网络和应用基本知识方面的要求远高于其他
4种检测是否支持HTML5的方法,你知道几个? 1,检查特定的属性是否存在于全局的对象里面,比如说window或navigator. 比如geolocation,它是HTML5新加支持的新特性;它是由HTML5工作组以外的Geolocation工作组制定的。要检查浏览器是否支持它可以用一下方法。 function supports_geolocation() { retu
1.避免重复原则(DRY - Don’t repeat yourself) 编程的最基本原则是避免重复。在程序代码中总会有很多结构体,如循环、函数、类等等。一旦你重复某个语句或概念,就会很容易形成一个抽象体。 2.抽象原则(Abstraction Principle ) 与DRY原则相关。要记住,程序代码中每一个重要的功能,只能出现在源代码的一个位置。 3.简单原则(Keep
下面开始讲一下主菜ActionProxy了.在这之前最好先去了解一下动态Proxy的基本知识. ActionProxy是Action的一个代理类,也就是说Action的调用是通过ActionProxy实现的,其实就是调用了ActionProxy.execute()方法,而该方法又调用了ActionInvocation.invoke()方法。归根到底,最后调用的是DefaultActionInvo
Dispatcher已经在之前讲过,这就好办了。FilterDispatcher是Struts2的核心控制器,首先看一下init()方法。 public void init(FilterConfig filterConfig) throws ServletException {
接下来第三步:init_LegacyStrutsProperties() 调用的是调用的是LegacyPropertiesConfigurationProvider 通过比较前面DefaultPropertiesProvider与调用的是LegacyPropertiesConfigurationProvider. 发现DefaultPropertiesProvider继承自后者,但重写了re
首先强调一下struts2的线程程安全,在Struts2中大量采用ThreadLocal线程局部变量的方法来保证线程的安全,像Dispatcher等都是通过ThreadLocal来保存变量值,使得每个线程都有自己独立的实例变量,互不相干. 接下来就从Dispatcher开始看起,先看其构造函数: //创建Dispatcher,此类
1. ActionContext ActionContext是被存放在当前线程中的,获取ActionContext也是从ThreadLocal中获取的。所以在执行拦截器、 action和result的过程中,由于他们都是在一个线程中按照顺序执行的,所以可以可以在任意时候在ThreadLocal中获取 ActionContext。 ActionContext包括了很多信息,比如Sessi
1. Struts2架构图 请求首先通过Filter chain,Filter主要包括ActionContextCleanUp,它主要清理当前线程的ActionContext和Dispatcher;FilterDispatcher主要通过AcionMapper来决定需要调用哪个Action。 &n
By Ethan on 2011 年 05 月 12 日 | 1 Response 今天我们来谈谈一个网站一般是如何一步步来构建起系统架构的,虽然我们希望网站一开始就能有一个很好的架构,但马克思告诉我们事物是在发展中不断前进的,网站架构也是随着业务的扩大、用户的需求不断完善的,下面是一个网站架构逐步发展的基本过程,读完后,请思考,你现在在哪个阶段。 架构演变第一步:物理分离WebServe
By Ethan on 2011 年 05 月 12 日 | Leave a response 这里的大型网站架构只包括高互动性高交互性的数据型大型网站,基于大家众所周知的原因,我们就不谈新闻类和一些依靠HTML静态化就可以实现的架构了,我们以高负载高数据交换高数据流动性的网站为例,比如海内,开心网等类似的web2.0系列架构。我们这里不讨论是PHP还是JSP或者.NET环境,我们从架构的方
By Ethan on 2011 年 05 月 12 日 | Leave a response 淘宝网,是一个在线商品数量突破一亿,日均成交额超过两亿元人民币,注册用户接近八千万的大型电子商务网站,是亚洲最大的购物网站。那么对于淘宝网这样大规模的一个网站,我猜想大家一定会非常关心整个网站都采用了什么样的技术、产品和架构,也会很想了解在淘宝网中是否采用了开源的软件或者是完全采用的商业软件。那么
By Ethan on 2011 年 06 月 03 日 | Leave a response 1. 关于hibernate缓存的问题: 1.1.1. 基本的缓存原理 Hibernate缓存分为二级,第一级存放于session中称为一级缓存,默认带有且不能卸载。 第二级是由
1、简介 最近一阵子笔者在进行完成同样功能的两套异构数据库系统的同步工作,有一些心得体会分享给大家,欢迎技术同仁拍砖。 该项目有一个运行若干年(5~10年)的旧系统,采用的是SQL Server数据库,因为旧平台功能较弱,所以所有对数据库的访问操作都通过存储过程进行操作。 新系统采用笔者公司的平台,应客户需求采用Oracle数据库,完成的功能与旧系统基本相同,但表设计与原有系统
6月27日,Web设计师Manu Cornet在自己的博客上,画了一组美国科技公司的组织结构图。在他笔下,亚马逊等级森严且有序;谷歌结构清晰,产品和部门之间却相互交错且混 乱;Facebook架构分散,就像一张散开的网络;微软内部各自占山为王,军阀作风深入骨髓;苹果一个人说了算,而那个人路人皆知;庞大的甲骨文,臃肿 的法务部显然要比工程部门更加重要。 真是一组有趣的图,它很快风靡
网站上工具提示都是小东西,但在网站设计上能发挥很大的作用。如果网站上能加入一些漂亮的工具提示,那么它就可以提高人们对你网站的访问印象,还可以提高网站的用 户体验。 在这里许昌SEO向大家介绍30款漂亮 的jQuery提示气泡插件。 1、Dynamic toolip(动态工具提示) 非常酷的工具提示! 这是很有见地的,因为它由冷转场特效,也有透明度和阴影效果。 2
转自http://happyenjoylife.iteye.com/blog/1042538 单库单表 单库单表是最常见的数据库设计,例如,有一张用户(user)表放在数据库db中,所有的用户都可以在db库中的user表中查到。 单库多表 随着用户数量的增加,user表的数据量会越来越大,当数据量达到一定程度的时候对user表的查询会渐渐的变慢,从而影响整个DB的性能。
大型网站设计注意事项 1、HTML静态化 大家都知道,效率最高、消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法。但是对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现,于是出现了我们常见的信息发布系统CMS,像我们常访问的各个门户站点的新闻频道,甚至他们的其他频道
规范目的 为提高团队协作效率, 便于后台人员添加功能及前端后期优化维护, 输出高质量的文档, 特制订此文档. 本规范文档一经确认, 前端开发人员必须按本文档规范进行前台页面开发. 本文档如有不对或者不合适的地方请及时提出, 经讨论决定后方可更改. 基本准则 符合web标准, 语义化ht
HTML5添加非常多的新语法特性包括:<video>, <audio>, <canvas>等元素以及以及与SVG内容整合。免费网站模板总是设计者和开发者的高需求。以下是为大家推荐2011年初至今的一些不错且免费的HTML5的模板。 1. Free Website Template Slider Typography 2. Free Com
对JS的打印方法总结一下,方便日后查阅。 一.用JS自带函数打印 直接调用 Java代码 复制代码 1. <a href="javascript:window.print();">打印</a> <a href="javascript:window.print();"&
作者:Chris Spooner 翻译:Terry li - GBin1.com 英文: jQuery Plugins for Styling Checkbox & Radio Buttons web开发中所有的输入控件中复选框和单选框的样式是最难去设计的,因为不同的浏览器及其操作系统对于样式的渲染展现是不一样的。但是在jQuery的帮助下我们可以整体的改变他们的样式。这里我们将介绍
作者:Jane Bernardo 翻译:Terry li - GBin1.com 原文: 40 Useful jQuery Techniques And Tutorials For Great User Interface jQuery在web开发中已经吸引了大量开发人员。使用jQuery能构建强大的用户交互界面设计。 在本篇文章中,GBin1将与广大jQuery开发者分享40个jQuery
在最近这此年,javascript已经证明了它必须要认真对待,因为它真正提升了互联网的使用,而不仅仅提供一些简单的效果如文字闪烁、滑动效果等。我爱互联网为javascript开发者编辑了10个最惊人的工具和script。 MicroJS 想快速获得一段javascript代码吗?MicorJs是一个全新的网站,其目的是为最常用的任务提供JavaScript代码片段,如:Ajax,JSON,
工作这么多年,以前也接触过多次设计模式,但终归是用到后才去分析,没有形成体系。市面上设计模式的书籍质量也参差不齐,阎宏那本《java与模式》不错,但有故弄玄虚之感。最近看到《研磨设计模式》一书,开始是从书评得到此书不错,后来看到作者的博客,初看了几个模式的讲解,受益非浅。很多模式的原理讲得通透,应用案例也有极强的针对性。个人认为是学习设计模式非常好的教程。所以
Maven:划分模块 From : http://juvenshun.javaeye.com/blog/305865 所有用Maven管理的真实的项目都应该是分模块的,每个模块都对应着一个pom.xml。它们之间通过继承和聚合(也称作多模块,multi- module)相互关联。那么,为什么要这么做呢?我们明明在开发一个项目,划分模块后,导入Ec
书接上文,今天讲讲struts2+spring搞定增、删、改、查,持久层使用的是jdbcTemplate。 1.配置web.xml 引入spring和struts2功能,代码如下: <!-- 配置加载spring配置文件的监听器 --> <listener> <
1. 开发功能概述 分别使用spring mvc和struts2实现单表的增,删,改、查,并实现验证功能。 2. 数据库设计 使用mysql数据库,建立test数据库,建立customer表。表结构如下图所示: 3. spring mvc实现 (1)spring.xm
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号