做為開發(fā)Spark的最主要公司,磚廠【Databircks】是如何開發(fā)的呢对竣?也是用SBT庇楞?還是用Maven?其實我們用的是Bazel否纬÷郎危可以腦補,一百多個人日以繼夜地往代碼庫里瘋狂扔代碼临燃。不用多久睛驳,代碼庫就相當(dāng)龐大了。 【Scala代碼的簡潔美是公認的膜廊,一行Scala代碼可以頂替n行Java代碼】乏沸。。爪瓜。但是蹬跃,Scala臭名昭著的編譯速度實在是無法忍受!C蝶缀!
于是乎辆苔,“名門之后”Haoyi Li【他是誰?扼劈!】與“磚廠元老”Ahir Reddy聯(lián)手,將我們的代碼庫編譯速度竟然從幾十分鐘縮減到幾秒7坡俊<龀场!【磚廠的磚家們歡欣鼓舞赊瞬,可以不用休息地往里面扔代碼了】
先看看磚廠當(dāng)前代碼庫的統(tǒng)計信息
- 1,000,000 lines of Scala code
- Split over 5500 source files
- In 600 modules (also known as Targets in Bazel)
- Deployed as a few dozen different services.