精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

框架組件,究竟要不要自研?

開發(fā) 開發(fā)工具 架構(gòu)
15年加盟58到家后,框架/組件/基礎(chǔ)服務(wù)/技術(shù)平臺,正好也是自己負(fù)責(zé)范圍的一部分,故談一談自己的想法。

很多朋友問我:框架組件,究竟要不要自研?究竟要不要建設(shè)自研技術(shù)體系。

15年加盟58到家后,框架/組件/基礎(chǔ)服務(wù)/技術(shù)平臺,正好也是自己負(fù)責(zé)范圍的一部分,故談一談自己的想法。

[[352603]]

為什么早期不建議自研?

早期研發(fā)人數(shù)較少,公司也不確定能走多遠(yuǎn),業(yè)務(wù)相對簡單,業(yè)務(wù)以“快速迭代”為最高優(yōu)先級,此時一般會選擇“自己熟悉的技術(shù)”作為選型:

  • 研發(fā)語言:熟PHP選PHP,熟Java選Java
  • 數(shù)據(jù)庫:熟MySQL選MySQL,熟SQL-server選SQL-server
  • 框架組件:熟Ruby on Rails選ROR,熟ThinkPHP選ThinkPHP,熟Spring boot才選

此時千萬不要糾結(jié)選型,選自己熟悉的,業(yè)務(wù)以快速迭代為最優(yōu)先,公司得先生存下來。

多說一句,此時對于技術(shù)合伙人的技術(shù)視野就有一定要求,如果早期方向不對,等公司發(fā)展若干年,數(shù)據(jù)量并發(fā)量上漲很多倍,成本以及未來的技術(shù)應(yīng)對恐怕會有麻煩。

58同城早期選型是微軟技術(shù)體系,后來數(shù)據(jù)量增大,并發(fā)量增大,機(jī)器數(shù)據(jù)庫越來越多,性能扛不住,成本也扛不住(你猜一個SQL-server的licence一年多少錢?),后來CTO帶領(lǐng)大家轉(zhuǎn)型開源陣營,雖然陣痛了1-2年,但長遠(yuǎn)來說,絕對是正確的決策。

如今,如果你再創(chuàng)業(yè),選云,選LAMP或者Spring,八成不會走太大的彎路。

隨著規(guī)模的擴(kuò)大,為什么要控制技術(shù)棧?

隨著業(yè)務(wù)越來越復(fù)雜,研發(fā)人數(shù)越來越多,如果每個leader都選擇自己擅長的框架,就會出現(xiàn)這樣的情況:

  • 站點(diǎn)框架,team A用著SSH,team B用著Spring+SpringMVC+Mybatis;
  • 服務(wù)框架,team C用著REST,team D用著dubbo,team E用著thrift;
  • 數(shù)據(jù)庫訪問,team X用著mybatis,team Y用著DAO,team Z用著jdbc;

對于整體而言,跨部門的調(diào)用越來越麻煩,重復(fù)造的輪子越來越多,技術(shù)效率會逐步降低,研發(fā)+測試+運(yùn)維成本都越來越高。

第一個觀點(diǎn):即使不自研,技術(shù)棧也請盡量統(tǒng)一。

統(tǒng)一了技術(shù)棧,為什么建議淺淺的封裝一層?

統(tǒng)一了技術(shù)棧以后,如果不封裝,redis官方Java客戶端Jedis可能有這樣一些接口:

  1. String Memcache::get(String key) 
  2. String Memcache::set(String key, String value) 
  3. String Memcache::del(String key) 

淺淺的封裝一層,會變成這樣:

  1. String 58DaojiaKV::get(String key) { 
  2.          String result = Memcache::get(key); 
  3.          return result; 
  4. String 58DaojiaKV::set(String key, String value) { 
  5.          String result = Memcache::set(key, value); 
  6.          return result; 
  7. String 58DaojiaKV::del(String key) { 
  8.          String result = Memcache::del(key); 
  9.          return result; 

這有什么好處呢?

(1)對上游屏蔽底層實現(xiàn)的細(xì)節(jié),調(diào)用方不用關(guān)注緩存是memcache還是redis,調(diào)用方只關(guān)注58DaojiaKV;

(2)底層變化的時候,對上游透明,當(dāng)memcache不能滿足需求,要切換為redis時,所有調(diào)用方不需要大的變化,升級一個最新的58DaojiaKV即可,58DaojiaKV的接口不變,實現(xiàn)變?yōu)椋?/p>

  1. String 58DaojiaKV::get(String key) { 
  2.          String result = Jedis::get(key); 
  3.          return result; 
  4. String 58DaojiaKV::set(String key, String value) { 
  5.          String result = Jedis::set(key, value); 
  6.          return result; 
  7. String 58DaojiaKV::del(String key) { 
  8.          String result = Jedis::del(key); 
  9.          return result; 

(3)統(tǒng)一實現(xiàn)一些通用的功能,就不需要每一個上游升級了,例如,要實現(xiàn)一個緩存訪問時間統(tǒng)計的功能,所有調(diào)用方不需要大的變化,升級一個最新的58DaojiaKV即可:

  1. String 58DaojiaKV::get(String key) { 
  2.          Long startTime = now(); 
  3.          String result = Jedis::get(key); 
  4.          Long endTime = now(); 
  5.          reportKVTime(startTime- endTime); 
  6.          return result; 
  7. String 58DaojiaKV::set(String key, String value) { 
  8.          Long startTime = now(); 
  9.          String result = Jedis::set(key, value); 
  10.          Long endTime = now(); 
  11.          reportKVTime(startTime- endTime); 
  12.          return result; 
  13. String 58DaojiaKV::del(String key) { 
  14.          Long startTime = now(); 
  15.          String result = Jedis::del(key); 
  16.          Long endTime = now(); 
  17.          reportKVTime(startTime- endTime); 
  18.          return result; 

同理,如果要實現(xiàn)統(tǒng)一的告警,調(diào)用鏈跟蹤,SQL執(zhí)行時間,也可以用類似的方法。

第二個觀點(diǎn):第三方庫,不但要統(tǒng)一,還可以淺淺的封裝一層,預(yù)留未來的擴(kuò)展性。

隨著規(guī)模的進(jìn)一步擴(kuò)大,為什么需要適當(dāng)?shù)脑煲恍┹喿?

業(yè)務(wù)進(jìn)一步發(fā)展,研發(fā)團(tuán)隊進(jìn)一步擴(kuò)張,雖然使用了統(tǒng)一的技術(shù)棧,但不同研發(fā)團(tuán)隊的痛點(diǎn)是極其類似的:

  • 有站點(diǎn),監(jiān)控服務(wù)的可用性,處理時間監(jiān)控需求;
  • 有告警需求;
  • 有自動化發(fā)布,自動化運(yùn)維需求;
  • 有服務(wù)治理,服務(wù)自動發(fā)現(xiàn)需求;
  • 有調(diào)用鏈跟蹤需求;
  • 有SQL監(jiān)控需求;
  • 有系統(tǒng)層面數(shù)據(jù)收集與可視化展現(xiàn)的需求;

此時,開源的框架可能滿足不了需求了:

  • 開源框架/組件太重了,我們需要的可能只是一個輕量級的框架/組件;
  • 開源框架/組件,只能滿足我們的一部分需求;
  • 不了解開源框架/組件的設(shè)計理念,要二次開發(fā)成本更高(維護(hù)dubboX的同學(xué),維護(hù)數(shù)據(jù)庫中間件Atlas的同學(xué)可以出來說兩句);
  • 有些通用的需求是和業(yè)務(wù)緊密結(jié)合的,開源框架/組件可能滿足不了;

此時,如果技術(shù)實力具備,可以統(tǒng)一研發(fā)一些框架和組件,解決所有技術(shù)團(tuán)隊的通用痛點(diǎn),滿足所有技術(shù)團(tuán)隊的通用需求。

第三個觀點(diǎn):適當(dāng)造一些輪子。

總結(jié)

框架組件,是否需要自研?初期建議:不自研,用熟悉的,業(yè)務(wù)快速迭代為優(yōu)先,需要一定技術(shù)視野。

長遠(yuǎn)建議:

  • 統(tǒng)一技術(shù)棧;
  • 淺淺封裝一層;
  • 適當(dāng)造輪子;

【本文為51CTO專欄作者“58沈劍”原創(chuàng)稿件,轉(zhuǎn)載請聯(lián)系原作者】

戳這里,看該作者更多好文

 

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2018-01-24 07:58:47

框架組件技術(shù)棧開源

2024-09-30 05:38:48

2015-07-15 10:25:44

SDN物理交換機(jī)

2019-10-23 20:19:26

Python 開發(fā)編程語言

2021-11-24 22:39:03

手機(jī)系統(tǒng)功能

2012-03-16 14:23:00

框架

2012-03-16 14:23:00

框架

2025-03-24 09:20:00

架構(gòu)分布式ID開發(fā)

2013-11-29 14:04:42

2017-11-20 09:00:43

跳槽職場精英年終獎

2023-10-06 12:04:41

ORM關(guān)系型數(shù)據(jù)庫

2021-02-21 09:09:24

GoGOPATH代碼

2014-12-09 09:13:46

BaaS云備份備份即服務(wù)

2018-07-12 09:04:15

RAID陣列硬盤

2021-10-21 09:41:43

互聯(lián)網(wǎng)數(shù)據(jù)技術(shù)

2018-12-06 14:40:07

蘋果iOS 12.1.1 iOS 12

2018-11-19 09:02:53

垃圾代碼辭職入職

2020-04-20 09:32:31

VIM程序員編程

2015-10-21 16:27:45

公務(wù)員國考大數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

99久久国产综合精品五月天喷水| 91精品久久香蕉国产线看观看| 亚洲一区二区观看| 久久婷婷五月综合色丁香| 《视频一区视频二区| 国产66精品久久久久999小说| 秋霞精品一区二区三区| 天天揉久久久久亚洲精品| 精品国精品自拍自在线| 日本熟妇人妻中出| 超碰在线网址| 2023国产一二三区日本精品2022| 国产精品爽爽爽爽爽爽在线观看| 国产精品丝袜一区二区| 蜜桃tv一区二区三区| 欧美一区二区美女| 日韩精品无码一区二区三区免费| 国产激情视频在线| 久久综合中文字幕| 5g国产欧美日韩视频| 男人日女人网站| 欧美午夜a级限制福利片| 亚洲天堂av在线免费| 亚洲av综合色区无码另类小说| 国产精品粉嫩| 伊人久久男人天堂| 一区二区三区四区国产| 无码精品人妻一区二区三区影院| 日韩福利视频导航| 久久乐国产精品| 91香蕉国产视频| 少妇精品导航| 国产主播性色av福利精品一区| 成人免费三级在线| 国产男人精品视频| 日本视频在线观看免费| 欧美区日韩区| 久久精品电影网站| 色哟哟精品观看| 国产一区二区三区亚洲| 欧美一区二区免费观在线| 三上悠亚av一区二区三区| 欲香欲色天天天综合和网| 亚洲精品视频在线观看网站| 亚洲午夜精品久久久中文影院av| 男人的天堂在线视频| 成人激情小说网站| 91久久爱成人| jlzzjlzzjlzz亚洲人| 麻豆精品久久精品色综合| 国产成人福利视频| 国产精品免费无遮挡无码永久视频| 国语自产精品视频在线看8查询8| 欧美日韩第一页| 美国黄色小视频| 91tv精品福利国产在线观看| 日韩有码视频在线| 超碰人人干人人| 国产一区二区欧美| 尤物九九久久国产精品的分类| 伊人网在线视频观看| 羞羞色国产精品网站| 亚洲精品98久久久久久中文字幕| 黄色aaaaaa| 国产剧情一区二区在线观看| 欧美一区二区三区免费在线看| 婷婷中文字幕在线观看| 久久99成人| 日韩精品一区二区在线观看| 亚洲视频 中文字幕| 国产精品中文字幕制服诱惑| 日韩黄色高清视频| 精品无码国产污污污免费网站| 国产一区二区三区日韩精品| 一本色道久久88精品综合| 美女av免费看| 午夜欧美精品| 91av国产在线| 国产精品第6页| 久久99精品国产91久久来源| 1区1区3区4区产品乱码芒果精品| 免费av网站观看| 久久综合色一综合色88| 少妇精品久久久久久久久久| 日本三级视频在线播放| 亚洲精品高清在线| 欧美亚洲一二三区| www成人在线视频| 欧美精三区欧美精三区| 欧美熟妇精品一区二区| 综合综合综合综合综合网| 一本久久综合亚洲鲁鲁| 全程偷拍露脸中年夫妇| 免费亚洲一区| 国产日韩精品在线观看| 欧美一级在线免费观看| 久久伊人中文字幕| 青青草原国产免费| 美女网站在线看| 欧美日韩精品久久久| av不卡中文字幕| 狠狠做深爱婷婷综合一区| 精品中文字幕视频| 日本a级c片免费看三区| 国产精品自拍在线| 日本一区二区免费看| av小次郎在线| 一本到高清视频免费精品| 天天久久综合网| 亚洲ab电影| 色综合久综合久久综合久鬼88 | 思热99re视热频这里只精品| 日韩中文字幕国产| 日韩欧美亚洲一区二区三区| 奇米综合一区二区三区精品视频| 国产二区不卡| 日本高清视频在线播放| 欧美性猛交xxxx黑人| 永久看看免费大片| 波多野结衣在线观看一区二区三区| 久久久久久久久久国产| 亚洲中文一区二区三区| 26uuu精品一区二区在线观看| 波多野结衣三级在线| 日韩免费小视频| 亚洲精品国偷自产在线99热| 日本妇女毛茸茸| 久久99热这里只有精品| 日本在线播放一区| 日本在线高清| 亚洲成人久久久| a级黄色片免费看| 美女免费视频一区二区| 日本一区视频在线观看| 小草在线视频免费播放| 欧美精品一区二区精品网| 国产又黄又爽又无遮挡| 精品亚洲欧美一区| 亚洲一区二区三区乱码| 天天免费亚洲黑人免费| 日韩精品日韩在线观看| 国产精品美女毛片真酒店| 国产成人在线观看| 久久久国产精华液999999| 国产成人亚洲一区二区三区| 亚洲欧美视频在线| 国产精品久久久久久久久久久久久久久久久 | 69xxx在线| 欧美另类变人与禽xxxxx| 国产探花视频在线播放| 视频在线观看一区二区三区| 免费h精品视频在线播放| www中文字幕在线观看| 日韩精品在线一区二区| 久久精品免费av| 成人一区二区三区视频在线观看| 日韩国产成人无码av毛片| 7777精品| 欧美一区二区三区……| 免费在线视频你懂得| 日本黄色一区二区| 欧美丰满老妇熟乱xxxxyyy| 日韩不卡在线观看日韩不卡视频| 日韩精品不卡| 日韩专区视频| 欧美男插女视频| 人妻va精品va欧美va| 欧美日韩美女视频| av网在线播放| 加勒比av一区二区| www.欧美黄色| 婷婷综合成人| 国产精品久久激情| 中文国产字幕在线观看| 精品国产三级电影在线观看| 日韩av电影网| 欧美极品少妇xxxxⅹ高跟鞋| 久国产精品视频| 欧美私人啪啪vps| 久久久久久久久久久一区| 日本精品另类| 久久色精品视频| 日韩在线观看视频一区| 欧美性xxxx在线播放| 免费成人美女女在线观看| 国产91精品一区二区麻豆网站| 六月丁香激情网| 色爱综合网欧美| 国产精选一区二区| 在线国产成人影院| 欧美国产日韩在线| 国内三级在线观看| 日韩一区二区三区在线观看| 亚洲另类在线观看| 亚洲欧洲日韩女同| 中文字幕一区二区三区人妻不卡| 老司机精品视频在线| 国产在线播放观看| 国产精品黑丝在线播放| 国产一区二区中文字幕免费看| 国产综合色在线观看| 久久久久久久久国产精品| 在线观看av的网站| 日韩电影大片中文字幕| 国产色综合视频| 色8久久人人97超碰香蕉987| 18精品爽视频在线观看| 中文字幕免费在线观看视频一区| 性高潮免费视频| 久久99蜜桃精品| 东京热加勒比无码少妇| 欧美日韩国产探花| 亚洲ai欧洲av| 婷婷综合成人| 国产精品一区二区av| 欧美一区二区三区婷婷| 日本久久亚洲电影| xxxx成人| 欧美—级高清免费播放| 快射av在线播放一区| 亚洲系列中文字幕| 天堂中文在线8| 精品国产一区二区三区四区四 | 涩涩av在线| 欧美激情免费在线| 免费黄色网页在线观看| 国产午夜精品视频免费不卡69堂| 黄色av免费观看| 日韩欧美中文字幕一区| 国产精品丝袜黑色高跟鞋| 欧美性猛交xxxx黑人交| 久久久久久久久久成人| 婷婷夜色潮精品综合在线| 久久久久久久久久久网| 亚洲激情在线播放| 亚洲欧美精品久久| 中文字幕国产一区二区| 韩国女同性做爰三级| 久久综合久久99| 草草影院第一页| 久久伊99综合婷婷久久伊| 久久亚洲AV成人无码国产野外| 成人a区在线观看| 久久精品aⅴ无码中文字字幕重口| 国产激情一区二区三区| 亚洲女人在线观看| 国产一区二区三区视频在线播放| 天堂在线中文在线| 国产乱人伦精品一区二区在线观看| 做a视频在线观看| 极品少妇一区二区| 天天色天天综合网| 国产一区二区福利视频| www.偷拍.com| 国产91精品露脸国语对白| 国产精品亚洲一区二区无码| 成人精品国产一区二区4080| 久久久久亚洲无码| 99久久精品免费| 六月婷婷七月丁香| 国产欧美一区二区精品秋霞影院| 亚洲ⅴ国产v天堂a无码二区| 中文字幕欧美区| 波多野结衣不卡视频| 亚洲一区欧美一区| 国产又爽又黄的视频| 色婷婷久久99综合精品jk白丝| 天堂网一区二区| 欧美日本一区二区| 亚洲av无码一区二区三区性色| 日韩欧美成人午夜| 香蕉视频网站在线| 伊人伊成久久人综合网站| 麻豆系列在线观看| 久久久女女女女999久久| 欧亚在线中文字幕免费| 国产精品久久久久aaaa九色| 亚洲精品三区| 国产精品9999久久久久仙踪林| 日本国产精品| 一区二区国产日产| 欧美日韩三级| 国产v亚洲v天堂无码久久久| 激情久久五月天| 一女三黑人理论片在线| 中文字幕电影一区| 久久99久久久| 91福利在线免费观看| 国产女人高潮毛片| 日韩av在线网址| 久草免费在线| 3344国产精品免费看| 玖玖精品在线| 国产一区二区在线网站| 日韩一区电影| 国产中文字幕在线免费观看| 韩国三级在线一区| 国产一级二级在线观看| 亚洲欧洲综合另类| 影音先锋在线国产| 日韩免费一区二区三区在线播放| 日韩av成人| 久久成人一区二区| 写真福利精品福利在线观看| 亚洲综合在线中文字幕| 国产麻豆一区二区三区精品视频| 国产精品一区在线免费观看| 视频在线观看91| 少妇被狂c下部羞羞漫画| 国产精品久久久久久久久免费桃花 | 456亚洲影院| 日韩视频1区| 亚洲欧洲久久| 亚洲免费中文| 亚洲v在线观看| 国产精品国模大尺度视频| 中文字幕第15页| 精品少妇一区二区| 在线免费观看黄色av| 欧美一区二区影院| 91精品短视频| 99re6这里有精品热视频| 六月婷婷色综合| 国产精品20p| 黑人巨大精品欧美一区二区| 亚洲爱爱综合网| 久久久国产成人精品| 欧美美女被草| 亚洲不卡一卡2卡三卡4卡5卡精品| 国产精品九九| 黑人无套内谢中国美女| 亚洲少妇最新在线视频| 中文字幕丰满人伦在线| 亚洲网站视频福利| 亚洲优女在线| 久久国产欧美精品| 亚洲精一区二区三区| 亚洲欧洲国产视频| 一区二区三区在线免费播放| 国产免费叼嘿网站免费| 久久久www成人免费精品| 日韩免费大片| 亚洲精品中字| 另类小说视频一区二区| 中国美女黄色一级片| 欧美日本一区二区在线观看| 在线免费观看黄色| 成人妇女淫片aaaa视频| 影视一区二区| 又黄又爽又色的视频| 一区二区三区在线免费播放 | 亚洲爽爆av| 一级黄色片播放| 国产999精品久久| 日韩精品一区二区av| 日韩成人av一区| 大胆人体一区二区| 亚洲国产另类久久久精品极度| 日本不卡一区二区三区| 最新黄色av网址| 欧美一区二区三区精品| 久久香蕉av| 久久国产精品 国产精品| 久久久久久婷| 国产wwwwxxxx| 日韩女优制服丝袜电影| 538视频在线| 欧美重口乱码一区二区| 麻豆freexxxx性91精品| 裸体武打性艳史| 精品国产在天天线2019| 在线看片福利| 亚洲巨乳在线观看| 国产精品一区二区久久不卡| 日韩精品人妻中文字幕| 国产亚洲美女精品久久久| 亚洲aⅴ网站| 91黄色在线看| 国产清纯白嫩初高生在线观看91 | 老熟妇仑乱一区二区av| 在线观看久久久久久| 日韩视频一二区| 国产裸体舞一区二区三区| 亚洲欧洲精品一区二区精品久久久| 99久久精品国产成人一区二区| 91高潮在线观看| 国产精品成人a在线观看| 日本在线不卡一区二区| 欧洲国产伦久久久久久久| 尤物在线网址| 日韩欧美亚洲日产国产| 国产精品一级在线| 欧美日韩a v| 久久久久久久一区二区| 欧美电影免费播放| 永久免费看mv网站入口78| 日韩一区二区三区高清免费看看| 亚洲性受xxx喷奶水| 日韩一级特黄毛片| 欧美国产日韩精品免费观看|