【特別宣告:本文基于Tools and Services I Use to Run My SaaS進行修改,】
軟體SaaS化由于需要考量架構的各個方面,所以需要的技術堆疊非常全面,
以一個客戶管理SaaS應用為例,可能涉及的技術堆疊包括:
開發
開發就是把系統做出來的意思,開發涉及編碼、專案管理、測驗等多個環境,其中為了創作一個產品,不僅僅是自己撰寫代碼,還需要引入大量的第三方庫或開發框架,幫助自己快速構建應用,
在軟體開發的領域,有人將它與制造業進行了一個類比,發現有異曲同工之妙,因此,軟體生產,軟體供應鏈等類比詞匯開始流行,
-
后端:Java, Maven等 ,
-
前端:JS, Vue框架,Bootstrap界面,SCSS,Webpack,Express,Babel,Hugo等 ,
-
API:node-canvas,Java web等 ,
-
庫:ffmpeg,popper等 ,
-
IM:Crisp ,
-
開發工具:VSCode,prettier(代碼排版美化),
-
專案管理:Trello,Kanban,禪道 ,
-
檔案協作:語雀,Notion,Typora ,
-
除錯:Postman ,
云設施
可以選用一站式云設施提供商,如Azure,AWS,阿里云等,也可以選用各個領域的專業服務商,
-
云服務器:Azure,AWS,阿里云,DigitalOcean等 ,
-
域名系統:Namecheap ,
-
靜態托管:Netlify ,
-
郵件推送:Postmark,SendGrid ,
-
短息推送:OneSignal ,
資料存盤
資料庫存盤包括資料庫、快取和物件存盤集中方式,資料庫用于存盤結構化的業務資料和系統配置資料,快取用于提升應用的訪問速度,物件存盤用于存盤非結構化資料(檔案、圖片和視頻音頻等)
-
資料庫:MySQL,PostgreSQL ,
-
快取:Redis ,
-
檔案資料庫:MongoDB ,
-
物件存盤:minio ,
-
日志資料庫:InfluxDB ,
運行環境
-
作業系統:CentOS ,
-
HTTP服務器:Nginx ,
-
負載均衡:HAProxy ,
-
行程管理:Systemd, PM2 ,
-
Web服務器:Tomcat ,
Devops工具
SaaS系統需要應對快速迭代的業務,部署必須引入DevOps工具,以提升部署的效率,
-
自動配置軟體環境:Ansible 或 Terraform ,
-
構建工具:Jenkins ,
-
代碼倉庫:Gitlab 或 Github ,
-
鏡像制作工具:Packer ,
日志&監控
傳統個的單機部署應用,監控往往投入較少,大部分時候都是被動的事件回應機制,而SaaS軟體由于其多租戶的特殊性,提前發現問題顯得非常的重要,因此監控業務也是作業的重點之一,
-
全堆疊工具:ELK ,
-
日志分析:Grafana,Graylog ,
-
采集轉發:Telegraf ,
-
錯誤跟蹤:Sentry,Statuscake,Papertrail ,
應用分析
應用分析簡稱APM,是指應用程式性能管理或應用程式性能監視,是幫助優化和監視應用程式性能的必要工具,在IT基礎架構領域,APM已經是非常成熟的商業市場,
-
用戶訪問分析:百度統計,Google Analytics, Matomo ,
-
應用程式性能分析:OpenAPM ,
-
代碼級性能分析:Stackify Retrace, New Relic, AppDynamics, and Dynatrace ,
-
網路性能分析:Extrahop ,
支付
全方面支持企業用戶的各種付款方式,包括:PayPal、信用卡、微信支付、支付寶等,也可以使用一種集成化的中間支付平臺解決所有的支付方式,例如:Stripe
設計工具
-
原型設計工具:Sketch,Axure ,
-
原型設計平臺:墨刀、Figma ,
-
圖示庫:Boostrap,Font Awesome,Nucleo ,
另外,還需要一些圖片壓縮工具,圖片格式轉換工具,
通過以上技術堆疊,我們發現大部分都是開源組件,也有少部分免費(或接近免費)的SaaS和PaaS類服務,搭建一個SaaS化應用,需要從如下幾個角度開始作業:
-
結構業務,分析技術堆疊 ;
-
迭代式開發,快速實作業務功能 ;
-
科學使用各種不同的組件 ;
-
組件之間的集成 ;
-
引入DevOps實踐 ;
-
服務器運維 ;
-
安全 ,
SaaS應用是一個宏觀架構,對產品經理的業務能力、技術能力和哲學思考能力提出了極高的要求,如果SaaS專案的產品經理不具備宏觀思維,沒有全堆疊的開發經驗,那么構造一個SaaS應用幾乎是不可能完成的任務,
本文由Websoft9原創發布,轉載請注明出處,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/231367.html
標籤:其他
下一篇:云服務器的選型
