高分送高人!问关于最大访问人数的问题

park1974 2003-04-01 08:27:09
我想在网页中加上一个能对访问人数进行控制的东东,却不知道怎么弄,有人可以告诉我么?大概意思就是:我想把访问我数据库的人数控制在100人之内,超过的人显示“访问人数过多,请稍后在试”等字样的网页,这样可以防止服务器人数过多而掉线。我看到很多论坛或是聊天室都有这种功能,当在线人数超过一定数目时,则有一个网页弹出告诉现在人数已达上限,请稍后再登陆等字样。我用的是SQL SERVER2000。不知道我讲明白了没有。
...全文
13 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
kreven 2003-04-02
session

/**
* 编写以下SessionCounter.java
* 并编译为SessiionCounter.class
* 然后放到你的网站的classpath的
* SessionCount(自己建立此目录)下面
*/
package SessionCount;
import javax.servlet.*;
import javax.servlet.http.*;
public class SessionCounter implements HttpSessionListener {
private static int activeSessions = 0;
public void sessionCreated(HttpSessionEvent se) {
activeSessions++;
}
public void sessionDestroyed(HttpSessionEvent se) {
if(activeSessions > 0)
activeSessions--;
}
public static int getActiveSessions() {
return activeSessions;
}
}
接着建立online.jsp文件用于显示在线人数
<%@ page import="SessionCount.SessionCounter" %>
在线:<%= SessionCounter.getActiveSessions() %>
然后需要在你的网站的WEB-INF中建立web.xml
文件内容如下:
<!-- Web.xml -->
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2.3.dtd">
<web-app>
<!-- Listeners -->
<listener>
<listener-class>
SessionCount.SessionCounter
</listener-class>
</listener>
</web-app>
然后重新启动你的应用服务器,访问online.jsp检查是否显示正确
回复
hanty 2003-04-02
利用SESSION的sessionID可以进行人数判断
回复
xhongyang 2003-04-02
如果用连接池的话设置maxconnection属性就可以了。
回复
IT老兵 2003-04-02
database connection pool
回复
park1974 2003-04-02
数据库本身怎么控制呢,我不太知道这个功能,请明示!
回复
mercury1231 2003-04-01
数据库本身不也可以进行控制的么?
回复
zxhong 2003-04-01
通过统计再线人数来达到目的
http://expert.csdn.net/Expert/topic/1342/1342697.xml?temp=2.181643E-02
回复
zhwquan 2003-04-01
你可以看一下有多少个session,用session控制
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2003-04-01 08:27
社区公告
暂无公告