開發中間件和開發一般軟體有什么異同?如何來保證中間件再不同作業系統平臺上的適應性和性能的平衡性?
中間件的可靠性受哪些因素的影響?如何對其可靠性進行評測?
uj5u.com熱心網友回復:
沒專門做過,說下自己的理解,歡迎討論和指正。感覺做后臺和前臺開發做多了的最終都會涉及到一些,跟普通開發的區別也很明顯,普通開發是面向業務,什么功能都要去一一實作,就好像大樹的開枝散葉,普通開發要實作每一個葉子每一個枝丫。中間件就做主干,運輸養分,而樹葉不需要知道從哪里運來的養分,只知道這個養分是他所需要的,其中經過了什么路線什么節點用什么方式由中間件來計算分析和選擇,所有頁子或枝丫通過相應的統一介面去輸送、獲取(統一的介面和協議保證了不同平臺的適應性)。至于保證中間件在不同作業系統平臺上的適應性和性能的平衡,那取決于針對不同平臺中間件呼叫的不同的api和相應平臺的相關技術,就拿執行緒、檔案系統、網路介面來說不同平臺都有不同平臺的api這個程序涉及到使用開源或者自身組件的開發。把復雜的操作、跨平臺、協議什么的都封裝起來,對外提供簡單的介面呼叫,業務開發呼叫這些介面就實作了相關功能,不用考慮具體實作細節,也不用考慮作業系統更新、版本更新。
這個作業很像早期一些公司擁有自己的底層庫,把功能介面都封裝好了,方便后來的開發人員直接呼叫使用。現在這些底層庫還是存在,只不過很多公司規模大了,業務量上來了,分布式多平臺部署了,簡單的底層庫封裝滿足不了要求了,需要封裝一些IO密集,網路密集的操作,或者是作業系統成了最大的瓶頸,需要開發一些繞過作業系統協議堆疊或者內核的的組件即基礎開發,開發快取和網路的中間件開發來達到跨平臺,高并發。其實中間件很早就誕生了,只不過現在不再是只掌握在少數公司的專利,各個公司可以根據自身的業務需求開發自己的中間件。
可靠性受哪些影響,我能想到的是規模還有硬體平臺,幾百臺和上萬臺服務器的規模和并發量不一樣,涉及和暴露的瓶頸和需要解決的技術也不一樣,我想大公司的產品可靠性都是在一次次的大戰中檢測出來的,大牛們的理論架構加上解決大戰時突然的問題狀況一次次磨礪出來的,針對不同的應用場景突出不同的能力
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/18352.html
標籤:中間件
上一篇:液晶報表顯示問題
