当前位置: 首页 > news >正文

网络结构模式

一、C/S结构

        服务器 - 客户机,即 Client - Server C/S )结构。 C/S 结构通常采取两层结构。服务器负责数据的 管理,客户机负责完成与用户的交互任务。客户机是因特网上访问别人信息的机器,服务器则是提 供信息供人访问的计算机。
        客户机通过局域网与服务器相连,接受用户的请求,并通过网络向服务器提出请求,对数据库进行 操作。服务器接受客户机的请求,将数据提交给客户机,客户机将数据进行计算并将结果呈现给用 户。服务器还要提供完善安全保护及对数据完整性的处理等操作,并允许多个客户机同时访问服务器,这就对服务器的硬件处理数据能力提出了很高的要求。
        在C/S 结构中,应用程序分为两部分:服务器部分和客户机部分。服务器部分是多个用户共享的信息与功能,执行后台服务,如控制共享数据库的操作等;客户机部分为用户所专有,负责执行前台功能,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。

        C/S架构指的是Client/Server架构,即客户端和服务器架构。在这种架构中,软件系统被划分为两个主要部分:客户端和服务器。

  1. 客户端(Client): 客户端是用户直接与之交互的部分,通常是安装在用户设备上的应用程序。客户端负责处理用户界面、用户输入和一些本地计算。它向服务器发起请求以获取数据或执行某些操作,并将结果呈现给用户。

  2. 服务器(Server): 服务器是中央计算机或计算机集群,负责处理客户端发起的请求。服务器执行业务逻辑、存储和检索数据,并向客户端提供相应的结果。服务器端通常拥有更大的计算能力和存储资源,能够支持多个客户端同时连接

优点:

1.  能充分发挥客户端 PC 的处理能力,很多工作可以在客户端处理后再提交给服务器,所以 C/S 结构
客户端响应速度快;
2. 操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求;
3. C/S 结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程
4. 安全性较高 C/S 一般面向相对固定的用户群,程序更加注重流程,它可以对权限进行多层次校
验,提供了更安全的存取模式,对信息安全的控制能力很强,一般高度机密的信息系统采用 C/S
构适宜。
缺点:
1.客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病
毒、硬件损坏,都需要进行安装或维护。系统软件升级时,每一台客户机需要重新安装,其维护和
升级成本非常高;
2. 对客户端的操作系统一般也会有限制,不能够跨平台。

二、B/S结构

        B/S 结构( Browser/Server ,浏览器 / 服务器模式),是 WEB 兴起后的一种网络结构模式, WEB 浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服 务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如 Firefox Internet Explorer,服务器安装 SQL Server Oracle MySQL 等数据库。浏览器通过 Web Server 同数据库进行数据交互。
  1. 浏览器(Browser): 用户通过Web浏览器(如Chrome、Firefox、Safari等)访问应用程序。浏览器负责呈现用户界面,处理用户输入,并通过网络协议与服务器进行通信。

  2. 服务器(Server): 服务器端包含应用程序的业务逻辑和数据处理部分。它接收来自浏览器的请求,执行相应的业务逻辑,然后将结果返回给浏览器。服务器通常托管应用的核心功能和数据,可能与数据库进行交互以检索或更新数据。

优点
B/S 架构最大的优点是总体拥有成本低、维护方便、 分布性强、开发简单,可以不用安装任何专门的软件就能实现在任何地方进行操作,客户端零维护,系统的扩展非常容易,只要有一台能上网的电脑就能使用。
缺点
1. 通信开销大、系统和数据的安全性较难保障 ;
2. 个性特点明显降低,无法实现具有个性化的功能要求;
3. 协议一般是固定的:http/https
4. 客户端服务器端的交互是请求 - 响应模式通常动态刷新页面,响应速度明显降低

 三、 微服务架构

        微服务(Microservices)是一种架构风格,它将一个应用程序拆分为一组小型、独立的服务,每个服务都专注于一个特定的业务功能。这些服务可以独立开发、部署、扩展和维护,从而提高系统的灵活性、可伸缩性和可维护性。微服务架构的核心思想是将大型系统划分为小型服务单元,每个服务单元都有自己的数据库和独立通信机制。

以下是微服务架构的一些关键特点和原则:

  1. 独立性(Independence): 微服务是独立的业务功能单元,每个服务都有自己的代码库、数据库和数据存储。这种独立性使得团队可以独立开发和部署服务,降低了系统的耦合度。

  2. 分布式架构(Distributed Architecture): 微服务通常是分布式的,每个服务可以运行在不同的服务器或容器中。服务之间通过网络进行通信,采用轻量级的通信机制,如HTTP或消息队列。

  3. 自治性(Autonomy): 微服务是自治的,即每个服务都有自己的开发团队和生命周期。团队可以使用不同的编程语言、框架和技术栈,使得选择最适合特定任务的技术变得更加容易。

  4. 弹性(Resilience): 微服务架构鼓励设计具有弹性的系统。由于每个服务都是独立的,因此系统在某个服务出现故障时可以保持部分功能的可用性。

  5. 轻量级通信(Lightweight Communication): 服务之间的通信通常采用轻量级的协议,例如RESTful API、JSON或消息队列。这有助于提高系统的性能和响应速度。

  6. 可伸缩性(Scalability): 微服务可以根据需求独立扩展,只需对特定的服务进行水平扩展,而不必整体扩展整个系统。

  7. 多语言支持(Polyglotism): 不同的服务可以使用不同的编程语言和技术,根据特定的需求选择最适合的工具。

        微服务架构适用于需要快速迭代、易于扩展和高度灵活的应用程序。然而,引入微服务架构也带来了一些挑战,如服务间通信的管理、一致性维护等,因此在设计和实施微服务架构时需要仔细考虑这些方面。https://www.bilibili.com/video/BV1mW4y1q7h9/?spm_id_from=333.337.search-card.all.click&vd_source=2b89fb32c94aaa076a0bbf42ab94a268

相关文章:

网络结构模式

一、C/S结构 服务器 - 客户机,即 Client - Server ( C/S )结构。 C/S 结构通常采取两层结构。服务器负责数据的 管理,客户机负责完成与用户的交互任务。客户机是因特网上访问别人信息的机器,服务器则是提 供信息供人…...

IIC及OLED实验

I2C (Inter-Integrated Circuit): I2C 是一种用于在芯片之间进行短距离数字通信的串行通信协议。它允许多个设备通过两根导线(一根数据线 SDA 和一根时钟线 SCL)进行通信。I2C 常常用于嵌入式系统中连接传感器、存储器、显示屏和其他外设。 数据线和时钟…...

day6 力扣公共前缀--go实现---对字符串的一些思考

今日份知识: curl -x 指定方法名 请求的url -d 请求体body里面的内容 //curl命令 curl -x Get 127.0.0.1:8080/add/user -d jinlicurl如果不指定方法,默认使用get方法,在go里面,get方法到底可以不可以把内容数据写在body里面传…...

27.Java程序设计-基于Springboot的在线考试系统小程序设计与实现

1. 引言 随着数字化教育的发展,在线考试系统成为教育领域的一项重要工具。本论文旨在介绍一个基于Spring Boot框架的在线考试系统小程序的设计与实现。在线考试系统的开发旨在提高考试的效率,简化管理流程,并提供更好的用户体验。 2. 系统设…...

Redis可视化工具Redis Desktop Manager mac功能特色

Redis Desktop Manager mac是一款非常实用的Redis可视化工具。RDM支持SSL / TLS加密,SSH隧道,基于SSH隧道的TLS,为您提供了一个易于使用的GUI,可以访问您的Redis数据库并执行一些基本操作:将键视为树,CRUD键…...

【C++】揭开运算符重载的神秘面纱

目录 一、引言 优点 二、介绍 1.定义 2.语法 三、示例 1.加法运算符重载 2.一元运算符重载 3.友元函数 4.流插入和流提取 5.自增自减运算符 总结 一、引言 何为运算符重载?运算符重载,是C中的一项强大特性,赋予了程序员在自定义类…...

竞赛保研 基于LSTM的天气预测 - 时间序列预测

0 前言 🔥 优质竞赛项目系列,今天要分享的是 机器学习大数据分析项目 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/dancheng-senior/po…...

前端常用的开发工具

前端常用的开发工具🔖 文章目录 前端常用的开发工具🔖1. Snipaste--截图工具2. ScreenToGif--gif图片录制3. Typora--Markdown编辑器4. notepad--文本代码编辑器5. uTools--多功能工具6. EV录屏--录屏软件7. Xmind--思维导图8. Apifox -- 接口调试9. Tor…...

鸿蒙开发语言介绍--ArkTS

1.编程语言介绍 ArkTS是HarmonyOS主力应用开发语言。它在TypeScript (简称TS)的基础上,匹配ArkUI框架,扩展了声明式UI、状态管理等相应的能力,让开发者以更简洁、更自然的方式开发跨端应用。 2.TypeScript简介 自行补充TypeScript知识吧。h…...

关于“Python”的核心知识点整理大全36

目录 13.4.4 向下移动外星人群并改变移动方向 game_functions.py alien_invasion.py 13.5 射杀外星人 13.5.1 检测子弹与外星人的碰撞 game_functions.py alien_invasion.py 13.5.2 为测试创建大子弹 13.5.3 生成新的外星人群 game_functions.py alien_invasion.py …...

安装nodejs,配置环境变量并将npm设置淘宝镜像源

安装nodejs并将npm设置淘宝镜像源 1. 下载nodejs 个人不喜欢安装包,所以是下载zip包的方式。这里我下载的node 14解压包版本 下载地址如下:https://nodejs.org/dist/v14.15.1/node-v14.15.1-win-x64.zip 想要其他版本的小伙伴去https://nodejs.org/di…...

12.18构建哈夫曼树(优先队列),图的存储方式,一些细节(auto,pair用法,结构体指针)

为结构体自身时,用.调用成员变量;为结构体指针时,用->调用成员变量 所以存在结构体数组时,调用数组元素里的成员变量,就是要用. 结构体自身只有在new时才会创建出来,而其指针可以随意创建 在用new时&…...

《Python》面试常问:深拷贝、浅拷贝、赋值之间的关系(附可变与不可变)【用图文讲清楚!】

背景 想必大家面试或者平时学习经常遇到问python的深拷贝、浅拷贝和赋值之间的区别了吧?看网上的文章很多写的比较抽象,小白接收的难度有点大,于是乎也想自己整个文章出来供参考 可变与不可变 讲深拷贝和浅拷贝之前想讲讲什么是可变数据类型…...

使用PE信息查看工具和Dependency Walker工具排查因为库版本不对导致程序启动报错问题

目录 1、问题说明 2、问题分析思路 3、问题分析过程 3.1、使用Dependency Walker打开软件主程序,查看库与库的依赖关系,查看出问题的库 3.2、使用PE工具查看dll库的时间戳 3.3、解决办法 4、最后 VC常用功能开发汇总(专栏文章列表&…...

Python编程题目答疑「Python一对一辅导考试真题解析」

你好,我是悦创。 待会更新~ 更新计划 答案 题目 记得点赞收藏! 题目 之后更新 Solution Question 1 # 读取输入 a float(input("请输入实数 a: ")) b float(input("请输入实数 b: ")) c float(input("请输…...

Python---搭建Python自带静态Web服务器

1. 静态Web服务器是什么? 可以为发出请求的浏览器提供静态文档的程序。 平时我们浏览百度新闻数据的时候,每天的新闻数据都会发生变化,那访问的这个页面就是动态的,而我们开发的是静态的,页面的数据不会发生变化。 …...

在服务器上部署SpringBoot项目jar包

以下是在服务器上部署Spring Boot项目jar包的步骤: 打包项目: 使用IDEA或者命令行工具(如Maven或Gradle)将Spring Boot项目打包为一个可执行的jar文件。如果使用Maven,可以在项目的根目录下运行以下命令来打包项目&…...

[python]python实现对jenkins 的任务触发

目录 关键词平台说明背景一、安装 python-jenkins 库二、code三、运行 Python 脚本四、注意事项 关键词 python、excel、DBC、jenkins 平台说明 项目Valuepython版本3.6 背景 用python实现对jenkins 的任务触发。 一、安装 python-jenkins 库 pip install python-jenkin…...

Python生成圣诞节贺卡-代码案例剖析【第18篇—python圣诞节系列】

文章目录 ❄️Python制作圣诞节贺卡🐬展示效果🌸代码🌴代码剖析 ❄️Python制作圣诞树贺卡🐬展示效果🌸代码🌴代码剖析🌸总结 🎅圣诞节快乐! ❄️Python制作圣诞节贺卡 …...

深度剖析Ajax实现方式(原生框架、JQuery、Axios,Fetch)

Ajax学习 简介: ​ Ajax 代表异步 JavaScript 和 XML(Asynchronous JavaScript and XML)的缩写。它指的是一种在网页开发中使用的技术,通过在后台与服务器进行数据交换,实现页面内容的更新,而无需刷新整个…...

任天堂,steam游戏机通过type-c给VR投屏与PD快速充电的方案 三type-c口投屏转接器

游戏手柄这个概念,最早要追溯到二十年前玩FC游戏的时候,那时候超级玛丽成为了许多人童年里难忘的回忆,虽然长大了才知道超级玛丽是翻译错误,应该是任天堂的超级马里奥,不过这并不影响大家对他的喜爱。 当时FC家用机手柄…...

Flink系列之:Checkpoints 与 Savepoints

Flink系列之:Checkpoints 与 Savepoints 一、概述二、功能和限制 一、概述 从概念上讲,Flink 的 savepoints 与 checkpoints 的不同之处类似于传统数据库系统中的备份与恢复日志之间的差异。 Checkpoints 的主要目的是为意外失败的作业提供恢复机制。 …...

【优质书籍推荐】LoRA微调的技巧和方法

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。…...

Linux一行命令配置jdk环境

使用方法: 压缩包上传 到/opt, 更换命令中对应的jdk包名即可。 注意点:jdk-8u151-linux-x64.tar.gz 解压后名字是jdk1.8.0_151 sudo tar -zxvf jdk-8u151-linux-x64.tar.gz -C /opt && echo export JAVA_HOME/opt/jdk1.8.0_151 | sudo tee -a …...

从0开始刷剑指Offer

剑指Offer题解 剑指 Offer 11. 旋转数组的最小数字 思路: 二分O(logn) class Solution {public int stockManagement(int[] stock) {int l 0;int r stock.length - 1;while(l < r && stock[0] stock[r]) r --;if(stock[r] > stock[l]) return stock[0];whi…...

使用Java语言中的算法输出杨辉三角形

一、算法思想 创建一个名为YanghuiTest的类,然后创建二维数组&#xff0c;然后遍历二维数组的第一层&#xff0c;然后初始化第二层数组的大小&#xff0c;然后遍历第二层数组&#xff0c;然后将两侧的数组元素赋为1&#xff0c;然后其它数值通过公式计算&#xff0c;最后可以输…...

人工智能_机器学习071_SVM支持向量机_人脸识别算法_LFW人脸数据加载_与理解---人工智能工作笔记0111

然后我们继续来看 这里有个lfw_home可以看到这个数据是,包含了人脸数据 然后我们继续看,在我们的顶你用户目录下,如果安装了,sklearn就会有这样一个目录, scikit_learn_data目录,这个里面可以看到 可以看到这个文件夹中有个 lfw_home文件夹是对.zip文件夹的解压,这个下载以后…...

Java 8中流Stream API详解

先给个示例&#xff0c;展示Java 8流API的优势 假设我们有以下任务&#xff1a; 给定一个字符串列表&#xff0c;我们需要执行以下操作&#xff1a; 筛选出所有以"A"开头的字符串。 将这些字符串转换为大写。 对这些字符串按照长度进行排序。 最后&#xff0c;将…...

通过 xlsx 解析上传excel的数据

一、前言 在前端开发中&#xff0c;特别是在后台管理系统中&#xff0c;导入数据&#xff08;上传excel&#xff09;到后端是是否常见的功能&#xff1b;而一般的实现方式都是通过接口将excel上传到后端&#xff0c;再有后端进行数据解析并做后续操作。 今天&#xff0c;来记录…...

Flink系列之:JDBC SQL 连接器

Flink系列之&#xff1a;JDBC SQL 连接器 一、JDBC SQL 连接器二、依赖三、创建 JDBC 表四、连接器参数五、键处理六、分区扫描七、Lookup Cache八、幂等写入九、JDBC Catalog十、JDBC Catalog 的使用十一、JDBC Catalog for PostgreSQL十二、JDBC Catalog for MySQL十三、数据…...

网站管理系统设置/百度seo排名帝搜软件

引 言 作为一门面向智能合约的语言&#xff0c;Solidity与其他经典语言既有差异也有相似之处。 一方面&#xff0c;服务于区块链的属性使其与其他语言存在差异。例如&#xff0c;合约的部署与调用均要经过区块链网络确认&#xff1b;执行成本需要被严格控制&#xff0c;以防止…...

个人互动网站/seo网站优化优化排名

G 题意&#xff1a; 就是给你n个关卡&#xff0c;每个关卡有多个前置关卡&#xff0c;只有把所有的前置关卡都打败&#xff0c;自己才能进入。然后每个关卡有一个防御值和特性值&#xff0c;如果小牛攻击力比他高&#xff0c;或者小牛有这个特性值&#xff0c;那么就可以打败他…...

收录软件最多的网站/深圳网络营销推广渠道

另一列中写入 IF(COUNTIF(C:C,C1)>1,"有重复","") 其余往下拖拉公式 我在想如果可以有不往下拖的呢? 不过好像筛选中也有类似的选项.转载于:https://www.cnblogs.com/vimmer/p/3445794.html...

宁波网站推广软件/搜索引擎优化与推广技术

VMware Workstation 从软盘和/或 CD-ROM 直接安装未修改的操作系统。在构造一台虚拟机时&#xff0c;这个安装过程是第一步并且也是唯一必需的一步。但是&#xff0c;VMware 强烈建议你在每一台虚拟机中完成操作系统安装之后立即安装 VMware Tools 套件。在客户操作系统中安装…...

上海公司做网站的价格/优化系统的软件

[转] http://www.leiphone.com/news/201704/z87wjT8j9s94tMnG.html 市场上空间定位的技术方案分为单目、双目以及激光雷达三大阵营&#xff0c;其中激光雷达由于成本高昂市场接受度较低&#xff0c;而在都是基于计算机视觉的单目和双目中&#xff0c;双目则显得更受欢迎。在国内…...

企业网站管理系统的设计与实现/淘宝关键词查询工具

七、radio 单选框radio-group 属性名类型默认值说明bindchangeEventHandle radio-group中的选中项发生变化时触发change事件&#xff0c;event.detai {value : 选中项radio的valueradio 属性名类型默认值说明valueString radio标识。当该radio选中时&#xff0c;radio-group的…...