跨平台C 伺服器程式開發 (2)伺服器端口

2021-07-10 05:49:22 字數 1401 閱讀 3845

現實中有許多軟體是分為客戶端和伺服器兩部分,常見的比如mysql,分為mysql client和mysql server,client負責輸入命令和結果顯示,server負責儲存資料和返回查詢結果。

可以說,任何需要聯網的軟體都需要伺服器程式。客戶端和伺服器進行互動的方式就是網路,因此對於伺服器程式來說,網路訊息處理是最基礎、最關鍵的功能。

客戶端程式只由一人操作,而伺服器程式需要同時服務大量使用者。同樣是程式崩潰,乙個客戶端崩潰只會影響乙個使用者,而乙個伺服器程式崩潰則影響所有使用者,因此伺服器程式要求高穩定性、高效率。

在網際網路時代,任何接入網路的兩台裝置間都可以通訊。通訊需要知道對方的聯絡位址,比如打**我們需要知道對方的手機號,網路通訊則需要知道對方裝置的ip位址,ip位址就相當於網路世界的身份證。

但是乙個裝置上有很多聯網程式同時執行,如何保證只會被指定的某個程式收到,這就需要埠號。如果說ip位址能指定一台裝置,那麼埠號可以指定某個程式,而連線伺服器就需要伺服器程式的ip和埠。

一台裝置可使用埠範圍為1~65535(2位元組大小),客戶端只能連線已開放埠。 若要檢視哪些埠已經開放,可使用netstat命令。

securecrt遠端操作linux介面:

執行命令:netstat -ant

命令結果字段解釋

字段解釋

proto

tcp協議型別,如tcp表示ipv4,tcp6表示ipv6

local address

本機位址,如0.0.0.0:22中,0.0.0.0表示本機通配位址,22表示埠22

foreign address

對方位址,如第二行的192.168.1.102:1965,其中192.168.1.102表示對方的ip位址,102表示對方程式的埠號

state

套接字狀態,如listen表示監聽狀態,established表示就緒狀態

第二行表示securecrt通過網路連線centos的22號埠,其中securecrt使用的ip和埠分為192.168.1.102和1965,centos內部的遠端服務程式ssh使用的ip和埠分別為192.168.1.104和22。

由此可見,centos開放了22號埠,並處於監聽狀態,因此securecrt軟體可通過網路連線centos伺服器的22號埠,建立socket連線,實現網路通訊,達到遠端操控的作用。

跨伺服器查詢

select from openrowset msdasql driver server 0.uid pwd kft.dbo.user 建立乙個鏈結的伺服器 引數 1被訪問的伺服器別名 4要訪問的伺服器 exec sp addlinkedserver l ms sqloledb 0.gogo 登陸l...

跨伺服器連線

跨伺服器連線 sql語句 要替換的名稱 public static system.data.datatable sqllink string sql,string serverprefix catch exception ex return dt 例 sql 語句 select number two...

android ijetty 伺服器程式開發

參考 方法1 方法2 按照上述方法,可以在安卓機子開啟127.0.0.1 8080上執行官網的2個例子,但是想實際開發的時候又遇到了新的問題 於是涉及到了乙個eclipse下android環境配置的問題 參考 jdk配置 我的機子是win8 64位,主要步驟如下 installer r22.2.1 ...