php语言 百文网手机站

PHP开发CS结构的技巧

时间:2022-11-09 12:55:29 php语言 我要投稿

PHP开发CS结构的技巧

  PHP是一门高效的网络编程语言,由于它具有编写灵活、运行快速等优点,迅速成为Web程序员的首选语言。以下是小编为大家搜索整理的PHP开发CS结构的技巧,希望能给大家带来帮助!更多经常内容请及时关注我们应届毕业生考试网!

  PHP开发CS结构的`技巧 1

  核心提示:用PHP开发C/S结构。

  服务器

  // Server

  // 设置错误处理

  error_reporting (E_ALL);

  // 设置运行时间

  set_time_limit (0);

  // 起用缓冲

  ob_implicit_flush ();

  $ip = "127.0.0.1"; // IP地址

  $port = 1000; // 端口号

  $socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP); // 创建一个SOCKET

  if ($socket)

  echo "socket_create() successed! ";

  else

  echo "socket_create() failed:".socket_strerror ($socket)." ";

  $bind = socket_bind ($socket, $ip, $port); // 绑定一个SOCKET

  if ($bind)

  echo "socket_bind() successed! ";

  else

  echo "socket_bind() failed:".socket_strerror ($bind)." ";

  $listen = socket_listen ($socket); // 间听SOCKET

  if ($listen)

  echo "socket_listen() successed! ";

  else

  echo "socket_listen() failed:".socket_strerror ($listen)." ";

  while (true)

  {

  $msg = socket_accept ($socket); // 接受一个SOCKET

  if (!$msg)

  {

  echo "socket_accept() failed:".socket_strerror ($msg)." ";

  break;

  }

  $welcome = "Welcome to PHP Server! ";

  socket_write ($msg, $welcome, strlen ($welcome));

  while (true)

  {

  $command = strtoupper (trim (socket_read ($msg, 1024)));

  if (!$command)

  break;

  switch ($command)

  {

  case "HELLO":

  $writer = "Hello Everybody!";

  break;

  case "QUIT":

  $writer = "Bye-Bye";

  break;

  case "HELP":

  $writer = "HELLO QUIT HELP";

  break;

  default:

  $writer = "Error Command!";

  }

  socket_write ($msg, $writer, strlen ($writer));

  if ($command == "QUIT")

  break;

  }

  socket_close ($msg);

  }

  socket_close ($socket); // 关闭SOCKET

  客户端

  // Client

  // 设置错误处理

  error_reporting (E_ALL);

  // 设置处理时间

  set_time_limit (0);

  $ip = "127.0.0.1"; // IP 地址

  $port = 1000; // 端口号

  $socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP); // 创建一个SOCKET

  if ($socket)

  echo "socket_create() successed! ";

  else

  echo "socket_create() failed:".socket_strerror ($socket)." ";

  $conn = socket_connect ($socket, $ip, $port); // 建立SOCKET的连接

  if ($conn)

  echo "Success to connection![".$ip.":".$port."] ";

  else

  echo "socket_connect() failed:".socket_strerror ($conn)." ";

  echo socket_read ($socket, 1024);

  $stdin = fopen (php://stdin, r);

  while (true)

  {

  $command = trim (fgets ($stdin, 1024));

  socket_write ($socket, $command, strlen ($command));

  $msg = trim (socket_read ($socket, 1024));

  echo $msg." ";

  if ($msg == "Bye-Bye")

  break;

  }

  fclose ($stdin);

  socket_close ($socket);

  PHP开发CS结构的技巧 2

  php入门到就业线上直播课:进入学习

  C/S架构是客户端/服务器体系结构,其中客户端依靠服务器来获取资源,C/S架构通过提供查询响应来减少网络流量。它具有三种类型结构分别是一层架构,两层架构和三层架构

  C/S架构是当今网络开发架构的一大主流技术,由美国Borland公司最早研发。接下来将在文章中为大家详细介绍这一架构,具有一定的参考价值,希望对大家有所帮助。

  【推荐课程:PHP教程

  C/S架构的含义

  C/S架构全称为客户端/服务器体系结构,它是一种网络体系结构,其中客户端是用户运行应用程序的PC端或者工作站,客户端要依靠服务器来获取资源。C/S架构是通过提供查询响应而不是总文件传输来减少了网络流量。它允许多用户通过GUI前端更新到共享数据库,在客户端和服务器之间通信一般采用远程调用(RPC)或标准查询语言(SQL)语句。

  C/S架构的基本特征:

  (1)客户端进程包含特定于解决方案的逻辑,并提供用户与应用程序系统其余部分之间的接口。服务器进程充当管理共享资源(如数据库,打印机,调制解调器或高性能处理器)的软件引擎。

  (2)前端任务和后端任务对计算资源有着根本不同的要求,例如处理器速度,内存,磁盘速度和容量以及输入/ 输出设备。

  (3)客户端和服务器的硬件平台和操作系统通常不相同。客户端和服务器进程通过一组明确定义的标准应用程序接口(API)和RPC进行通信。

  (4)C/S架构的一个重要特征是可扩展性,它们可以水平或垂直缩放。水平扩展意味着添加或删除客户端,工作站只会对性能产生轻微影响。垂直扩展意味着迁移到更大更快的服务器计算机或多服务器中。

  C/S架构的类型

  一层架构

  在此类型C/S架构设置中,用户界面,营销逻辑和数据逻辑存在于同一系统中。但是由于数据差异导致难以管理。例MP3播放器,MS Office都属于单层应用程序。

  两层架构

  在这种类型中,用户界面存储在客户端机上,数据库存储在服务器上。数据库逻辑和业务逻辑在客户端或服务器上归档,但需要进行维护。如果在客户端收集业务逻辑和数据逻辑,则将其命名为胖客户端瘦服务器体系结构。如果在服务器上处理业务逻辑和数据逻辑,则称为瘦客户端胖服务器体系结构。这被认为是负担得起的。

  在双层体系结构中,客户端和服务器必须直接合并。如果客户端向服务器提供输入,则不应该有任何中间件。这样做是为了快速获得结果并避免不同客户之间的混淆。例如,在线票务预订软件使用这种双层架构。

  三层架构

  在三层架构中,需要使用到额外的中间件,这意味着客户端请求需要通过该中间层进入服务器,服务器的响应首先由中间件接收,然后再接收到客户端。中间件存储所有业务逻辑和数据通道逻辑,中间件提高了灵活性并提供了最佳性能。

  三层结构被分成三个部分,即表示层(客户层),应用层(业务层)和数据库层(数据层)。客户端系统管理表示层,应用程序服务器负责应用程序层,服务器系统负责监视数据库层。

【PHP开发CS结构的技巧】相关文章:

PHP开发安全技巧10-05

PHP开发的安全技巧09-06

PHP常用开发技巧09-19

PHP开发安全的技巧09-12

PHP日常开发小技巧11-11

PHP开发的五大技巧09-23

PHP开发提高效率技巧09-10

PHP常用控制结构11-06

php语句基本结构09-07