seaboat的专栏——a free boat on the sea.

思想自由,技术自由

如何设计一个web容器

开发一个web容器涉及很多不同方面不同层面的技术,例如通信层的知识,程序语言层面的知识等等,且一个可用的web容器是一个比较庞大的系统,要说清楚需要很长的篇幅,本文旨在介绍如何设计一个web容器,只探讨实现的思路,并不涉及过多的具体实现。把它分解划分成若干模块和组件,每个组件模块负责不同的功能,下...

2016-02-14 10:20:45

阅读数:13439

评论数:12

HTTPS杂记

交互过程 主要缺点 网络耗时(比HTTP多了交互次数)。 加解密耗时。 比HTTP慢几百毫秒以上,页面加载时间增加了50%,增加10%到20%的耗电 耗时分析 可能浏览器需要由http跳转到https的耗时,用户使用http需要服务端返回302强制跳转https。 接着经过某...

2018-02-07 09:08:05

阅读数:535

评论数:0

Tomcat如何检测内存泄漏

一般情况下,如果我们重启web应用是通过重启tomcat的话,则不存在内存泄漏问题。但如果不重启tomcat而对web应用进行重加载则可能会导致内存泄漏,因为重加载后有可能会导致原来的某些内存无法让GC回收,例如web应用使用了JDBC,驱动会进行注册,当web应用停止时没有反注册就会导致内存泄漏...

2016-06-20 09:58:15

阅读数:9570

评论数:10

Web资源认证原理

Web服务器与浏览器之间的认证流程没有规定的步骤,根据不同的认证模式及鉴权方式可能会有不同的执行步骤。下图用一个最简单的流程了解整个认证过程是如何工作的,首先浏览器向服务器发起请求,然后服务器向浏览器质问用户名及密码,浏览器带上用户名及密码重新请求,服务器根据用户名获取相应角色并判断是否有权限访问...

2016-04-26 09:16:36

阅读数:3536

评论数:0

tomcat的realm域

Realm域,其实可以看成是一个包含了用户及密码的数据库,而且每个用户还会包含了若干角色。也就是包含了用户名、密码、角色三个列的数据记录集合,如下图,最下面椭圆内的包含的整块即可以看成realm域。它的出现是为了方便统一地提供一种X(用户,密码,权限)与Y(web资源)的映射关系。     我们有...

2016-04-26 09:13:12

阅读数:2105

评论数:0

Tomcat如何实现资源安全管理

在了解了认证模式及Realm域后,我们看看Tomcat是如何设计实现资源安全管理的。在认证模式上,必须要支持多种认证模式,包括Basic模式、Digest模式、Form模式、Spnego模式、SSL模式及NonLogin模式。如何实现这些认证模式比较优雅,或者说比较清晰?看下图,在tomcat中一...

2016-04-26 09:10:04

阅读数:1907

评论数:0

如何让你的web具备权限认证

大多数Web系统都有权限需求,前面已经了解了它的整个认证过程的原理,这节将讲述如何在Tomcat中配置web资源的权限。先以Tomcat默认的认证模式Basic和默认的域UserDatabaseRealm为例,看看如何完成整个配置的。首先,配置server.xml文件,配置一个名为UserData...

2016-04-26 09:05:05

阅读数:4961

评论数:0

JSP编译成Servlet(一)语法树的生成——语法解析

一般来说,语句按一定规则进行推导后会形成一个语法树,这种树状结构有利于对语句结构层次的描述。同样Jasper对JSP语法解析后也会生成一棵树,这棵树各个节点包含了不同的信息,但对于JSP来说解析后的语法树比较简单,只有一个父节点和n个子节点。例如node1是表示形如字符串 -->的注释节点,...

2016-03-18 16:46:28

阅读数:3553

评论数:1

从单机到集群会话的管理之单机模式

单机时代对会话的管理主要有两种方式——非持久化方式和持久化方式。非持久化方式指会话直接由tomcat管理并保存在机器内存上,它是最简单的方式,如下图,所有的会话集合都保存在内存上,客户端访问时根据自己的会话id直接在服务器内存中寻找,查找简单且速度快,但同时也存在两个缺点:一是容量比较小,当数据量...

2015-10-25 12:30:22

阅读数:2315

评论数:0

web中间件切换(was切tomcat)

一、数据源迁移: ①数据源配置在web容器还是在项目本身? 根据开发与生产分离原则选择配置到web容器,以免开发泄露数据库密码。 ②数据库密码加密 原先was的数据源直接在console控制,密码是密文,较安全。改为tomcat正常的话是以明文配置,需改为密文。方案有两个:一是继承连接池工厂类B...

2015-03-10 17:31:28

阅读数:3861

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭