91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP成長記(二) —— SOA&RESTful軟件架構

發布時間:2020-10-24 22:57:09 來源:網絡 閱讀:5329 作者:村長愛技術 欄目:軟件技術

     你有沒有遇到過,同一個數據庫的數據,每次做一個產品都要重新實現一遍同樣的功能,每一個產品都要單獨寫一相同的功能模塊(比如登錄,獲取產品列表等),很多以前寫的功能模塊到現在都不能復用了,工作幾年下來,公司里沒有沉淀出可以復用的東西……

     如果你遇到過相似的情況,也許你應該關注一下SOA(Service-Oriented Architecture)—— 面向服務的體系結構,這不是一中具體的技術,只是一個設計思想,他的主要思想就是把服務從項目中分離出來,做成接口的形式供其他項目調用,這樣的好處很明顯,第一、只要約定好接口形式,任何語言都可以相互調用;第二、最大化的復用功能模塊;第三、可以橫向和縱向擴展,等等。這時大家可能想起來Web Service來了,它主要機遇基于SOAP通過HTTP協議進行調用,這種形式有很多弊病,比如開發麻煩,要生成一個非常大的WSDL文件,生成的數據格式很復雜,有沒有一種既簡單又安全的方式呢,當然有了,那就是RESTful(Representational State Transfer)描述了一個架構樣式的網絡系統,很多公司的API都是通過該形式開發,比如微博API,QQ開放平臺,淘寶開發平臺等等,那它有什么好處呢,首先它基于HTTP協議,通過即 POST、GET、HEAD、PUT 、DELETE、OPTIONS、TRACE等請求方式處理資源,然后返回通用數據格式,例如XML/JSON等,這樣不管是B/S,C/S架構都能很好的支持。下面講解一下RESTful架構設計。

      首先架構圖如下:

PHP成長記(二) ——  SOA&RESTful軟件架構

需要為每個程序分配一個appKey和一個appSecret, 然后通過URL訪問服務,最后服務返回數據(JSON / XML格式)。


   可能遇到的問題:

1、安全性

   當請求端發送請求的時候,服務端要驗證合法性,那該如何驗證呢,大多數方案都是遵循OAuth(現在普遍都升級的到了OAuth3.0)。下面是我設計一種簡單方式,在小應用上可以采用。

PHP成長記(二) ——  SOA&RESTful軟件架構

       2、請求控制

              接口不能無限制的調用,不然服務會被跑慢,所以需要限制請求,方法很多,可以采用Nginx的limit模塊,限制用戶的調用頻率和最大連接數等。


       3、服務擴展

              首先對于以后服務的升級,需要對接口進行非常好的設計,避免后續改變URL,這里建議多應用設計模式來進行程序設計,而隨著服務的訪問量不斷增加,需要對服務進行框架升級,這個可以參考我的《項目成長記》專題文章。


           SOA架構目前已經很成熟,大家可以多進行研究討論。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武平县| 高青县| 福贡县| 双城市| 巩留县| 云梦县| 盘锦市| 始兴县| 瑞安市| 桐梓县| 渭源县| 阿拉善盟| 安陆市| 延边| 中宁县| 融水| 遵义县| 会东县| 加查县| 水富县| 富平县| 贞丰县| 获嘉县| 泰兴市| 青冈县| 莎车县| 龙里县| 闽清县| 福清市| 邯郸市| 三台县| 定兴县| 开阳县| 吉林省| 罗城| 汕尾市| 固原市| 郴州市| 麦盖提县| 淮滨县| 大荔县|