可供創(chuàng)業(yè)團(tuán)隊(duì)技術(shù)開(kāi)發(fā)參考的十個(gè)觀點(diǎn)

上次寫(xiě)了一篇博文大家很喜歡狮暑,但是主題范圍偏大魏割,且偏理論庭呜,這篇博文說(shuō)說(shuō)純技術(shù)方面的一些想法滑进,對(duì)于一個(gè)互聯(lián)網(wǎng)創(chuàng)業(yè)公司來(lái)說(shuō),有這幾個(gè)特點(diǎn):(1)什么都要求快募谎,這個(gè)快也許并非來(lái)自用戶扶关,而來(lái)自于自己,比如恨不得開(kāi)發(fā)一天就開(kāi)發(fā)一個(gè)新功能(2)變化快数冬,比如一個(gè)想法落實(shí)到開(kāi)發(fā)节槐,可能會(huì)有很多變化(3)資源稀缺性,資源就是時(shí)間拐纱、金錢和人力成本铜异,對(duì)于創(chuàng)業(yè)公司來(lái)說(shuō),有效的花費(fèi)資源本身就很重要秸架,看看多少創(chuàng)業(yè)公司都是胡亂花錢而撐不下去的揍庄,而對(duì)應(yīng)的技術(shù)上就是能省則省。

針對(duì)這三個(gè)主要特點(diǎn)东抹,創(chuàng)業(yè)公司在技術(shù)使用的策略上有什么準(zhǔn)則呢蚂子?個(gè)人認(rèn)為就是“簡(jiǎn)單化“,當(dāng)然這個(gè)簡(jiǎn)單是建立在理性分析的基礎(chǔ)上的府阀。技術(shù)人員有個(gè)通病缆镣,認(rèn)為技術(shù)實(shí)現(xiàn)越復(fù)雜,越膨大试浙,越全面就越能體現(xiàn)技術(shù)水平董瞻,這是非常錯(cuò)誤的一個(gè)觀點(diǎn),衡量技術(shù)水平的唯一標(biāo)準(zhǔn)其實(shí)就是“是否有效支撐業(yè)務(wù)發(fā)展”田巴,要看結(jié)果論钠糊,比如說(shuō)開(kāi)發(fā)速度快,后期問(wèn)題少壹哺,假如能做到這些抄伍,那么這個(gè)技術(shù)團(tuán)隊(duì)就是牛逼的。

而提倡簡(jiǎn)單化的理論管宵,就會(huì)讓你從另外個(gè)角度去審視技術(shù)本身截珍,下面的一些技術(shù)使用建議也許看上去并不高大上攀甚,好像每個(gè)人都能明白,但假如能有效的實(shí)行岗喉,在創(chuàng)業(yè)初期能夠解決大部分的技術(shù)問(wèn)題秋度。

使用云服務(wù)器

對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)來(lái)說(shuō),并不知道你未來(lái)用戶有多少钱床,需要使用多少服務(wù)器資源(Web 服務(wù)器荚斯,DB 服務(wù)器 等等)并不好衡量,而云服務(wù)器的可擴(kuò)容性則能很好的滿足這個(gè)需求查牌,換句話說(shuō)創(chuàng)業(yè)初期使用云服務(wù)器能有效節(jié)省成本事期。

當(dāng)然云服務(wù)器的特點(diǎn)還不至這么多,它代表了一種開(kāi)發(fā)模式纸颜,這就是分層架構(gòu)兽泣,比如云服務(wù)器的類型有很多(云服務(wù)器、云緩存服務(wù)器懂衩、云數(shù)據(jù)庫(kù)服務(wù)器撞叨、云存儲(chǔ)服務(wù)器)金踪,正因?yàn)橛辛诉@樣的分層模式浊洞,讓你有了更好的選擇,假如自建服務(wù)器胡岔,很多技術(shù)團(tuán)隊(duì)可能會(huì)把 Web 服務(wù)器和 DB 服務(wù)器放一塊法希,從而帶來(lái)很多問(wèn)題。

另外云服務(wù)器也有沙箱功能靶瘸,在安全性上也有很好的保證苫亦。雖然可能很多人覺(jué)得現(xiàn)在云廠商做的不好或不安全,不過(guò)說(shuō)句實(shí)話你自己搞可能更差怨咪。

當(dāng)然使用云服務(wù)器也并不能說(shuō)明一定就省錢屋剑,這取決于你是是否真正了解系統(tǒng)以及其背后需要的資源。

重視你的數(shù)據(jù)存儲(chǔ)

先入為主诗眨,推薦 Mysql 存儲(chǔ)數(shù)據(jù)唉匾。

在設(shè)計(jì)上要盡量規(guī)范化,索引利用合理一點(diǎn)匠楚,因?yàn)閿?shù)據(jù)有個(gè)特點(diǎn)巍膘,假如前期設(shè)計(jì)不好,后期想重新調(diào)整結(jié)構(gòu)是非常痛苦的一件事情芋簿,原來(lái)公司某個(gè)產(chǎn)品峡懈,最重要的博文數(shù)據(jù)庫(kù)表(blog 表)有個(gè)字段存儲(chǔ)的是文章的具體內(nèi)容(content 字段),從而導(dǎo)致這個(gè)表非常龐大与斤,查詢性能和內(nèi)容非常不好控制肪康,就我了解到的情況是目前 content 字段還是沒(méi)有從 blog 表中拆分荚恶,這不僅僅是技術(shù)的問(wèn)題,對(duì)于一個(gè)在線的服務(wù)磷支,數(shù)據(jù)量很大的服務(wù)裆甩,做表結(jié)構(gòu)的調(diào)整是非常困難的,所以前期盡量設(shè)計(jì)好齐唆。

Mysql 主要的作用還是存儲(chǔ)嗤栓,雖然可以通過(guò) Sql 完成很多復(fù)雜的查詢,但是建議盡量少使用箍邮,否則性能會(huì)急劇下降茉帅,我?guī)啄昵傲私獾揭粋€(gè)爆款的產(chǎn)品,用戶量上來(lái)后锭弊,第一個(gè)壓垮她的就是數(shù)據(jù)庫(kù)堪澎,最大的原因就在于查詢非常不合理,做了非常多的聯(lián)合查詢味滞。

假如不合理使用 Mysql樱蛤,很多人會(huì)質(zhì)疑性能不行,其實(shí)這都是錯(cuò)覺(jué)剑鞍,我一直相信的一個(gè)原則就是昨凡,既然這么多人用,說(shuō)明必然有他的優(yōu)勢(shì)蚁署,我們要做的就是學(xué)會(huì)使用而不是抱怨便脊。

對(duì)于 Mysql 這樣的數(shù)據(jù)庫(kù),很重要的觀點(diǎn)就是備份和安全性光戈,剛工作的時(shí)候領(lǐng)導(dǎo)說(shuō)過(guò)這樣一句話哪痰,“代碼可以重構(gòu),但是數(shù)據(jù)不能丟久妆,所以在寫(xiě)操作數(shù)據(jù)程序的時(shí)候一定要慎重”晌杰,而 Mysql 是非常成熟的軟件,備份和安全性上有很多選擇筷弦。

另外一個(gè)觀點(diǎn)就是假如你并不知道數(shù)據(jù)量和訪問(wèn)量是多少肋演,開(kāi)始不要選擇分庫(kù)發(fā)表策略,也不要搞很多路由策略奸笤,盡量簡(jiǎn)單點(diǎn)惋啃。單表數(shù)據(jù)量在一百萬(wàn)級(jí)別,只要設(shè)計(jì)和使用上保持穩(wěn)健性监右,性能不是問(wèn)題边灭。

Mysql 的主輔同步本來(lái)是做備份用的,但是現(xiàn)在很多人多當(dāng)分布式查詢使用健盒,其實(shí)也能分擔(dān)很多查詢壓力绒瘦。

現(xiàn)在很多 Nosql 服務(wù)特別多称簿,比如 Redis ,對(duì)于創(chuàng)業(yè)公司來(lái)說(shuō)建議不要使用:

第一就是這些服務(wù)并不完全成熟惰帽,在使用上很需要有很多經(jīng)驗(yàn)憨降,尤其在備份和安全性上,在運(yùn)維上并不簡(jiǎn)單该酗,需要有極大的成本授药。

第二雖然它有很多有點(diǎn)是數(shù)據(jù)庫(kù)比不了的,但是還是那句話呜魄,它能做的 Mysql 也能做悔叽,對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)來(lái)說(shuō),上手簡(jiǎn)單和維護(hù)簡(jiǎn)單爵嗅,成本是優(yōu)先要考慮的娇澎。當(dāng)然假如應(yīng)用場(chǎng)景非常適合用 Nosql 這樣的服務(wù),還是要大膽的使用睹晒。

一定要有一個(gè)開(kāi)發(fā)框架

開(kāi)發(fā)框架在我看來(lái)有兩個(gè)最主要的作用趟庄,分別是規(guī)則和最佳實(shí)踐。

所謂規(guī)則就是框架定義了一些制度伪很,框架理論上不應(yīng)該讓你隨意寫(xiě)代碼戚啥,尤其在 PHP 語(yǔ)言中,由于太靈活了是掰,假如沒(méi)有一套框架去制約開(kāi)發(fā)者虑鼎,那么寫(xiě)出來(lái)的系統(tǒng)會(huì)很脆弱辱匿。

最佳實(shí)踐就是框架集成了很多優(yōu)秀的思想和功能键痛,要做的就是去合適的用,框架能夠解決分層的問(wèn)題匾七,能夠解決安全性的問(wèn)題絮短。

所以在創(chuàng)業(yè)團(tuán)隊(duì)一定要有一套開(kāi)發(fā)框架,但是在選擇上必須謹(jǐn)慎昨忆,不要選擇太難以理解的框架丁频,比如說(shuō) PHP 框架 Laravel ,對(duì)于使用者來(lái)說(shuō)需要具備很強(qiáng)的設(shè)計(jì)模式和 OOP 理解能力邑贴,沒(méi)有經(jīng)驗(yàn)就選擇簡(jiǎn)單易學(xué)的框架席里;第二個(gè)選擇框架不要選擇封裝太多的框架,舉 Jquery 的例子拢驾,很多人可能會(huì) Jquery 但不會(huì) JavaScript奖磁,所以選框架應(yīng)該選用接近開(kāi)發(fā)語(yǔ)言本質(zhì)的框架。

另外框架沒(méi)有絕對(duì)的好壞繁疤,一個(gè)創(chuàng)業(yè)團(tuán)隊(duì)能夠快速上手的框架就是好框架咖为,使用框架 20% 的功能即可秕狰,開(kāi)發(fā)人員喜歡過(guò)度的使用軟件,說(shuō)到開(kāi)發(fā)框架躁染,不要強(qiáng)迫開(kāi)發(fā)人員使用統(tǒng)一的 IDE鸣哀,只要最終代碼輸出標(biāo)準(zhǔn)一樣即可(比如 PHP 語(yǔ)言重要符合 PSR-2 即可)。

假如使用 Cache吞彤,必須有一個(gè)優(yōu)良的 Cache 管理器

在互聯(lián)網(wǎng)產(chǎn)品中我衬,可以說(shuō) Cache 為王,很多人不管三七二十一必須要使用 Cache饰恕,可個(gè)人覺(jué)得系統(tǒng)假如沒(méi)有瓶頸(這個(gè)詞需要好好理解)低飒,不一定需要使用 Cache,首先有容量資源成本懂盐,另外也會(huì)增加系統(tǒng)的復(fù)雜度褥赊,從而導(dǎo)致開(kāi)發(fā)和維護(hù)成本提高。

假如實(shí)在需要使用 Cache莉恼,一定要充分理解應(yīng)用場(chǎng)景拌喉,是 pull 式的 Cache,還是 push 式的 Cache 俐银,如何衡量 Cache 的效果尿背。

假如必須要使用 Cache ,一定要有一個(gè) Cache 管理器捶惜,什么意思呢田藐?對(duì)于技術(shù)人員來(lái)說(shuō),代碼在寫(xiě)的時(shí)候吱七,意識(shí)不到 Cache 的存在汽久,全部?jī)?yōu)雅的封裝了。而封裝能帶來(lái)開(kāi)發(fā)和維護(hù)成本的減低踊餐。

最重要的一點(diǎn)就是不要過(guò)度追求命中率這一指標(biāo)景醇,從而把代碼搞的非常復(fù)雜,比如使用 Memcached吝岭,可以基于 Sql 查詢語(yǔ)句做 Cache 三痰,多采用 pull 的方式,過(guò)期時(shí)間可以設(shè)置短一點(diǎn)(意思就是不要主動(dòng)的去更新 Cache)窜管。另外一種使用方式就是將數(shù)據(jù)庫(kù)的聯(lián)合查詢的結(jié)果主動(dòng)放入到 Cache 中散劫。

盡量異步化

異步化是一種開(kāi)發(fā)策略,對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)的產(chǎn)品來(lái)說(shuō)幕帆,資源有限的情況下获搏,沒(méi)有必要每個(gè)功能追求及時(shí)響應(yīng),比如說(shuō)現(xiàn)在很多 SNS 產(chǎn)品蜓肆,沒(méi)有必要評(píng)論數(shù)颜凯、點(diǎn)贊數(shù)及時(shí)更新谋币,排行榜也不用及時(shí)更新,假如什么功能和需求需要做到極致症概,對(duì)于開(kāi)發(fā)和時(shí)間是極大的挑戰(zhàn)蕾额。

所以對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)來(lái)說(shuō),請(qǐng)有效使用異步化彼城,舉簡(jiǎn)單的幾個(gè)例子:

(1)比如說(shuō)用戶點(diǎn)贊诅蝶,沒(méi)有必要程序即使響應(yīng)這個(gè)用戶有沒(méi)有點(diǎn)贊,直接將這個(gè)請(qǐng)求放入隊(duì)列募壕,這樣這個(gè)接口的響應(yīng)和吞吐能力就提升了调炬。

(2)每天博文訪問(wèn)的排行榜,沒(méi)必要查詢數(shù)據(jù)庫(kù)舱馅,每天或者每個(gè)間隔時(shí)間從數(shù)據(jù)庫(kù)中查詢出結(jié)果放入緩存即可缰泡,減少了多少數(shù)據(jù)庫(kù)的查詢。

日志系統(tǒng)

在互聯(lián)網(wǎng)應(yīng)用中代嗤,日志無(wú)處不在棘钞,操作系統(tǒng)運(yùn)行的日志,服務(wù)器的日志干毅,軟件的運(yùn)行日志宜猜,數(shù)據(jù)庫(kù)操作的日志,應(yīng)用程序日志硝逢,產(chǎn)品業(yè)務(wù)日志姨拥。這些日志是了解服務(wù)運(yùn)行狀況的最好的來(lái)源,在創(chuàng)業(yè)團(tuán)隊(duì)渠鸽,最忌諱系統(tǒng)出了問(wèn)題不知道如何分析問(wèn)題叫乌,產(chǎn)品人員需要一些數(shù)據(jù)卻拿不出,系統(tǒng)的歷史運(yùn)行狀況也完全一抹黑拱绑。

所以對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)來(lái)說(shuō)综芥,一定要重視日志,對(duì)于開(kāi)發(fā)人員來(lái)說(shuō)猎拨,在開(kāi)發(fā)框架中一般都有日志模塊,良好的定義好日志格式和含義屠阻。假如服務(wù)器眾多红省,可以使用一些分布式日志系統(tǒng)來(lái)搜集和壓縮日志,其實(shí) Linux 發(fā)行版自帶的 Syslog 其實(shí)非常好的一款軟件国觉。這樣從側(cè)面說(shuō)明我們不用尋找多少高大上的軟件吧恃,用好操作系統(tǒng)自帶的工具就很不錯(cuò)了。

監(jiān)控

有了日志麻诀,下個(gè)話題就是監(jiān)控痕寓,因?yàn)楸O(jiān)控都是基于日志的分析傲醉,確定合適的閥值,選擇是否報(bào)警呻率,所以對(duì)于技術(shù)團(tuán)隊(duì)來(lái)說(shuō)硬毕,有了日志就要充分的分析。而一套完善的監(jiān)控系統(tǒng)很重要礼仗,能夠?qū)ο到y(tǒng)的運(yùn)行狀況有更好的了解吐咳,主動(dòng)的去發(fā)現(xiàn)問(wèn)題,而不是等待用戶去投訴元践。

監(jiān)控的維度可以有很多韭脊,比如系統(tǒng)運(yùn)行的慢日志、資源調(diào)用的錯(cuò)誤率单旁、數(shù)據(jù)庫(kù)更新頻率突然飆升沪羔,某個(gè)接口訪問(wèn)數(shù)異常,寫(xiě)代碼其實(shí)很容易象浑,難的是如何知道系統(tǒng)出現(xiàn)異常背后的原因任内。

監(jiān)控軟件其實(shí)有很多,在使用的時(shí)候一定要精確定義閾值和閾值背后的含義融柬,比如說(shuō)我們公司也有監(jiān)控系統(tǒng)死嗦,可問(wèn)題出了后還是沒(méi)有通過(guò)監(jiān)控系統(tǒng)發(fā)現(xiàn),最后發(fā)現(xiàn)報(bào)警短信太多了粒氧,忽略了越除,運(yùn)維呵開(kāi)發(fā)人員對(duì)于報(bào)警短信也麻木了,所以說(shuō)使用監(jiān)控系統(tǒng)很簡(jiǎn)單外盯,正確使用則有難度摘盆。

Wiki 系統(tǒng)

Wiki 個(gè)人理解其實(shí)就是提倡寫(xiě)文檔,文檔的作用其實(shí)很多饱苟,如何寫(xiě)不重要孩擂,重要的是這個(gè)文檔的作用是干嘛的?能讓人明白嗎箱熬?

假如一個(gè)新員工來(lái)了类垦,看了文檔后,就知道系統(tǒng)包括了什么模塊城须,自己如何快速開(kāi)發(fā)蚤认,如何上線,這就是一個(gè)好文檔糕伐;

假如要優(yōu)化一個(gè)原有的服務(wù)砰琢,開(kāi)發(fā)人員不是通過(guò)代碼去找邏輯,而是通過(guò)文檔去了解大概的邏輯和包含的模塊,當(dāng)然文檔也不需要太詳細(xì)陪汽。

文檔是開(kāi)發(fā)人員和運(yùn)維人員之間的協(xié)作工具训唱,比如服務(wù)器的 IP 是多少,系統(tǒng)中資源的路徑和 IP 是多少(比如數(shù)據(jù)庫(kù)的域名挚冤、外部 API 的地址)况增,說(shuō)個(gè)簡(jiǎn)單的笑話,原來(lái)公司運(yùn)維人員維護(hù)了一百多個(gè) Memcached 端口你辣,最后發(fā)現(xiàn)找不到使用方是誰(shuí)了巡通,最后不得不發(fā)郵件讓大家認(rèn)領(lǐng),可大部分最后也沒(méi)人認(rèn)領(lǐng)舍哄,有了文檔這些問(wèn)題就能解決了宴凉。

文檔是開(kāi)發(fā)人員之間的協(xié)作工具,在創(chuàng)業(yè)團(tuán)隊(duì)表悬,變化太快了弥锄,大部分都是通過(guò)人與人之間的溝通,可溝通假如總是變化蟆沫,最后發(fā)現(xiàn)雙方理解的有偏差籽暇,浪費(fèi)了很多開(kāi)發(fā)時(shí)間,而約定的文檔能在一定程度上解決這問(wèn)題饭庞。

上面舉得例子就簡(jiǎn)單解釋了文檔的重要性戒悠,其實(shí)文檔代表了一種開(kāi)發(fā)思維,可以這么說(shuō)沒(méi)有文檔舟山,代表開(kāi)發(fā)混亂绸狐,有了文檔從側(cè)面也能大概看出代碼實(shí)現(xiàn)的是否合理,這才是文檔最重要的用戶累盗。

寫(xiě)文檔避免的幾個(gè)誤區(qū)寒矿,第一就是不要太遵循寫(xiě)作規(guī)則,能夠說(shuō)清楚就行若债,有些開(kāi)發(fā)人員不想寫(xiě)文檔的原因之一就是寫(xiě)文檔比寫(xiě)代碼還要求嚴(yán)格符相;
第二就是文檔一定要保持更新,比如說(shuō)一個(gè)功能上線初期是有文檔的蠢琳,后來(lái)代碼一直在迭代啊终,最后開(kāi)發(fā)人員發(fā)現(xiàn)文檔和代碼的邏輯完全不一樣,大家也就失去了看文檔的動(dòng)力挪凑,所以文檔最重要的就是要持續(xù)更新孕索;
第三文檔不要強(qiáng)制開(kāi)發(fā)人員去寫(xiě),也不用及時(shí)讓大家去更新躏碳,讓大家的約束少一點(diǎn)可能效果更好。

代碼構(gòu)建,部署菇绵,發(fā)布系統(tǒng)

對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)來(lái)說(shuō)肄渗,假如一個(gè)新員工來(lái)了,需要快速能夠讓其進(jìn)行開(kāi)發(fā)咬最,所以需要有一套集成化的環(huán)境翎嫡,主要包括:代碼協(xié)作工具,代碼構(gòu)建永乌,代碼部署(開(kāi)發(fā)環(huán)境惑申、仿真環(huán)境、線上環(huán)境)翅雏。

為什么需要這套環(huán)境呢圈驼,目的就是為了縮短產(chǎn)品上線時(shí)間,讓技術(shù)人員專注于業(yè)務(wù)開(kāi)發(fā)望几,而不是被其他的一些因素困擾绩脆;第二個(gè)目的就是為了產(chǎn)品的質(zhì)量;下面分別說(shuō)下:

在很多開(kāi)發(fā)團(tuán)隊(duì)橄抹,有的時(shí)候出現(xiàn)問(wèn)題靴迫,都是開(kāi)發(fā)人員直接線上修改代碼,從而導(dǎo)致潛在的問(wèn)題楼誓;還有任何開(kāi)發(fā)人員都有線上的服務(wù)器的權(quán)限玉锌,導(dǎo)致安全性得不到保障;在產(chǎn)品上線后疟羹,測(cè)試人員說(shuō)怎么測(cè)試的時(shí)候沒(méi)有問(wèn)題主守,一上線就有問(wèn)題,開(kāi)發(fā)人員說(shuō)測(cè)試人員測(cè)試的環(huán)境不是線上環(huán)境阁猜;新來(lái)一個(gè)員工丸逸,一個(gè)星期都沒(méi)法搭建自己的開(kāi)發(fā)環(huán)境;反正很多此類問(wèn)題剃袍,從而也導(dǎo)致了時(shí)間的浪費(fèi)和質(zhì)量的下降黄刚,而更大的危害就是失去別人的信任。

所以有這樣一套環(huán)境很重要民效,不用特別的高大上憔维,下面就簡(jiǎn)單說(shuō)一說(shuō):

(1)首先要有一個(gè)代碼版本控制系統(tǒng),這個(gè)現(xiàn)在大部分都會(huì)使用畏邢,也不用特別介意用 SVN 還是 Git业扒。

(2)讓運(yùn)維人員寫(xiě)一個(gè)腳本,能夠配置開(kāi)發(fā)環(huán)境舒萎、仿真環(huán)境程储、線上環(huán)境(環(huán)境一定要隔離),說(shuō)真的,簡(jiǎn)單的 Shell 腳本就能完成章鲤。這里的環(huán)境不僅僅是服務(wù)器摊灭,包括數(shù)據(jù)庫(kù)資源等等,這時(shí)候大家也意識(shí)到 Wiki 的重要性了败徊,假如沒(méi)有文檔帚呼,不可能能搭建這樣的系統(tǒng)。

(3)代碼構(gòu)建系統(tǒng)皱蹦,其實(shí)在 PHP 這樣的高級(jí)語(yǔ)言中煤杀,本質(zhì)上不存在代碼構(gòu)建這一說(shuō),假如有特殊需要沪哺,也是可以通過(guò) Shell 腳本來(lái)實(shí)現(xiàn)沈自。

(4)代碼部署系統(tǒng),在開(kāi)發(fā)環(huán)境中凤粗,完全可以借助 IDE 和 FTP 將實(shí)時(shí)變動(dòng)的代碼同步到開(kāi)發(fā)環(huán)境中酥泛;假如代碼需要部署到線上,可以借助于 SVN 和 Rsync 這樣的工具將有差異的代碼快速發(fā)布到線上嫌拣,有問(wèn)題也支持快速的回滾柔袁。

假如可能的化由開(kāi)發(fā)人員做運(yùn)維

運(yùn)維這個(gè)崗位其實(shí)需要了解網(wǎng)絡(luò),Linux 异逐,Shell等相關(guān)知識(shí)捶索,而開(kāi)發(fā)人員本身也應(yīng)該掌握這些知識(shí),假如開(kāi)發(fā)人員不了解這些灰瞻,而只是會(huì)編碼腥例,那代表他并不真正會(huì)編碼,了解這些知識(shí)開(kāi)發(fā)人員可以更好的理解一個(gè)系統(tǒng)酝润,當(dāng)系統(tǒng)出現(xiàn)問(wèn)題的時(shí)候能夠從多方面去排查燎竖,更好的維護(hù)。

在我工作的這么多年中要销,開(kāi)發(fā)崗位和運(yùn)維崗位總是不能很好的協(xié)作构回,出現(xiàn)問(wèn)題的時(shí)候開(kāi)發(fā)人員說(shuō)這是網(wǎng)絡(luò)問(wèn)題,是運(yùn)維的服務(wù)器不夠疏咐,或者說(shuō)數(shù)據(jù)庫(kù)響應(yīng)慢纤掸;而運(yùn)維人員則更痛苦,你開(kāi)發(fā)人員寫(xiě)的什么程序啊浑塞,數(shù)據(jù)庫(kù)全是聯(lián)合查詢借跪,導(dǎo)致數(shù)據(jù)庫(kù)性能嚴(yán)重下降∽煤荆或者說(shuō)上線一個(gè)項(xiàng)目我們啥也不知道掏愁,你讓我們?cè)趩徇\(yùn)維歇由;出現(xiàn)這些問(wèn)題的原因在于雙方對(duì)于對(duì)方掌握的技術(shù)領(lǐng)域不了解,互相不理解或者不明白對(duì)方的職責(zé)托猩,而這些會(huì)導(dǎo)致整個(gè)產(chǎn)品和系統(tǒng)的穩(wěn)定性出現(xiàn)很大的問(wèn)題印蓖。

所以對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)來(lái)說(shuō)辽慕,假如技術(shù)能力足夠京腥,運(yùn)維工作盡量由開(kāi)發(fā)人員來(lái)做,當(dāng)然這里的運(yùn)維可能更多的是產(chǎn)品運(yùn)維的角色(在大企業(yè)溅蛉,運(yùn)維崗位的分工也越來(lái)越明確)公浪,具體的工作比如說(shuō)安裝軟件開(kāi)發(fā)包,進(jìn)行 Nginx船侧、PHP 配置欠气,切割日志,這些工作本身也不復(fù)雜镜撩,開(kāi)發(fā)人員假如能夠掌握好预柒,對(duì)于系統(tǒng)的維護(hù)是由極大的好處的,另外潛意識(shí)告訴開(kāi)發(fā)人員袁梗,出現(xiàn)問(wèn)題沒(méi)有人能依賴宜鸯,代碼和環(huán)境需要你自己去攻克。

以上說(shuō)的觀點(diǎn)大家可能發(fā)現(xiàn)了一個(gè)規(guī)律遮怜,這些都不涉及到人的因素(比如開(kāi)發(fā)人員素質(zhì)淋袖,協(xié)作能力),大家只要遵守就能很好的完成锯梁,而完成這些即碗,就能解決軟件開(kāi)發(fā)中的大部分問(wèn)題,讓你系統(tǒng)更穩(wěn)健陌凳,讓你的開(kāi)發(fā)更快速剥懒,讓你的成本更低。對(duì)于創(chuàng)業(yè)團(tuán)隊(duì)開(kāi)發(fā)人員來(lái)說(shuō)合敦,不要高度追求技術(shù)的高大上初橘,有效解決問(wèn)題很重要。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蛤肌,一起剝皮案震驚了整個(gè)濱河市壁却,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌裸准,老刑警劉巖展东,帶你破解...
    沈念sama閱讀 212,454評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異炒俱,居然都是意外死亡盐肃,警方通過(guò)查閱死者的電腦和手機(jī)爪膊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)砸王,“玉大人推盛,你說(shuō)我怎么就攤上這事∏澹” “怎么了耘成?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,921評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)驹闰。 經(jīng)常有香客問(wèn)我瘪菌,道長(zhǎng),這世上最難降的妖魔是什么嘹朗? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,648評(píng)論 1 284
  • 正文 為了忘掉前任师妙,我火速辦了婚禮,結(jié)果婚禮上屹培,老公的妹妹穿的比我還像新娘默穴。我一直安慰自己,他們只是感情好褪秀,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布蓄诽。 她就那樣靜靜地躺著,像睡著了一般溜歪。 火紅的嫁衣襯著肌膚如雪若专。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,950評(píng)論 1 291
  • 那天蝴猪,我揣著相機(jī)與錄音调衰,去河邊找鬼。 笑死自阱,一個(gè)胖子當(dāng)著我的面吹牛嚎莉,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播沛豌,決...
    沈念sama閱讀 39,090評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼趋箩,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了加派?” 一聲冷哼從身側(cè)響起叫确,我...
    開(kāi)封第一講書(shū)人閱讀 37,817評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎芍锦,沒(méi)想到半個(gè)月后竹勉,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,275評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡娄琉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評(píng)論 2 327
  • 正文 我和宋清朗相戀三年次乓,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了吓歇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,724評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡票腰,死狀恐怖城看,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情杏慰,我是刑警寧澤测柠,帶...
    沈念sama閱讀 34,409評(píng)論 4 333
  • 正文 年R本政府宣布,位于F島的核電站逃默,受9級(jí)特大地震影響鹃愤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜完域,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評(píng)論 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望瘩将。 院中可真熱鬧吟税,春花似錦、人聲如沸姿现。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,815評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)备典。三九已至异旧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間提佣,已是汗流浹背吮蛹。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,043評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留拌屏,地道東北人潮针。 一個(gè)月前我還...
    沈念sama閱讀 46,503評(píng)論 2 361
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像倚喂,于是被迫代替她去往敵國(guó)和親每篷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,846評(píng)論 25 707
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理端圈,服務(wù)發(fā)現(xiàn)焦读,斷路器,智...
    卡卡羅2017閱讀 134,637評(píng)論 18 139
  • 時(shí)間:2017年7月21日 天氣:晴 7月的上海舱权,可能受到太陽(yáng)的獨(dú)愛(ài)矗晃,顯得格外的熱,夜晚的來(lái)臨刑巧,卻沒(méi)有帶來(lái)清涼喧兄。 ...
    愛(ài)Loli的檸檬閱讀 134評(píng)論 0 0
  • 自從上次偶然拿掉耳機(jī)慢跑細(xì)雨中无畔,徹底享受了一次單純跑步的快感后,漸漸愛(ài)上了這種純粹的感覺(jué)吠冤,接下來(lái)的幾次跑步都沒(méi)有再...
    一顆獼猴呆閱讀 633評(píng)論 9 10
  • 生活一天一天過(guò)得太快了浑彰,很多東西還沒(méi)來(lái)得及做,這一天就已經(jīng)過(guò)去了拯辙!時(shí)間由秒針走著走著就變成了分針郭变,分針走著走著就變...
    呆小寶0c0閱讀 189評(píng)論 0 1