15.4 多客户
到目前为止,本章一直介绍的是,如果用套接字来实现本地的和跨网络的客户/服务器系统.一旦连接建立,套接字连接的行为就类似于打开的底层文件描述符,而且在很多方面类似于双向管道.
现在考虑有多个客户同时连接一个服务器的情况.服务器程序在接受来自客户的一个新连接时,会创建出一个新的套接字,而原先的监听套接字将被保留以继续监听以后的连接.如果服务器不能立刻接受后来的连接,它们将被...
分类:
系统相关 时间:
2015-07-26 00:32:26
阅读次数:
220
负载生成器是一些生成用于测试的流量的程序。它们可以向你展示服务器在高负载的情况下的性能,以及让你能够找出服务器可能存在的问题。为了得到更加客观和准确的数值,应该从远程访问、局域网访问和本地等多个方面进行全方位的测试。一般用127.0.0.1进行本机测试
Apache Benchmark
ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL进行访问,可用来测试...
分类:
其他好文 时间:
2015-07-23 23:45:58
阅读次数:
310
TCP状态转移要点 TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不会被释放。网络服务器程序要同时管理大量连接,所以很有必要保证无用连接完全断开,否则大量僵死的连接会浪费许多服务器资源。在众多TCP状态中...
分类:
其他好文 时间:
2015-07-23 19:37:59
阅读次数:
137
既然说到了nio,就得谈以下几个问题
为什么会出现新io,"旧io"有什么问题吗?
ok,一步一步来,先给大家看几个例子:
1单线程的服务器程序
import java.net.*;
import java.io.*;
public class SocketServiceTest
{
public static void main(String[] args) throws Ex...
分类:
其他好文 时间:
2015-07-22 22:52:00
阅读次数:
114
服务器程序经常要访问数据库,并且服务器程序是长时间保持运行的,mysql有一个特点,当连接上数据库后不做任何操作,默认8小时候会自动关闭休眠的连接!一般情况下很难预料什么时候程序会执行数据库操作,如果连接被mysql断开了,会出现意想不到的问题,这在服务器程序中是一种灾难!保持服务器程序与Mysql...
分类:
数据库 时间:
2015-07-21 21:56:57
阅读次数:
132
Socket,又称为套接字,Socket是计算机网络通信的基本的技术之一。如今大多数基于网络的软件,如浏览器,即时通讯工具甚至是P2P下载都是基于Socket实现的。本文会介绍一下基于TCP/IP的Socket编程,并且如何写一个客户端/服务器程序。 餐前甜点 Unix的输入输出(IO)系统遵循O....
分类:
编程语言 时间:
2015-07-19 01:23:25
阅读次数:
174
最近就服务器程序IO效率这一块了解一下设计模式中的Reacotr模式和proactor模式,感觉跟观察者模式有些类似的地方,网上也看了一些其他人对三者之间区别的理解,都讲得很仔细,在此根据自己的理解做一点简单的记录和总结,如果理解不对的地方,以后再慢慢深入和更新。观察者模式: 也可以称为为 发布-....
分类:
其他好文 时间:
2015-07-14 22:20:40
阅读次数:
315
姓名张珺日期2015/07/13主要工作及心得今天主要和任笑萱一起完成了对客户端中提供者的调试以及数据库的修改工作。通过今天的调试工作,我对整个项目有了更深入的认识,对于用java编写客户端服务器程序的流程有了更进一步的了解。遇到的问题在今天的工作中,我们发现了之前构建数据库时未考虑到的一些问题,也...
分类:
其他好文 时间:
2015-07-13 23:54:51
阅读次数:
153
一、开始因为是新手入门,选用集成环境会减少很多操作和不必要的麻烦集成环境有xampp,wamp等本人用的第一次使用是用的XAMPP集成环境,所以就附上XAMPP的官网二、下载和解压我下载的是.run文件,直接运行就可以了,压缩包解压的/opt目录下附上常用解压的命令的使用方式[转].tar 解包:t...
分类:
其他好文 时间:
2015-07-12 18:49:19
阅读次数:
104