6.1 C/S 架构介绍
什么是C/S架構(gòu)
C指的是client(客戶端軟件),S指的是Server(服務(wù)端軟件),本章的重點(diǎn)就是教大家寫一個(gè)C/S架構(gòu)的軟件,實(shí)現(xiàn)服務(wù)端軟件與客戶端軟件基于網(wǎng)絡(luò)通信。
計(jì)算機(jī)基礎(chǔ)知識(shí)
作為應(yīng)用開發(fā)程序員,我們開發(fā)的軟件都是應(yīng)用軟件,而應(yīng)用軟件必須運(yùn)行于操作系統(tǒng)之上,操作系統(tǒng)則運(yùn)行于硬件之上,應(yīng)用軟件是無法直接操作硬件的,應(yīng)用軟件對(duì)硬件的操作必須調(diào)用操作系統(tǒng)的接口,由操作系統(tǒng)操控硬件。
比如客戶端軟件想要基于網(wǎng)絡(luò)發(fā)送一條消息給服務(wù)端軟件,流程是:
1、客戶端軟件產(chǎn)生數(shù)據(jù),存放于客戶端軟件的內(nèi)存中,然后調(diào)用接口將自己內(nèi)存中的數(shù)據(jù)發(fā)送/拷貝給操作系統(tǒng)內(nèi)存
2、客戶端操作系統(tǒng)收到數(shù)據(jù)后,按照客戶端軟件指定的規(guī)則(即協(xié)議)、調(diào)用網(wǎng)卡發(fā)送數(shù)據(jù)
3、網(wǎng)絡(luò)傳輸數(shù)據(jù)
4、服務(wù)端軟件調(diào)用系統(tǒng)接口,想要將數(shù)據(jù)從操作系統(tǒng)內(nèi)存拷貝到自己的內(nèi)存中
5、服務(wù)端操作系統(tǒng)收到4的指令后,使用與客戶端相同的規(guī)則(即協(xié)議)從網(wǎng)卡接收到數(shù)據(jù),然后拷貝給服務(wù)端軟件
什么是網(wǎng)絡(luò)
硬件之上安裝好操作系統(tǒng),然后裝上軟件你就可以正常使用了,但此時(shí)你也只能自己使用,像下圖這樣,每個(gè)人都擁有一臺(tái)自己的機(jī)器,然而彼此孤立?
各層運(yùn)行常見物理設(shè)備
?
?
每層運(yùn)行的協(xié)議
?
什么是TCP/IP?
Transmission Control Protocol/Internet Protocol的簡寫,中譯名為傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議,又名網(wǎng)絡(luò)通訊協(xié)議,是Internet最基本的協(xié)議、Internet國際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ)
?
OSI七層模型
OSI/RM模型(Open System Interconnection / Reference Model)的設(shè)計(jì)目的是成為一個(gè)所有計(jì)算機(jī)廠商都能實(shí)現(xiàn)的開放網(wǎng)絡(luò)模型,來克服使用眾多私有網(wǎng)絡(luò)模型所帶來的困難和低效性。
?
轉(zhuǎn)載于:https://www.cnblogs.com/caimengzhi/p/8483908.html
總結(jié)
以上是生活随笔為你收集整理的6.1 C/S 架构介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 隐马尔可夫(HMM)、前/后向算法、Vi
- 下一篇: CSS中BFC规则