久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何進行MacOS下的項目開發(fā)

144次閱讀
沒有評論

共計 2697 個字符,預計需要花費 7 分鐘才能閱讀完成。

如何進行 MacOS 下的項目開發(fā),相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

前言

首先介紹下文出現(xiàn)的幾個比較重要的概念:

函數(shù)計算(Function Compute): 函數(shù)計算是一個事件驅動的服務,通過函數(shù)計算,用戶無需管理服務器等運行情況,只需編寫代碼并上傳。函數(shù)計算準備計算資源,并以彈性伸縮的方式運行用戶代碼,而用戶只需根據(jù)實際代碼運行所消耗的資源進行付費。函數(shù)計算更多信息
參考。
Fun: Fun 是一個用于支持 Serverless 應用部署的工具,能幫助您便捷地管理函數(shù)計算、API 網關、日志服務等資源。它通過一個資源配置文件(template.yml),協(xié)助您進行開發(fā)、構建、部署操作。Fun 的更多文檔
參考。

備注: 介紹的技巧需要 Fun 版本大于等于 2.10.2。

依賴工具

本項目是在 MacOS 下開發(fā)的,涉及到的工具是平臺無關的,對于 Linux 和 Windows 桌面系統(tǒng)應該也同樣適用。在開始本例之前請確保如下工具已經正確的安裝,更新到最新版本,并進行正確的配置。

Docker

Fun

Fcli

Fun 和 Fcli 工具依賴于 docker 來模擬本地環(huán)境。

對于 MacOS 用戶可以使用
homebrew 進行安裝:

brew cask install docker
brew tap vangie/formula
brew install fun
brew install fcli

Windows 和 Linux 用戶安裝請參考:

https://github.com/aliyun/fun/blob/master/docs/usage/installation.md

https://github.com/aliyun/fcli/releases

安裝好后,記得先執(zhí)行
fun config 初始化一下配置。

注意, 如果你已經安裝過了 fun,確保 fun 的版本在 2.10.2 以上。

$ fun --version
2.10.1

快速開始初始化

使用 fun init 命令可以快捷地將本模板項目初始化到本地。

fun init vangie/selenium-java-example

安裝依賴

$ fun install
...

本地測試

測試代碼 ChromeDemo 的內容為:

public class ChromeDemo implements StreamRequestHandler {
 public void handleRequest(InputStream inputStream,
 OutputStream outputStream,
 Context context) throws IOException {
 System.setProperty( webdriver.chrome.driver ,  /code/chromedriver 
 ChromeOptions options = new ChromeOptions();
 options.setBinary( /code/headless-chromium 
 options.addArguments( --disable-extensions  // disabling extensions
 options.addArguments( --disable-gpu  // applicable to windows os only
 options.addArguments( --disable-dev-shm-usage  // overcome limited resource problems
 options.addArguments( --no-sandbox  // Bypass OS security model
 options.addArguments( --headless 
 WebDriver driver = new ChromeDriver(options);
 driver.get( https://ide.fc.aliyun.com 
 outputStream.write((Page title is:   + driver.getTitle() +  \n ).getBytes());
 driver.quit();
 }
}

本地運行

$ mvn package   fun local invoke selenium
FC Invoke Start RequestId: 68c83b4c-b053-479c-9b0e-9503582ccb56
handle user request is com.aliyun.fc.selenium.ChromeDemo::handleRequest
cache is null!
Starting ChromeDriver 2.35.528139 (47ead77cb35ad2a9a83248b292151462a66cd881) on port 20652
Only local connections are allowed.
Mar 05, 2019 11:34:27 AM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: OSS
Page title is:  云端集成開發(fā)環(huán)境
FC Invoke End RequestId: 68c83b4c-b053-479c-9b0e-9503582ccb56
RequestId: 68c83b4c-b053-479c-9b0e-9503582ccb56 Billed Duration: 5265 ms Memory Size: 1998 MB Max Memory Used: 240 MB

部署

$ mvn package   fun deploy

執(zhí)行

$ fcli function invoke -s chrome -f selenium
 Page title is:  云端集成開發(fā)環(huán)境 

關于文件尺寸

由于 chromedriver 和 headless-chromium 壓縮后體積已經非常接近 50MB,留給用戶 Jar 的空間非常少,所以另外制作了一個高壓縮比版本,使用壓縮比更高的 brotli 算法進行壓縮,壓縮后的大小為 32.7MB。然后在運行時使用 initializer 進行解壓,解壓耗時大約為 3.7 S。

看完上述內容,你們掌握如何進行 MacOS 下的項目開發(fā)的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注丸趣 TV 行業(yè)資訊頻道,感謝各位的閱讀!

正文完
 
丸趣
版權聲明:本站原創(chuàng)文章,由 丸趣 2023-08-25發(fā)表,共計2697字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發(fā)布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 梓潼县| 阜康市| 上犹县| 泉州市| 太湖县| 青州市| 五大连池市| 元阳县| 乐业县| 甘南县| 千阳县| 甘孜县| 武穴市| 墨玉县| 德格县| 喀什市| 西乌珠穆沁旗| 安溪县| 丹棱县| 鲜城| 依安县| 海伦市| 越西县| 陇西县| 泽州县| 普兰店市| 广东省| 英山县| 景德镇市| 陆丰市| 沂南县| 长乐市| 兰西县| 墨江| 乌鲁木齐县| 格尔木市| 固原市| 庆安县| 筠连县| 曲沃县| 陇南市|