機遇http的實現方式有下面幾種。
http協議傳統post/get 方式
soap 簡單對象訪問協議
xmlrpc 機遇xml的協議
json 近年來興起的一種數據序列化傳輸方法
http無狀態協議,不能保證連接100%有效性。http方式受限制與瀏覽器,對於並發控制,超時時間,通信數據長度都有嚴格的限制。
例如:一般瀏覽器運行超時時間都是30秒或60秒,當你通過http方式訪問介面時,你的程序因運行超過30秒被瀏覽器強行中斷;另外當你提交的數據超過瀏覽器限制長度時也會返回錯誤。
結局上述問題方法是將藉口獨立出一台伺服器,單獨設置超時時間等配製
http 方式有諸多缺陷,當仍被廣泛使用,他的特點是容易開發,開發人員不需要額外學習,如post/get方式
http 方式的優勢是它可以攜帶Cookie/Session
TCP/UDP Socket 方式
TCP 這是唯能保證不間斷時時傳輸手段,開發難度很高,目前web開發人員中能寫出高效的多綫程socket程序的人很少。
其中涉及很多知識,例如:進程,綫程,鎖,列隊,進程間通信,共享內存,以及信號處理等等;沒有10年功力很難寫出安全,穩定,高效,可擴展的程序
UDP 能夠發送大數據包
必須考慮介面最大會話數
處理請求後到返回數據所花費的時間
介面應該支持負載均衡,通過增加節點數量,快速擴展;同時添加與撤除節點不會影響介面的通信(包括節點硬件故障);同時介面應該具備健康狀態檢查功能。
來源IP控制,即黑白名單,獲取IP地址需要考慮X Forward for
IP計數器,單位時間內IP訪問次數達到閥值,就提示稍後連接
用戶名密碼認證與訪問權限
動態驗證碼
證書加密
md5/sha1 數字摘要 校驗
SSL / TSL 證書加密
介面訪問權限應該具備功能
顆粒度精確到每個操作方法