国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Go socket實現多語言間通信

Enlightenment / 1757人閱讀

摘要:它不局限于某一語言,這里我們主要講語言基于實現通訊。序列化采用,數據格式比較簡單支持多種語言。運行語言客戶端,在目錄下的或瀏覽器訪問配置自己的網址輸出結果小結選序列化,主要考慮它實現起來簡單,很多語言支持。

前言

socket提供了在傳輸層進行網絡編程的方法,它比基于http協議的接口傳輸更高效,RPC(Remote Procedure Call)是遠程過程調用,常用于分布式系統等,而rpc很多是基于socket實現的。不了解socket、http等協議請閱讀

https://blog.csdn.net/guyan03...。

Socket 都可以用“打開open –> 讀寫write/read –> 關閉close”模式來操作。它不局限于某一語言,這里我們主要講Go、php語言基于socket實現通訊。

序列化采用json,數據格式比較簡單,支持多種語言。

Go socket 采用c/s架構

客戶端:net.Dial() Write() Read() Close()

服務器:net.Listen() Accept() Read() Write() Close()

源代碼地址:https://github.com/guyan0319/...
測試

1、下載源代碼至GOPATH目錄golangSocketPhp

2、運行服務端,在example目錄下server.go

go run server.php

輸出:

Waiting for clients

3、新窗口下運行客戶端,在example目錄下client.go

go run client.go

輸出:

receive data string[6]:golang

golang這個是從服務端返回的數據。

4、運行php語言客戶端,在php目錄下的socket_client.php

php -f socket_client.php

或瀏覽器訪問 http://localhost/xxx/socket_c... 配置自己的網址

輸出結果:

client write success
server return message is:
php

小結:

選json序列化,主要考慮它實現起來簡單,很多語言支持。缺點是序列化效率低,序列化后數據相對比較大(這里跟protobuf對比)。

links

目錄

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/31820.html

相關文章

  • 云計算、物聯網讓終端更智能

    摘要:在召開的移動智能終端峰會上,中國工程院院士鄔賀銓發表致辭,他表示,借助窄帶物聯網云計算大數據分析等技術,智能終端正變得越來越智能。最后,鄔賀銓表示,計算技術與操作系統及寬帶移動通信技術為移動終端的智能化打下基礎。  在召開的2016移動智能終端峰會上,中國工程院院士鄔賀銓發表致辭,他表示,借助窄帶物聯網、云計算、大數據分析等技術,智能終端正變得越來越智能。用戶通過移動智能終端獲得更多的智能感...

    Corwien 評論0 收藏0
  • 帶入gRPC:gRPC及相關介紹

    摘要:原文地址帶入及相關介紹項目地址作為開篇章,將會介紹相關的一些知識。 原文地址:帶入gRPC:gRPC及相關介紹 項目地址:go-grpc-example 作為開篇章,將會介紹 gRPC 相關的一些知識。簡單來講 gRPC 是一個 基于 HTTP/2 協議設計的 RPC 框架,它采用了 Protobuf 作為 IDL 你是否有過疑惑,它們都是些什么?本文將會介紹一些常用的知識和概念,更詳...

    y1chuan 評論0 收藏0
  • 帶入gRPC:gRPC及相關介紹

    摘要:帶入及相關介紹原文地址帶入及相關介紹項目地址作為開篇章,將會介紹相關的一些知識。 帶入gRPC:gRPC及相關介紹 原文地址:帶入gRPC:gRPC及相關介紹 項目地址:go-grpc-example 作為開篇章,將會介紹 gRPC 相關的一些知識。簡單來講 gRPC 是一個 基于 HTTP/2 協議設計的 RPC 框架,它采用了 Protobuf 作為 IDL 你是否有過疑惑,它們都...

    AJie 評論0 收藏0
  • docker進程模型,架構分析

    摘要:與容器內第一個進程進程看創建了這么多子進程,然后到了我們期待的自己中的進程就要被創建了,想想都有點小激動,然而。。。 Docker架構分析 [root@docker-build-86-050 ~]# ls /usr/bin |grep docker docker docker-compose docker-containerd docker-containerd-ctr docker-...

    mingzhong 評論0 收藏0
  • webSocket原理探索

    摘要:幀是發送數據的基本單位,下邊是它的報文格式報文內容中規定了數據標示操作代碼掩碼數據數據長度等格式。首先我們明白了客戶端和服務端進行消息傳遞是這樣的客戶端將消息切割成多個幀,并發送給服務端。服務端接收消息幀,并將關聯的幀重新組裝成完整的消息。 本文概述 Web Sockets的目標是在一個單獨的持久連接上提供全雙工、雙向通信。在Javascript創建了Web Socket之后,會有一個...

    baukh789 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<