需求场景(后端生成图片):
应用在几百张图片中随机选取一张图片作为模板,在图片上绘制一些文字,并生成一张图片,传入CDN中,返回用户CDN的图片地址。
优点:不用判断缓存,速度也最快
缺点:应用占用内存大
优点:内存占用小
缺点:写不好,容易内存泄露,读文件导致速度变慢
目前采用了方案1,使用了node-canvas
各位有没有更好的建议,或者方案?
走同样的路,发现不同的人生
為了擴展性考慮,將來可能有更多的圖片,甚至可以有無限張圖片,如果都存儲在服務器內存中一定不合適;如果你的服務部署在阿里雲上,就買oss,走內網,要用圖片的時候,從oss獲取處理後在重新存儲到oss;如果不在阿里雲上,在其他雲服務上,也可以買相應的雲存儲,注意不要單獨購買雲服務,這樣就需要走外網取得圖片了。如果是自己的伺服器的話,就存資料庫裡,像是mongo之類的。以上的存儲,都是儲存的檔案的二進制,其實並不存在什麼讀取檔、記憶體洩漏,把程式碼寫好就是了。
為了擴展性考慮,將來可能有更多的圖片,甚至可以有無限張圖片,如果都存儲在服務器內存中一定不合適;如果你的服務部署在阿里雲上,就買oss,走內網,要用圖片的時候,從oss獲取處理後在重新存儲到oss;如果不在阿里雲上,在其他雲服務上,也可以買相應的雲存儲,注意不要單獨購買雲服務,這樣就需要走外網取得圖片了。如果是自己的伺服器的話,就存資料庫裡,像是mongo之類的。以上的存儲,都是儲存的檔案的二進制,其實並不存在什麼讀取檔、記憶體洩漏,把程式碼寫好就是了。