成立兩年用戶突破1500萬,全員工遠(yuǎn)程辦公、以開源為首選的小團(tuán)隊(duì)如何顛覆社交界?

C語言與CPP編程 2024-12-31 09:03

推薦關(guān)注↓


轉(zhuǎn)自:InfoQ

作者|Gergely Orosz、Elin Nilsson

譯者|核子可樂,策劃|冬梅

本文將帶大家深入了解一家全遠(yuǎn)程辦公、以開源為優(yōu)先方向的科技企業(yè),如何建立起極具市場競爭力的社交媒體平臺。包括同類小型團(tuán)隊(duì)能夠從 Bluesky 身上學(xué)到什么,又該如何超越體量桎梏、創(chuàng)造商業(yè)神話。

Bluesky 是一款前景光明的去中心化 Twitter 替代社交平臺。該公司雖然僅僅成立兩年,2021 年才從 Twitter 手中獲得 1300 萬美元資金,且直到今天也只擁有不足 20 名軟件工程師。該公司表示,Bluesky 的全球用戶數(shù)量已從 9 月份的 900 萬增加至近 1500 萬。

社交媒體研究員阿克塞爾·布倫斯 (Axel Bruns) 表示,該平臺為 Twitter X 提供了替代方案,包括一個更有效的系統(tǒng),用于屏蔽或暫停問題賬戶以及監(jiān)管有害行為。

他說:“對于那些想要獲得 Twitter 曾經(jīng)提供的那種社交媒體體驗(yàn),但又不想受到極右翼激進(jìn)主義、錯誤信息、仇恨言論、機(jī)器人和其他一切影響的人來說,它已經(jīng)成為一個避難所。”

“更為自由的 Twitter 社區(qū)現(xiàn)在確實(shí)已經(jīng)逃離了那里,并且似乎已經(jīng)大規(guī)模遷移到了 Bluesky。”

在本文中,我們將具體探討 Bluesky 團(tuán)隊(duì)的構(gòu)成與工程文化,具體包括:

  • 不同尋常的起點(diǎn)。上市企業(yè)很少資助可能成為其競爭對手的初創(chuàng)公司——但 Bluesky 卻做到了。

  • 團(tuán)隊(duì)構(gòu)成。其工程團(tuán)隊(duì)成員中擁有創(chuàng)業(yè)經(jīng)驗(yàn)的比例很高(約 70% 到 80%!),且?guī)缀醵紱]有加入過科技大廠。

  • 技術(shù)棧。Typescript、Go、ScyllaDB、SQLite、React+Expo。

希望通過本文,能幫助大家理解這十幾位工程師如何構(gòu)建并運(yùn)營起一款為千萬用戶產(chǎn)生巨大影響且長期保持快速增長的產(chǎn)品。隨著零利率融資紅利期的結(jié)束,這種規(guī)模小但效率高的工程團(tuán)隊(duì)越來越受到歡迎——相信未來“高效”軟件工程團(tuán)隊(duì)將成為整個行業(yè)的常態(tài)。

正文:

不同尋常的起點(diǎn)

Bluesky 于 2019 年以時任 Twitter 公司 CEO 的 Jack Dorsey 發(fā)布的一條標(biāo)志性推文,拉開了自己轟轟烈烈的發(fā)展序幕。

Twitter 計(jì)劃資助一支不超過五位開源架構(gòu)師、工程師和設(shè)計(jì)師組成的小型獨(dú)立團(tuán)隊(duì),旨在開發(fā)一套開放且去中心化的社交媒體標(biāo)準(zhǔn)體系。希望 Twitter 未來能夠成為這套標(biāo)準(zhǔn)的使用者。

申請人們紛紛向 Jack 發(fā)出私信,其中約十余位被邀請加入 Matrix 聊天室。Jack 在那里就討論內(nèi)容給出了進(jìn)一步思路,內(nèi)容如下:

團(tuán)隊(duì)的核心長期目標(biāo)是為公共對話建立一項(xiàng)持久且開放的協(xié)議。該協(xié)議不屬于任何一家組織,而是由盡可能多的組織參與貢獻(xiàn)。其誕生和發(fā)展應(yīng)當(dāng)與公共互聯(lián)網(wǎng)遵循相同的自然演進(jìn)原則。

Bluesky 公司 CEO Jay Graber 就是當(dāng)初小團(tuán)隊(duì)中的一員,其他成員還包括:

  • Jeremie Miller:可擴(kuò)展通訊與表示協(xié)議(XMPP)的積極貢獻(xiàn)者,該協(xié)議如今得到 WhatsApp、Kik Messenger 以及 Zoom 等主流應(yīng)用程序的采納。

  • Matthew Hodgson:Matrix 技術(shù)聯(lián)合創(chuàng)始人,這是一種用于去中心化、安全通信的開放協(xié)議。

  • Ian Preston:Peergos 聯(lián)合創(chuàng)始人,該平臺試圖構(gòu)建“下一代 Web”平臺,允許最終用戶控制自己的數(shù)據(jù)。他也是 Twitter 中的一位元老工程師。

可以看到,這支團(tuán)隊(duì)由多位去中心化消息傳遞協(xié)議的重量級人物和旨在推進(jìn)和發(fā)展 Web 技術(shù)的創(chuàng)業(yè)者們組成。

2020 年年中,Jay 提議撰寫一份關(guān)于現(xiàn)有去中心化社交網(wǎng)絡(luò)和技術(shù)生態(tài)的綜述報(bào)告。隨著研究工作的深入,聊天室中的人數(shù)逐漸增加到約 60 人。到 2020 年底,Twitter 在該小組中發(fā)出了建議征集請求,包括 Jay Graber 在內(nèi)的多位成員做出了回應(yīng)。

Twitter 在 2021 年組織了一場面試,希望選出 Bluesky 項(xiàng)目的負(fù)責(zé)人,并于當(dāng)年 8 月宣布 Jay 成功當(dāng)選:

Jay 將出任 Bluesky 團(tuán)隊(duì)負(fù)責(zé)人!恭喜對 Twitter 乃至全體社交媒體的去中心化探索邁出新的一步。現(xiàn)在我們可以著手編碼,加快先進(jìn)腳步了。

盡管 Jay 被任命為 Bluesky 團(tuán)隊(duì)負(fù)責(zé)人,但大家當(dāng)時還不清楚項(xiàng)目到底是要做些什么。

生而不凡

不同于以往項(xiàng)目,Bluesky 是以獨(dú)立組織的形式存在,而并非 Twitter 下轄的業(yè)務(wù)部門。大多數(shù)情況下,當(dāng)一家企業(yè)宣布為新計(jì)劃提供資金支持時,肯定會將其納入自家麾下。但 Bluesky 的情況則恰恰相反:Bluesky 從誕生之日起,就完全獨(dú)立于 Twitter 之外

Jay 自己花錢聘請了 Daniel Holmgren,并在敲定細(xì)節(jié)的同時著手設(shè)計(jì)原型方案。他們共同完善了 Jay 于 2018 年同技術(shù)顧問 whyrusleeping 共同撰寫的協(xié)議——其中的核心設(shè)計(jì)也一直延續(xù)到了 Bluesky 當(dāng)中。

該項(xiàng)目于 2021 年 12 月 31 日獲得批準(zhǔn),當(dāng)時 Twitter 向這支新成立的團(tuán)隊(duì)支付了 1300 萬美元巨款用以構(gòu)建 AT 協(xié)議,同時批準(zhǔn) Bluesky 完全獨(dú)立運(yùn)作。實(shí)際上,當(dāng)時 Twitter 其實(shí)提出過一個條件:“Twitter 對 Bluesky 的資助不受任何條件的限制,除了一個條件:Bluesky 必須研究并開發(fā)出能夠?qū)崿F(xiàn)開放及去中心化公共對話的技術(shù)。”

對于那幫花著投資者的錢、追求大膽商業(yè)愿景的風(fēng)投機(jī)構(gòu)來說,這樣的決策并不罕見。但是對 Twitter 這樣的上市企業(yè),以幾乎免費(fèi)的條款資助初創(chuàng)組織可就相當(dāng)新鮮了。這可能是由于 Jack 本人對該項(xiàng)目抱有濃厚興趣,同時也跟 Jay 對于項(xiàng)目核心使命的堅(jiān)持有關(guān)。用她自己的話來說:

“關(guān)于組織獨(dú)立性,我進(jìn)行了長達(dá)六個月的談判,并認(rèn)定作為 Twitter 子公司的身份殊不可行。Twitter 公司的行動速度太慢,我覺得如果因?yàn)轭I(lǐng)導(dǎo)層的傾向性而扭曲了 Bluesky 的理念,那么這個項(xiàng)目很可能會胎死腹中。歷史已經(jīng)反復(fù)證明了這一點(diǎn)。”

Jay 告訴我們,她之所以拿出六個月時間展開獨(dú)立性談判,就是不愿 Bluesky 成為 Twitter 管控下的子公司。Jay 認(rèn)為 Twitter 的行動速度太慢,年輕的 Bluesky 也很有可能被 Twitter 領(lǐng)導(dǎo)層出手砍掉。現(xiàn)在看來她的判斷極其準(zhǔn)確——2022 年 11 月馬斯克買下 Twitter,并旋即做出大刀闊斧的精簡。如果 Bluesky 真的存在,肯定也會成為被精簡的對象。

商業(yè)模式

在美國,大多數(shù)拿了風(fēng)投資金的企業(yè)都屬于營利性質(zhì)的有限責(zé)任公司。但 Bluesky 不是。這是一家 C 類公共利益公司(PBC),意味著其主要目標(biāo)在于追求“公共利益”、而非利潤。

這種差異使得 Bluesky 較之常規(guī)營利性企業(yè)擁有一定優(yōu)勢:他們不需要像上市企業(yè)那樣想方設(shè)法為股東提供回報(bào),也不需要直接宣傳營銷自己具備商業(yè)可行性的產(chǎn)品。相反,Bluesky 可以專注于“開發(fā)出能夠支撐去中心化公開對話的技術(shù),并推動其大規(guī)模采用。”

但這也帶來了風(fēng)險,因?yàn)槿绱艘粊砉揪筒恍枰诙唐谥畠?nèi)確定明確的業(yè)務(wù)策略。而眾所周知,策略是保障長期成功的重要前提。

我們帶著這種擔(dān)憂詢問了 Bluesky,畢竟如果專注于履行使命而非賺錢,那用戶憑什么信任這樣一項(xiàng)隨時可能燒光投資的服務(wù)?該團(tuán)隊(duì)做出了如下回應(yīng):

  • 采取與傳統(tǒng)社交媒體公司不同的激勵措施。由于 Bluesky 架構(gòu)的開放性,用戶不會被鎖定。無論他們使用的的是客戶端應(yīng)用程序還是用于消息饋送的算法,用戶都可以將 Bluesky 選為默認(rèn)選項(xiàng),或者隨時切換至其他供應(yīng)商。由于切換成本極低,因此 Bluesky 必須以能夠令用戶滿意的方式完善自身。另外,Twitter 在 2023 年禁止了第三方客戶端,理由是其無法提供廣告收益。

  • 探索更多增值付費(fèi)服務(wù)。為了不依賴于外部資金,Bluesky 也設(shè)定了銷售付費(fèi)服務(wù)的商業(yè)愿景。首先是與 Namecheap 合作出售定制域名,這也是 Bluesky 業(yè)務(wù)中的重要組成部分。現(xiàn)在,只要有人通過 namecheap 注冊一個域名,Bluesky 就能獲得一小筆傭金。

傳統(tǒng)社交媒體企業(yè)的現(xiàn)有貨幣化策略(例如出于廣告宣傳目的而出售用戶數(shù)據(jù))對于 Bluesky 來說也不太奏效。因此,他們需要找到新的變現(xiàn)方式。Bluesky 的開發(fā)者關(guān)系工程師 Emily Liu 觀察到了一種有趣的現(xiàn)象:

“我們正利用這段 時間探索哪些服務(wù)對于用戶更有價值,例如用戶可以通過 Bluesky 購買和管理自定義域名。我們正在徹底顛覆社交應(yīng)用的基本邏輯——與強(qiáng)調(diào)集中的傳統(tǒng)社交媒體巨頭,我們不會壟斷用戶數(shù)據(jù),因此也不會遵循傳統(tǒng)巨頭們的業(yè)務(wù)變現(xiàn)路徑。”

其實(shí)之前已經(jīng)出現(xiàn)不少走公益路線并獲得成功的案例,甚至不乏借此上市的公司。保險技術(shù)初創(chuàng)公司 Lemonada 就在 2020 年完成上市,此外教育初創(chuàng)公司 Coursera 和眼鏡公司 Warby Parker 都屬于公共利益性質(zhì)的組織。

團(tuán)隊(duì)構(gòu)成

如今,Bluesky 擁有約 40 名全職員工:

  • 17 人組成“核心”團(tuán)隊(duì),其中 12 名是開發(fā)人員。

  • 約 20 人負(fù)責(zé)支持和審核工作。

有趣的事實(shí):早期招聘的員工中沒有一人在 Twitter 工作過!(第一位任職過 Twitter 的員工到 2024 年才出現(xiàn)。)這著實(shí)令人意外,畢竟自 Bluesky 成立以來,Twitter 已經(jīng)解雇了旗下約 75% 的員工——難以理解為什么他們不考慮加入這家同根同源的社交媒體初創(chuàng)公司。

團(tuán)隊(duì)結(jié)構(gòu)

在核心工程團(tuán)隊(duì)中,每個人都專注于 Bluesky 開發(fā),具體劃分為:

  • 協(xié)議 / 后端與基礎(chǔ)設(shè)施:5 人,主要負(fù)責(zé) Atproto 存儲庫和 Indigo 存儲庫。分別為 Daniel Holmgren、Devin Ivy、Bryan Newbold、Matthieu 以及 Jaz。

  • 前端和應(yīng)用程序:5 人。他們的大部分編碼工作都在應(yīng)用代碼倉庫中完成。分別為 Paul Frazee、Eric Bailey、Dan Abramov、Hailey 以及 Samuel。

  • 審核 / 標(biāo)記:1 人,即 Foysal Ahamed 負(fù)責(zé)的 Ozone 服務(wù)。

  • 其他:5 人,分別為 CEO Jay Graber、業(yè)務(wù)增長負(fù)責(zé)人 Rose Wang、T&S 主管 Aaron Rodericks、技術(shù)顧問 whyrusleeping 以及開發(fā)者關(guān)系 / 發(fā)展負(fù)責(zé)人 Emily Liu。

我們無需加入 Bluesky 就能理解這樣一套簡潔的工程結(jié)構(gòu)。在對大多數(shù)公司進(jìn)行深入研究時,我們往往需要求助于現(xiàn)任或者前任員工才能理解其團(tuán)隊(duì)結(jié)構(gòu),但對于 Bluesky,我們只需看看 Bluesky 代碼倉庫中的項(xiàng)目,并將 GitHub 貢獻(xiàn)者跟他們的成果聯(lián)系一下即可!Bluesky 工程師們編寫的所有代碼都是公開的,這樣的透明度讓我真心感到震驚——當(dāng)然,是由衷贊賞的那種震驚。

異乎尋常的前創(chuàng)始人比例

“核心”團(tuán)隊(duì)中接近五分之四的成員都有過創(chuàng)業(yè)經(jīng)歷,這在初創(chuàng)公司中顯得極不尋常。當(dāng)然,初創(chuàng)公司確實(shí)更吸引那些喜歡在小團(tuán)隊(duì)里工作的人,其中有過創(chuàng)業(yè)經(jīng)歷的比例確實(shí)會更高。但是,這種特征為什么在 Bluesky 會突出到這樣的程度?

通過與團(tuán)隊(duì)成員的交談,答案可以歸結(jié)為:

  • 相信 Bluesky 提出的宏大使命。

  • 希望構(gòu)建去中心化 Web 體驗(yàn)。

Bluesky 正在構(gòu)建一種可擴(kuò)展的社交網(wǎng)絡(luò)。說起如何實(shí)現(xiàn)這種快速可擴(kuò)展性,那肯定是在大型科技巨頭有過從業(yè)經(jīng)歷的人才,比如 2000 年代初的谷歌工程師、2000 年代中和 2010 年代初期的 Facebook 工程師,還有 2010 年代的 Netflix 工程師等等。然而,Bluesky 最初招聘的幾位工程師都跟這些完全不沾邊。

創(chuàng)始工程師 Paul Frazee 分享道:“核心團(tuán)隊(duì)的很多經(jīng)驗(yàn),實(shí)際上單純來自之前的去中心化 Web 或者去中心化社交項(xiàng)目,來自大規(guī)模社交網(wǎng)絡(luò)的經(jīng)驗(yàn)反而很少。”

“我們在點(diǎn)對點(diǎn)網(wǎng)絡(luò)方面擁有豐富經(jīng)驗(yàn),而且對區(qū)塊鏈領(lǐng)域也給予了很多關(guān)注。對于不少團(tuán)隊(duì)初始成員來說,這已經(jīng)是他們第二次、第三次甚至第四次構(gòu)建去中心化網(wǎng)絡(luò)了。”

技術(shù)棧
Typescript 幾乎無處不在

后端幾乎完全是用 Typescript 開發(fā)而成,前端和移動端應(yīng)用也是一樣。如此一來,軟件工程師就能跨項(xiàng)目棧工作而無需切換語言。

為什么會選擇 TypeScript?Daniel Holmgren 給出以下幾點(diǎn)理由:

  • 事實(shí)上的 Web 標(biāo)準(zhǔn)語言。“JavaScript 以及由此衍生的 TypeScript 可能是當(dāng)前最接近 Web「通用語」的語言。我們認(rèn)為在協(xié)議的參考實(shí)現(xiàn)中用它來傳達(dá)核心思想是種順理成章的選擇。”

  • 可實(shí)現(xiàn)前端與后端語言共享。“在客戶端和后端之間共享實(shí)現(xiàn)能夠帶來更好的開發(fā)體驗(yàn),特別是確保雙方對于架構(gòu)系統(tǒng)有著同樣的理解。”

  • 提供適合 AT 協(xié)議的動態(tài)數(shù)據(jù)方法。“作為一種動態(tài)語言,TypeScript 非常適合處理我們在 AT 協(xié)議生態(tài)系統(tǒng)中找到的動態(tài)數(shù)據(jù)。”

  • 非常適合代碼生成。TypeScript 擁有非常出色的代碼生成生態(tài)系統(tǒng)。我承認(rèn) TypeScript 的官方實(shí)現(xiàn)只是提供了可解析為 AST 的工具,開發(fā)者可以對其進(jìn)行操作并輸出代碼。雖然應(yīng)用面不廣,但對我們卻有很大幫助。”

  • 非常適合小團(tuán)隊(duì)進(jìn)行原型設(shè)計(jì)。“TypeScript 是一種非常適合快速構(gòu)建場景的語言。它的運(yùn)行時非常強(qiáng)大,我們不必過多擔(dān)心內(nèi)存管理和并發(fā)性之類的問題。其類型系統(tǒng)非常符合人類思維方式和直覺,能夠提供所需結(jié)構(gòu),同時很少惹出不必要的麻煩。對于體量不大的早期團(tuán)隊(duì)來說,選擇這樣一種能幫助我們快速推進(jìn)原型設(shè)計(jì)的語言無疑是明智之舉。”

Node.js

后端的 TypeScript 代碼使用 Node.js 運(yùn)行時。團(tuán)隊(duì)擔(dān)心的一個問題就是如何對其進(jìn)行擴(kuò)展,畢竟 Node.js 應(yīng)用程序只在單個線程上運(yùn)行,而不會為每條請求創(chuàng)建一個新線程。也就是說,相較于那些能夠高效支持多線程的框架,Node.js 服務(wù)器能夠處理的并行請求要少得多。

然而,該團(tuán)隊(duì)發(fā)現(xiàn),橫向擴(kuò)展服務(wù)(即添加更多機(jī)器)并非難事,只需將應(yīng)用程序構(gòu)建為無狀態(tài)形式即可。根據(jù) Daniel 的回憶,他們通過測試證明了如下觀點(diǎn):

“有一次,我們有大概 192 個節(jié)點(diǎn)進(jìn)程運(yùn)行在 HAProxy 之后。這些進(jìn)程全都非常「無聊」,CPU 利率率僅在 1% 左右。但關(guān)鍵在于,無狀態(tài) Node 服務(wù)可以輕松實(shí)現(xiàn)橫向擴(kuò)展,而這正好符合我們的需求!”

用 Go 追求極致性能

后端最初只采用 TypeScript 一種語言,但隨著時間推移,他們又引入了 Go。但既然 TypeScript 已經(jīng)有千萬般好,為什么還要引入另一種語言呢?Daniel 的回答很簡單,為了追求性能:

“一部分更貼近底層的基礎(chǔ)設(shè)施服務(wù),例如 Realy 還有我們內(nèi)部的「Dataplane」,都對性能有著嚴(yán)格要求。它們往往涉及大量加密操作和底層 bit 操作,而 Go 語言明顯更擅長這些用例。具體來講,Go 擁有一款面向 Scylla(我們使用的數(shù)據(jù)庫)的分片感知驅(qū)動程序,這也使其成為與數(shù)據(jù)庫交互的理想選擇。”

在追求性能優(yōu)化的過程中,團(tuán)隊(duì)開始將多項(xiàng)服務(wù)從 TypeScript 重寫為 Go 形式。目前,Go 語言編寫的服務(wù)包括:

  • Palomar 等搜索服務(wù)。

  • 名為 Relay 的“firehose”服務(wù),其執(zhí)行大量底層操作與加密操作。

  • Dataplane。此服務(wù)名為“BigSky”,也是 Bluesky 中的少數(shù)閉源服務(wù)之一。其負(fù)責(zé)管理數(shù)據(jù),與 ScyllaDB、其他數(shù)據(jù)存儲方案(如 Redis)以及團(tuán)隊(duì)自主編寫的緩存存儲一道承載通道數(shù)據(jù)。

數(shù)據(jù)層:Postgres、ScyllaDB 與 SQLite

Bluesky 最初使用 PostgreSQL 作為數(shù)據(jù)存儲方案,但隨著負(fù)載增加,團(tuán)隊(duì)意識到應(yīng)當(dāng)將這種靈活性出眾、但可擴(kuò)展性有限的解決方案替換為靈活性較弱、但可擴(kuò)展性更強(qiáng)的平臺上了。

2023 年年中,遷移工作正式開始:

  • ScyllaDB powers AppViews.

  • 由 ScyllaDB 支持 AppViews。

  • SQLite 則成為個人數(shù)據(jù)服務(wù)器(PDSses)的首選數(shù)據(jù)庫。

后端到前端通信

Lexicon 模式用于描述 HTTP 端點(diǎn)和網(wǎng)絡(luò)中的所有記錄類型。這種方法能夠保障后端和客戶端之間的各類強(qiáng)類型契約和協(xié)議。

這種強(qiáng)契約對于去中心化網(wǎng)絡(luò)尤其重要。Bluesky 也是一套開放的微服務(wù)網(wǎng)絡(luò),因此需要在協(xié)議層面上施以嚴(yán)格約束。Paul Frazee 這樣解釋這個問題:

“大家可以將整個網(wǎng)絡(luò)視為一個開放的微服務(wù)網(wǎng)絡(luò)。在執(zhí)行微服務(wù)的過程中,其實(shí)就是在嘗試通過 schema 語言對其進(jìn)行系統(tǒng)化,以確保所有不同服務(wù)場景均遵守相同的契約。這種情況在單體架構(gòu)不太適用的微服務(wù)場景下其實(shí)相當(dāng)常見。”

構(gòu)建工具

團(tuán)隊(duì)使用 GitHub Actions 作為 CI/CD 技術(shù)棧。目前項(xiàng)目已經(jīng)公開運(yùn)行,因此大家可以自行查看具體細(xì)節(jié)https://github.com/bluesky-social/atproto/actions

Bluesky 協(xié)議代碼倉庫中的近期 CI/CD 運(yùn)行記錄。

這些 builds 本身會使用以下常見工具和技術(shù)來盡早發(fā)現(xiàn)質(zhì)量問題:

Linting:運(yùn)行靜態(tài)代碼檢查以捕捉編碼問題,并確保整個代碼庫的編碼風(fēng)格相一致。以下是 Bluesky linter 捕獲的問題類型示例:

若對未使用的變量進(jìn)行賦值,則會觸發(fā) linter 警告。最好不要在生產(chǎn)代碼庫中保留變量。

自動測試:運(yùn)行單元、集成與快照測試。

快照測試示例:

快照測試通過檢查 UI 是否符合預(yù)期(第 56 行,通過.toMatchSnapshot() 調(diào)用)以及“點(diǎn)贊”數(shù)量是否符合預(yù)期(第 58 行),來判斷是否存在問題。

移動與 Web 技術(shù)棧

Bluesky 的一個有趣之處,在于其網(wǎng)站、iOS 應(yīng)用乃至 Android 移動應(yīng)用全都出自同一位開發(fā)者之手。從 2022 年夏季到 2023 年初,工程師 Paul Frazee 獨(dú)自一人完成了這項(xiàng)開發(fā)工作。2023 年初,該應(yīng)用開始迎來外部貢獻(xiàn)者,同年 4 月第二位全職員工加入進(jìn)來。而實(shí)現(xiàn)這整套技術(shù)棧的,就是 React Native 以及 Expo:

談起為何選擇 React Native,Paul Frazee 解釋道:

“早在立項(xiàng)之初,我們就明確了覆蓋所有主流平臺的基本方針。再考慮到我們對于 TypeScript 的全面應(yīng)用,那可行的解決方案就只剩下了一種:React Native。相比之下,如果要維持兩套獨(dú)立的應(yīng)用程序代碼庫,那就相當(dāng)于要維護(hù)兩款獨(dú)立的產(chǎn)品。所有的東西都要實(shí)現(xiàn)兩次、所有的東西都要調(diào)試兩次,而且結(jié)果總會略有不同。”

當(dāng)然,Paul 也承認(rèn) React Native 絕不是什么神奇的“靈丹妙藥”:

“這活并不困難,有時候甚至令人抓狂。很多 Web 開發(fā)者都知道面向多款瀏覽器搞開發(fā)是多么讓人頭大,那同時面向原生 iOS 和 Android 平臺也是一樣。不過好在實(shí)際情況永遠(yuǎn)是在「輕松解決」和「徹底卡死」之間反復(fù)橫跳,但最終總能搞定。”

Expo 是一套用于對 Web、iOS 和 Android 上運(yùn)行的原生應(yīng)用進(jìn)行開發(fā)、審查和部署的通用平臺。Bluesky 于 2023 年 3 月打造出了這套平臺,盡管團(tuán)隊(duì)在控制新依賴項(xiàng)的引入方面一直非常謹(jǐn)慎,但還是希望它能管理好 builds 并培養(yǎng)起 Expo 模塊生態(tài)系統(tǒng)。

React Native 這個選擇甚至讓不少團(tuán)隊(duì)成員都感到驚訝。最初,Paul 只打算將 React Native 用于移動應(yīng)用,但后來他們發(fā)現(xiàn) React Native 在 Web 開發(fā)方面有著突出的管理易行性。Paul 解釋道,“我們發(fā)現(xiàn),有相當(dāng)一部分工作量直接照搬代碼就能完成。我們的共享代碼在各種平臺上都能運(yùn)行,從后端到各種不同系統(tǒng),這也是我們能依靠一支小團(tuán)隊(duì)打造出大規(guī)模社交媒體的一個重要原因。”

“一人”移動應(yīng)用

前面提到,Bluesky 的移動端應(yīng)用和網(wǎng)站都是由同一位開發(fā)人員 Paul Frazee 用一約一年時間開發(fā)完成的。如今,有六位工程師負(fù)責(zé)該應(yīng)用和網(wǎng)站,而協(xié)議和后端方面的負(fù)責(zé)工程師數(shù)量也大體相同。

那么,單憑一名經(jīng)驗(yàn)豐富的工程師,是怎么打造出一款具備高可用性的社交應(yīng)用程序的?下面來聽聽 Paul 的心得。

他從構(gòu)建協(xié)議入手,而沒有急于開發(fā)應(yīng)用程序。在最初的 6 個月后,Paul 同 Dnaiel、Jay 攜手合作,并與 Twitter 協(xié)商弄清楚了通信協(xié)議的工作原理。Bluesky 認(rèn)為協(xié)議才是更重要的部分,基于好協(xié)議的應(yīng)用程序一定會在市場上得到用戶的認(rèn)可。這個道理說起來簡單,但直到 2022 年他們才下定決心。Paul 表示,“我們其實(shí)早就想著未來會構(gòu)建應(yīng)用程序,畢竟協(xié)議開發(fā)應(yīng)該跟應(yīng)用開發(fā)相結(jié)合嘛。但我們最初覺得應(yīng)用程序應(yīng)該只是個原型。但隨著我們與 Twitter 的關(guān)系發(fā)生變化,我們才意識到除了開發(fā)底層協(xié)議之外,也必須要制作出能夠上手體驗(yàn)的完整應(yīng)用。這可以說是項(xiàng)目的一個小小轉(zhuǎn)變吧。”

Daniel 和 Devin 的后端團(tuán)隊(duì)同 Paul 領(lǐng)導(dǎo)的前端 / 應(yīng)用團(tuán)隊(duì)之間的關(guān)系,就是典型的前端 / 后端關(guān)系。他們共同制定功能規(guī)范,并討論每位成員具體負(fù)責(zé)哪些工作。之后,他們在各自的領(lǐng)域內(nèi)著手開發(fā),再協(xié)調(diào)最終成果。

Daniel 回憶道,應(yīng)用程序的構(gòu)建給協(xié)議的改進(jìn)提供了很大幫助,也讓工作變得更加有趣:

“最有趣的體驗(yàn),應(yīng)該就是看著我們的一個個靈感通過協(xié)議在社交應(yīng)用上得以實(shí)現(xiàn)。必須得承認(rèn),以純抽象的方式構(gòu)建 / 設(shè)計(jì)協(xié)議,確實(shí)不如親眼見證它在實(shí)踐場景下發(fā)揮作用那樣成就感滿滿。”

原文鏈接:

https://newsletter.pragmaticengineer.com/p/bluesky-engineering-culture


最近極客時間出了一個《面試后優(yōu)雅談薪》的專欄,目前還在內(nèi)測階段,主要是看市場反饋來定價,所以現(xiàn)在還是免費(fèi)階段,等上線了估計(jì)就可能收費(fèi)了。

干我們這樣的基本都求一個落袋為安,如果能多拿點(diǎn)薪資自然是很美的事,可很多童鞋壓根不知道如何談薪?


這里分享一下極客時間的這份內(nèi)測專欄,只申請到30個內(nèi)測名額,掃描下方二維碼自取,如果還能加得了客服就說明還有名額,如果無法添加就說明名額已經(jīng)完了。。。

掃描上方二維碼自取

EOF

你好,我是飛宇。日常分享C/C++、計(jì)算機(jī)學(xué)習(xí)經(jīng)驗(yàn)、工作體會,歡迎點(diǎn)擊此處查看我以前的學(xué)習(xí)筆記&經(jīng)驗(yàn)&分享的資源。

我組建了一些社群一起交流,群里有大牛也有小白,如果你有意可以一起進(jìn)群交流。

歡迎你添加我的微信,我拉你進(jìn)技術(shù)交流群。此外,我也會經(jīng)常在微信上分享一些計(jì)算機(jī)學(xué)習(xí)經(jīng)驗(yàn)以及工作體驗(yàn),還有一些內(nèi)推機(jī)會

加個微信,打開另一扇窗

C語言與CPP編程 C語言/C++開發(fā),C語言/C++基礎(chǔ)知識,C語言/C++學(xué)習(xí)路線,C語言/C++進(jìn)階,數(shù)據(jù)結(jié)構(gòu);算法;python;計(jì)算機(jī)基礎(chǔ)等
評論
  • 讓微弱脈沖信號更清晰——鎖相放大器集成Boxcar平均器在脈沖激光、泵浦-探測、時間分辨光譜、飛行時間質(zhì)譜等實(shí)驗(yàn)中,真正需要測量的信號往往只出現(xiàn)在一個很短的時間窗口內(nèi),卻被淹沒在遠(yuǎn)大于它的噪聲和背景之中。 針對這類穩(wěn)定重復(fù)的微弱脈沖與瞬態(tài)信號,賽恩科儀為OE2052雙通道數(shù)字鎖相放大器帶來全新的Boxcar Averager功能升級:在鎖相檢測之外,進(jìn)一步提供從周期波形觀察、門控測量到多周期平均的完整數(shù)字Boxcar測量鏈路。 Boxcar平均器,如何從噪聲中“截取”目標(biāo)信號?Boxcar平均器
    SSI_賽恩科儀 2026-08-07 15:49 29424瀏覽
  • 在物聯(lián)網(wǎng)從“萬物互聯(lián)”邁向“萬物智聯(lián)”的進(jìn)程中,LTE Cat.1憑借其在速率、成本與網(wǎng)絡(luò)覆蓋之間的完美平衡,正成為中低速物聯(lián)網(wǎng)市場的絕對主力。隨著2G/3G網(wǎng)絡(luò)的逐步退網(wǎng)以及新國標(biāo)對終端設(shè)備智能化、定位功能的強(qiáng)制要求,Cat.1模組迎來了爆發(fā)式的增長窗口。在這一關(guān)鍵節(jié)點(diǎn),基于華為海思Hi2131芯片設(shè)計(jì)的LTE Cat.1模組,憑借其在能效、射頻、架構(gòu)及物理規(guī)格上的底層創(chuàng)新,成功打破了“高性能必高功耗”的傳統(tǒng)魔咒,為行業(yè)提供了極具競爭力的連接最優(yōu)解。核心技術(shù)優(yōu)勢:重塑Cat.1能效與連接標(biāo)桿海
    用戶1778981989717 2026-08-05 21:04 210瀏覽
  • 摘要東莞市恒創(chuàng)連接器有限公司(HCHGCONN)是位于廣東東莞的連接器源頭制造工廠,專注于連接器國產(chǎn)替代、小間距大電流連接器、線對板連接器、線對線連接器、板對板連接器、電源連接器及定制連接器開發(fā)。公司面向工業(yè)自動化、新能源儲能、BMS、汽車電子、AI服務(wù)器、GPU供電、通信設(shè)備、醫(yī)療設(shè)備和智能家居等場景,提供從產(chǎn)品選型、替代評估、樣品驗(yàn)證到批量交付的一站式連接方案。恒創(chuàng)可支持 Molex、TE Connectivity、JST、Hirose、Samtec 等國際品牌部分系列的國產(chǎn)替代評估。常見替
    HC003 2026-08-07 10:14 222瀏覽
  • 一、方案簡介在Buildroot構(gòu)建的嵌入式Linux系統(tǒng)中部署Flutter應(yīng)用,主流有兩套成熟的開源方案,分別適配不同的顯示場景與開發(fā)需求:方案一:flutter-elinux(Sony開源方案)由索尼官方維護(hù)的嵌入式Linux Flutter工具鏈,既支持DRM/GBM直接渲染,也兼容Wayland、X11等多種顯示后端,場景適配性更廣。方案二:flutter-pi(輕量級嵌入器)一款輕量級Flutter引擎宿主程序,僅基于底層DRM/GBM接口實(shí)現(xiàn)渲染,無需依賴桌面環(huán)境,資源占用更低,更
    飛凌嵌入式 2026-08-07 09:34 224瀏覽
  • 做儲能項(xiàng)目,你是怎么選控制器的?隨著工商業(yè)儲能、電網(wǎng)側(cè)儲能的規(guī)模化落地,作為儲能EMS“大腦”的嵌入式控制器,直接決定了整套系統(tǒng)的運(yùn)行穩(wěn)定性、數(shù)據(jù)可靠性與項(xiàng)目落地效率。不少從業(yè)者都踩過類似的坑:接口數(shù)量不足要額外加裝擴(kuò)展模塊、戶外高溫導(dǎo)致設(shè)備宕機(jī)、電磁干擾引發(fā)數(shù)據(jù)丟包、軟件生態(tài)薄弱拖慢開發(fā)周期……選對儲能控制器,核心要盯準(zhǔn)四個關(guān)鍵維度。首先看接口能力:全鏈路覆蓋,才是降本的核心。一套完整的儲能系統(tǒng),需要同時對接PCS、BMS、智能電表、溫濕度傳感器、除濕機(jī)、煙感消防主機(jī),還要連接急停開關(guān)、斷路器
    飛凌嵌入式 2026-08-11 08:46 161瀏覽
  • 樓宇自控里的“巴別塔”一棟智慧樓宇、一個產(chǎn)業(yè)園區(qū)里,暖通空調(diào)運(yùn)行著廠商私有協(xié)議,照明系統(tǒng)遵循專屬通信標(biāo)準(zhǔn),變配電、門禁安防各成體系——設(shè)備間數(shù)據(jù)壁壘森嚴(yán),上位平臺對接全靠定制化 “翻譯” 開發(fā),不僅成本高企,交付周期也難以管控。這就是樓宇自控行業(yè)多年的痛點(diǎn):協(xié)議林立、封閉林立。而破局的鑰匙,早在30多年前就已經(jīng)寫好了——BACnet。作為ASHRAE制定的樓宇自控國際標(biāo)準(zhǔn)協(xié)議,BACnet是如今全球樓宇自控系統(tǒng)(BAS)互聯(lián)互通的“通用語言”。新風(fēng)機(jī)、冷源群控、變配電、照明、門禁,凡是需要被樓宇
    飛凌嵌入式 2026-08-10 09:26 274瀏覽
  • 做藍(lán)牙音箱的工程師大概都碰過這個局面。產(chǎn)品要連手機(jī)放歌,要本地播開機(jī)提示音和按鍵音,還要接 App 做配網(wǎng)和狀態(tài)上報(bào)。三件事拆開,早先的常規(guī)做法是音頻藍(lán)牙一顆料、數(shù)傳藍(lán)牙一顆料、本地播放再掛一顆小 MCU 加一片 Flash。板子越畫越大,BOM 越算越貴,待機(jī)電流和固件工作量也跟著漲。WT2605C 出來以后,這套需求可以集成到一顆芯片,就是 WT2605C-32N,該芯片采用QFN32 封裝,4×4 毫米,把音頻藍(lán)牙、BLE 數(shù)傳和 MP3 本地播放三樣全包了。對藍(lán)牙音箱來說,最實(shí)在的好處就
    唯創(chuàng)知音語音芯片 2026-08-06 15:14 414瀏覽
  • 產(chǎn)品使用18V供電,配套4串鋰離子電池,需要設(shè)計(jì)一個充電器。因?yàn)檩斎?8V,電池最高 16.8V,壓差僅 1.2V。因?yàn)閴翰钐 J褂瞄_關(guān)型的充電控制芯片不穩(wěn)定。嘗試自行設(shè)計(jì)一個。整體采用分立三極管 + TL431架構(gòu),分4個功能單元:使能控制回路、限流環(huán)路、TL431 精密恒壓反饋環(huán)路、PNP 功率管主功率輸出回路;實(shí)現(xiàn)完整鋰電池充電邏輯。使能控制回路按鍵按下:5V 電壓經(jīng) R12 (2kΩ) 送入 NPN 管 Q3 基極,Q3 飽和導(dǎo)通,對地拉低 R1、R2 組成的分壓控制節(jié)點(diǎn)電位;該節(jié)點(diǎn)直
    southcreek 2026-08-07 13:45 518瀏覽
  •                                                                        
    廣州鐵金剛 2026-08-06 17:44 222213瀏覽
  • 做電池供電攝像頭、可視門鈴、戶外安防的同學(xué)應(yīng)該都踩過這個坑:攝像頭要拍,ISP、sensor、無線模塊全得開著,整機(jī)電流動輒幾百 mA。一節(jié) 18650 撐不了幾天,用戶投訴“怎么又沒電了”。有人會說:加個 PIR 人體紅外不就行了?問題是 PIR 怕熱、怕寵物、怕隔著亞克力/玻璃殼,而且只能感知“有溫差的人體移動”,靈敏度飄忽。真正省電的思路應(yīng)該是:讓攝像頭平時徹底睡死,只有“前面有人/有動靜”時才被一鍵喚醒——而負(fù)責(zé)這個“看門”角色的,最合適的是一顆低功耗雷達(dá)。一、為什么是雷達(dá),而不是 PI
    唯創(chuàng)知音語音芯片 2026-08-07 14:44 242瀏覽
  •        很多人只見過封裝在SMD外殼里的小尺寸晶振,卻不知道一顆2016、1612甚至1210封裝的微型石英晶振,從一塊巴掌大的石英原礦,到最終能穩(wěn)定起振的成品,要經(jīng)過十幾道精密工序。它內(nèi)部的石英晶片厚度最薄不到20微米,比普通A4紙的1/5還薄,整個生產(chǎn)過程里哪怕0.1微米的誤差,都會直接廢掉整批產(chǎn)品,這也是小尺寸晶振過去長期依賴進(jìn)口,國內(nèi)廠商花了十幾年才啃下量產(chǎn)硬骨頭的核心原因。1. 原石定向切割:0.01度的角度誤差都不能有小尺寸晶振的第一步,
    TKD泰晶科技 2026-08-07 08:43 566瀏覽
我要評論
0
點(diǎn)擊右上角,分享到朋友圈 我知道啦
請使用瀏覽器分享功能 我知道啦
主站蜘蛛池模板: 娃娃脸少女美国| 蛇姬恋免费观看完整版| 小东西四根手指行吗百合| 名门闺秀全集免费| 卖百科全书的女人完整版电影免费观看| 兄弟的嫂子和小姨子| 凯登克劳斯壮志凌云3第三部| 夏日福星粤语版| 希望树刘寅| 韩国年轻子1| 龙过鸡年| 我的前男友是我丈夫的属下| 疯狂的有夫之妇| 韩剧控制老板| 电视连续剧爱| 男生女生嗟磋嗟磋磋| 初恋是CV大神电视剧| 锅匠 裁缝 士兵 间谍电影| 战狼欧式少女全集观看高清| 何以笙箫默免费观看全集 | 电视剧青盲在线观看| 黑衣女人| 老同学5普通话| 少林寺传奇4| 电影美乃雀主演的电影在线观看 | 《法国空姐2019法版》| 航天员蔡旭哲首次出舱:感觉良好| 韩剧逆转女王国语版| 杭州三维地图查询| 乡村爱情第三部全集| 杰西简全集在线播放免费观看| 刑警使命电视剧全集免费观看| 需要爸爸的种子电影完整版| 欲望的火花免费观看完整版| 灵域 电视剧| 平凡的世界1-56集免费观看| 绣春刀在线观看| 小欢喜全集免费观看| 黑道悲情全集| 在线播放:SSPD-128 怪盜 女蝶 天海翼-凌辱快感 - 国产高清传媒 | 《女超人》2013麦乐迪视频| 短剧《焚心》免费观看| 女人的抉择全集百度影音| 壮志凌云2011女版满天星| 蜜桃成熟时电影观看| 《卖楼的女销售》| 天空的遇难船普通话免费观看| 漂亮的保姆HD电影| 中文字Dl幕岳 在线观看| 俺家小院| 十天十夜| 高清钢铁森林未删减| 维修工的艳遇韩国| 坎贝奇第二部曲品味人生在线观看 | 跑男第三季在线观看| 快乐至死韩剧在线播放免费| 裙子里面有里野兽| 人民的名义18集| 大戏看北京综艺| 安斋拉拉作品在线观看| 《查莉成长日记第一季》电视剧| 满清十二帝| 大侦探波罗第十二季| 杀死伊芙| 年轻的岳母4电影播放| 电影热辣滚烫今日正式上映| 1992意大利电影地爆天星| 风华鉴电视剧| 美和花园电影在线观看最新集数| 母亲主动给孩子降火好吗| 巜商务旅行同行戴帽子的电影| 空姐郭玮| 《哪吒2》免费完整版在线| 乌丫传说| 最美孝心少年2020颁奖典礼| 唐朝好男人在线观看全集免费播放| 霍元甲郑伊健| 绥江县| 女子公厕废纸篓发现弃婴| 麦子交换3普通话版本在线观看| 江照黎明| 束缚游戏全集| 诗朗诵《永远的丰碑》| 爱我几何网址| 三大队电影完整版免费观看 | 巡回检察组43| 性刑房3悬吊捆绑视频| 西虹市首富 电影| 走进石锁沟在线观看| 大叔在线观看| s9797| 牙医姊妹电影完整版| 宝贝试着感受我| 八戒八戒电影在线观看播放 | 地狱管教所| 抖音美好奇妙夜直播中| 两个好媳妇电影完整版 | 铿锵三人行| 釜山行2正片观看| 班玛县| 妈妈的女儿| 《美丽妻子替丈夫还债》电影完整版| 徐小凤经典歌曲| 满天星禁忌5| 黑衣人小方| 战狼6欧式| 彭佳慧残酷的温柔| 《女超人》2013麦乐迪视频| 隔绝影评| 丑闻2 电影| 岳飞传刘兰芳| 再见那一天| 神医安道全| 电视剧我是余欢水| 黄泉的使者全集观看| 禁止的爱善良的小姨子免费观看| 韩国电影夫妻的世界| 美国达人秀2013| 可可西里6| 电影金刚归来| an4u| 佐罗 西班牙| 夜半梳头中的黄段开头| 爱在离别时全集| 美国睫毛膏3免费播放| 今天的她们在线电视剧免费播放 | 潘多拉之镜| 黑雾 电视剧| 奇妙发型屋完整版| 老严有女不愁嫁片尾曲 | 少年包青天第一部全40集| 插曲痛30分钟全集免费看| 卡萨布兰卡歌曲| 越策越开心全集| 金希贞与黑人大尺度作品| 大师兄免费观看高清版在线观看| 建湖县| 电视剧我是太阳| 疯狂动物城中文版免费观看| 同乐会 台剧| 电视剧邻居也疯狂| 树上有个好地方高清在线观看| 呱呱呱视频高清观看| 战长沙电视剧全集| 粉红大白菜| 夺命速递| 妻子8免费全集在线观看| 案发现场第二部全集| 麦乐迪电影| 梁以沫冷夜沉免费阅读| 你比星光美丽1-40集免费观看| 电视剧天地剑心| 惊弦电视剧免费完整版在线观看| 星辰变第6季在线观看完整版| 生化危机5电影| 公之浮手中30| 魔女游戏国语| 代替丈夫D中文| 绝世唐门第60集免费观看| 人猿泰山1995时长1小时34分意大利叫什| 小姑娘免费观看全集电影| 电影《完美的售后服务》叶爱来| 鸡毛飞上天观看免费全集 | 高清午夜的倾心旋律未删减| 荒岛女儿国| 延禧攻略69集| 《缚乳之锁》| 创:战神| jizz俄罗斯| 缘分五月在线看片| 美景之屋6在线观看高清完整版| 皮囊之下在线观看| 女版《壮志凌云》免费| 门事件电影直播| 翼舞和部长一起去出差旅是什么电影| 乔布斯生平简介| 《瓜达卢佩的玫瑰》在线播放在线免费观看| 彭佳慧残酷的温柔| 保罗禁忌5大结局禁忌| 《娜塔莎》电影在线观看| 《女警察坠落2》| 《亢奋》| 私人家教1983版电影免费观看| 韩剧我的女孩国语在线观看| 美国开放酒店2| 黑天鹅高清在线观看完整版| 凶降喜讯| 日剧华丽一族| 一年恋一天| 赘婿当道全集免费观看| 粉红女郎电视剧| 你礼貌吗是什么梗| 真实伦 乱| 孽欲狐鬼| 虎踞龙盘电视剧| 红娘子电视剧全集优酷| 致命的危机| 国家机密| 颤抖吧阿部一季电视剧免费观看| 妻子成为临时模特的日本电影| 《天相》动漫免费观看| 弱杀 电影| 花开有时颓靡无声水千丞全文阅读 | 牙医姐妹郝板栗完整版电影| 都市欺诈| 嘎哇在线观看高清电影| 猛兽侠1| 法国空姐5在线看免费高清满天星全集| 月上海电视剧全集在线观看| 韩国短剧《隐形帽子》| 奔跑吧兄弟2023免费观看| 《法国空乘2016法版》| 大耳朵图图动漫| 满天星2电影免费播放| 妻子的谎言 电视剧剧情免费观看 《黑帮少爷爱上我》在线观看 | 龙与地下城3:魔神降临| 湾岸midnight| 黄绮珊离不开你歌词| 高清《17岁》电影陈修如| 珠江台今日关注直播| 沉香如屑免费完整全集| 我们与驻在先生的700日战争| 男免费观看高清完整版电视剧| 爱国让你想起什么| 日本伦理电影替夫还债| 雪花神剑全集| 丁俊晖一年收入| 高清《死人开关》电影| 白峰电影84集免费播放| 泰剧4分钟在线观看| 侄女开发日记免费完整| 福尔摩斯小姐| 商务旅行戴绿色帽的女老板电影| 神秘博士第八季| 亲妈电视剧演员表名单| 箭在弦上12| 电影爱的躯壳| 韩国大尺度吃奶真做爰| 《法国空乘10》完整| 生逢灿烂的日子 电视剧| 电视剧光荣大地| 上海电视台直播| 冻结地球全集观看| 小二姐可不胖| 泰囧电影下载| 陪讨厌部长去出差旅在线| 国庆60年阅兵| 《堕落的女律师》电视剧在线观看| 幽游白书在线玩| 电影《千金小姐》免费观看| 吴尊友:新十条出台时机恰到好处| 人猿泰山HR版未删减版下载| 在厨房开车| v酒店第一季在线观看免费版| 大河之水电视剧36集免费观看| 《绝对恋爱命令》动漫| 陆贞传奇7| 碟中谍12免费高清观看版| 爱在日落之前吻戏| 飞虎出征电影| 妻子做社长秘书偿还债务| 代表建议严炒作网红儿童账号| 特殊游泳教练免费| 校墓处1| 《初体验8》在线观看完整免费版电视 | F杯巨乳邻居| 军事不当行为未删减版百度云资源| 台湾版1987版渔夫| 知几未来| 废后逆袭:登顶太后全集免费| 《山2》电影| 邓紫棋 春晚| 巜放荡的小峓子伦理在线观看| 树影迷宫电视剧在线观看全集免费 | 猎犬 第二季全集观看| 保罗莉娜黑白配电影免费观看| 时光正好电视剧在线观看| 一起愁愁愁30免费观看完整版| 名侦探柯南免费观看全集完整版| 站着再来一次26集全在线观看| 青楼十2房在线观看| 保险公司推销员8中字手机| 小欢喜电视剧全集免费观看完整版| 英雄祭1—40集| 欧洲性旅行百度影音| 叶罗丽第一季免费观看全集 | 爱我几何电影在线观看免费莫尼卡 | 正在播放 青楼名妓之桃花扇HD - 免费在线观看 | 鲨鱼影视 | 一仆二主大结局| 地狱护士| 雷霆扫毒 国语| 螺丝钉第三季| 初二数学难题| 一生一世电视剧免费看| 仁者黄飞鸿国语| 情人电影完整版免费播放| 女人的村庄全集| 以家人之名电视剧全集免费| 养母的花样年华| 高清午夜的倾心旋律未删减| 97在线看| 魔兵传奇国语版全集高清| 需要爸爸的种子在线观看完整版| 西环浮尸| 武松之蒋玲玲最新更新| 星辰变第五季直通大结局| yellow视频在线免费观看| 仙逆108集完整版在线观看| 酒店1-90集全集在线观看| 孕妇滴着奶水做着爱A| 电视剧装台免费观看| 哈法欧尼| 电视剧回响免费观看完整版| 成全动漫完整版免费高清 | 一江春水向东流在线观看| 法国护士长无删减版观看| 我的岳父大人| 小密逃| 荣誉法则(成人版)| 黑暗侵袭1电影| 镖人动画| 叶山小百合《新上门女婿》| 《猎杀》免费观看| 带跳DAN坐公交车| 西班牙电影《火腿火腿》| 空蝉之森电影在线观看完整版高清| 反黑路人甲粤语在线观看| 恭喜发财歌曲原唱播放| 全球禁播的电影| 爱壹帆电视剧| 妈妈的朋友3电影在线观看| 鹰隼大队电视剧| 电影《瓜达卢佩玫瑰》| 《五十度灰》| 女子护卫队1973满天星高清版| 色即是空3 韩国完整| 图木舒克市| 亲爱的我爱上别人了| 密爱韩剧电影版翻译成中文 | 成熟妇人的下午茶电影| 误判粤语电影免费观看| 《八尺夫人》意大利电影完整版免费| 李黎跳芭蕾舞视频| 媒体:高铁之大理应放得下卫生巾 | 初二数学难题| 进击的巨人樱花| 高清《荒岛美人鱼》电影在线播放| 外星人对女忍者| 《花与蛇9之终极阴谋》| 智者无敌白鸽| 金花瓶1之爱的供养| 逃英乱港分子染上奥密克戎| 斯诺登电影| 佐佐木明希电影在线观看| 新倾国倾城在线| 凯登克罗斯在线| 春心荡漾369| 足球宝贝在线观看完整版法国| 高清《高嫁柳嫁家》在线看| 男女一起愁愁视频免费观看高清完整版| 全职法师第五季动漫免费观看全集| 黑帮帮大佬和我的365| 新上海滩国语| 法国电影《黑帮团伙》在线观看| 局长玩寡妇的大乳| 失忆的劳拉电影| 《叫一声妈妈》大结局| 徐良小凌演唱会| 青海男子将亲生儿子以3万元卖掉| 公浮之手| 拯救瑞恩| 地爆天星在线高清免费观看| 多鹤电视剧全集免费| 金鸡sss 电影| 火线三兄弟高清全集| 终结者6:黑暗命运| 电影特别的酒店| 《安娜与父亲》麦乐迪| 道德的火焰| 女超人麦乐迪版| 喊麦现场| 兵在哪马在哪俑在哪导游你在哪| 天浴 下载| 齐天大性之大破盘丝洞| 《她被搬运工侵犯》免费观看| 心理罪电视剧全集| 心心念念| 黄沙渡电视剧免费播放在线观看| 法在身边| 日本jIzz| 逍遥龙哥| 呼伦贝尔市| 韩国迷人保拇3| 盲井全集免费观看完整版| 《缚乳之锁》| 真实处破疼哭在线播放| 农场保卫战| 中文字幕无人区| 天狼星行动| 《美景之屋6》_完整在线观看免费观看 | 母亲4高清免费观看韩国| 蜜桃成语1997| 医妃不好惹短剧全集| 好日子全集在线播放| 熟年中出交尾六十路七十路超清版 | 九一传剧mv免费观看影视大全| 发际红第四部| 泰坦尼克号A版啄木鸟| 河南曲剧借簪子| 绣春刀3无间炼狱免费观看| 肢体的绣感在线看完整版免费观看 | 邳州砍刀帮| XL司令动漫第一季全集免费无马| 君扬兄茶杯头| 渔夫荒野正版免费观看| 巴霍巴利王| 阿旺传奇| 法国《啄木鸟:灭火行动》免费观看| 小奥尼尔厉害吗| 白峰电影全集免费全集| 村民在墓穴躺坐一排乘凉:人多不怕| 特殊美容师待遇4| 《浴血黑帮:不朽传奇》| 中餐厅5免费观看完整版| 入室讨债奸汙妻子电影在線觀看| 高清午夜的倾心旋律未删减| 三年成全免费观看在线| 孙杨事件| 蝶舞天涯百度影音| 特殊诊所三级未删减版资源| 战昆仑电视剧| 两个母亲ID| 国号 百家讲坛| 床上观戏| 精品国色天香卡一卡二拓卓越的| 永不磨灭的番号33| 变形记20140714| 玉蒲团2玉女心经| 电视剧蓝狐| 《法国航空4》| 薛平贵与王宝钏44| 鸭王2下载| 灭火宝贝在线观看高清| 小猪佩奇的动画片| 销冠的秘密3在线观看| 彼得格里尔的贤者时间第一季| 终极三国全集| 木下凛凛子AVHD101高清在线| 爱情真善美40| 屯昌县| 学校2013韩剧全集在线观看| 魔幻手机第一部| 天海翼香汗女教师在线播放-手机高清免费国语メイリン モデルコレクション-SL2 | 洛浦县| 柳舟记电视剧在线观看全集免费| 红唇2错种| 木子凛子电影免费观看| 大笑江湖优酷| 二小放牛郎| 私人家教在线观看免费完整版| 诱惑小妈| 女朋友韩国电影免费观看完整版| 《哥布林的窑洞》勇士| 小大夫电视剧| 美乃雀的电影| 李一桐免费观看全集| 斗罗大陆60集| 小凤新婚电影手机在线免费观看| 日喀则怎么读| 契约宠妻:总裁超会撩全集免费| 莉娜安德森在线全集免费| 《那山那海》今晚开播| 三座大山是什么| HD版《激战丛林》完整版在线观看免费| 《爱在离别时黄奕》免费观看| 去有风电视剧免费观看高清| 地爆天星无删减完整版| 无名天使电视剧国语版免费观看| 禁忌5年转一代禁忌| 交警一把抓住300多斤电缆线卷筒| 香港明星足球队将踢贵州村超| 飘雪厨房激战| 以法之名免费观看全集电视剧| 全职法师在线观看| 《法国空乘2018》在线完整观看视频 | 芒果香谢军| 鬼子暴行少女电影VCD正片| 唐宫美人天下迅雷下载| 前夜电视剧全集免费播放在线观看| 黑白黑白配免费免费观看视频| 好想告诉你第一季在线观看| 新活佛济公全集| 总统夫人星克莱尔完整版电影| 《野花》电影| 天赋异禀在线观看免费| 客途秋恨| 京城绯闻电视剧| 徐若萱电影| 渣男的本愿真人版| 黄昏恋电影| 《千金爱上佣人》完整版| 爱情雨全集| 我的少年时代在线完整免费观看| 爱我几何150分钟完整电影在线观看完| 不可饶恕 电影| 密室大逃脱第二季第二期| 天海翼《被犯女教师》| 情感对白| 淬火年代电视剧免费在线观看| yellow视频在线观看免费高清无吗 | 老师去学生家家访的电影| abo成结模拟动画演示| 千王之王免费观看全集| 人民的名义2全集免费观看| 私人教练1983年意大利 | 青春荷尔蒙1| 青面修罗免费观看| 日韩mmm| 30而已| 全州县| 功夫厨神| 我是蜘蛛又怎样风车动漫| overflower第一集完整版| 野花电影手机观看免费高清| 咱们结婚吧在线观看| 《维修师傅艳遇》韩国在线观看| 钟汉良版天龙八部| 机动战士z高达剧场版1| 女儿协议满天星版是台湾还是大陆 | 男女一起愁愁愁的电影有哪些| 绝世双骄剧情| 电视剧苍天| 牙医姐妹日本电影1986年在哪里看的| 原来她很甜1v2| 河南电视台法制频道今天7:50| 美丽小蜜桃3:美丽人生,优酷| 《倒插门》大结局| 高清《地道战》免费观看| 法国空姐4免| 糊涂小天使2| 齐天大圣孙悟空| 护士凯登电影| 太极拳战泰拳| 霍尔的移动城堡国语| 啄木鸟《荣誉守则》2013 | 三年中国在线观看免费观看高清电视| 播放米老鼠| 今生有你电视剧| 《倔强退魔师》1-4集免费观看| 京都疑云主题曲| 电影婚礼2008| 杨敏思1—5集国语电视剧免费观看 | 坎贝奇无憾完整版免费观看 | 《好好的时光》| 一起愁愁免费观看完整版| 密战电视剧在线播放| 生命之树迅雷下载| 义子的侵犯电影完整版| 丫丫预计今日返京| 能听到我的心吗| 钢铿锵锵锵锵锵锵在线观看人民 | 圣特罗佩的姑娘们在线播放| 老千全集完整版免费观看| 猛鬼食人胎国语版免费观看| 年轻的女保险销售2| 斗罗大陆免费完整观看207| 夺粮剿匪记在线观看| 已婚妇女的下午中文电影| 浏阳河歌曲| 掩耳盗邻 第二季未删减 | 我的妹妹不可能那么可爱h| 妈妈的职业2观看全集免费高清在线| 《逆流而上的你》全集| 向涟苍士献上纯洁未增删樱花| 隔壁邻居很美味| 电影暴风骤雨| 爱情男女全集免费观看免费| 美姊妹牙医| 变形金刚2 720| 诺亚方舟:创世之旅| 瓜达卢佩的玫瑰电视剧| 3d肉蒲团 蓝燕| 斗罗大陆208| 星克莱尔总统夫人1997 | 赴汤蹈火2025免费观看| 狂野时代电影| 潘多拉之镜在线播放| 湘西诡案电影完整版免费播放| 咱们结婚吧29| 冢本监督昭和系列越南女子别动队在线观看完整版 | 黄飞鸿电影全集| 末世女强短剧全集| 动漫人物打卜克免费观看| 特邀外卖| 陕西广播| 爱子情深全集| 荫道BBWBBB高潮潮喷| 加米亚尼伯爵夫人满天星| 韩剧哦亲爱的| 女杀油地狱在线观看| 韩国电影遥控器控制老板| 韩国最新消息今天| 好好的时光电视剧| 在线观看瓜达卢佩的玫瑰| 你太过分了韩剧| 超市监控4天拍下上百次盗窃| 《激战丛林》HD完整版| 新白发魔女传练霓裳| 画师电影完整版在线观看| 高压监狱2免费高清原声满天星2019| 不能错过的只有你电影免费观看完整| 98古惑仔在线观看粤语版| 做aj的电视剧大全免费观看中国国语| 一女嫁三夫电视剧免费观看| 罪恶黑名单第一季| 《西游 降魔篇》| 美丽又紧致凯帕克电影在线| 枯骨之余猜生肖| 地味变动漫完整版免费在线观看| 都市剧集在线电视剧免费观看| 三年电影免费大全在线| 新奥特曼 在线观看| 咒术回战第三季在线观看| 3D鉴宝电影在线观看| 大侦探第十一季| 爱在春天| 昆明辟谣城投专家会议纪要| 浮之手中字免费版| 他年她日电影| 大友梨奈| 保姆一级片| 两个妈妈吗| 秘密的爱| 《啄木鸟:军事不当行为》看| 堕入地狱在线观看| 西游记插曲大全| 爱丫爱丫免费高清观看完整版| 电视剧幻影全集| 她的潮汐| 林一的未来官场小说| 《法国护士长》2006| 关之琳所有电影| 《咒术回战 第三季》| 《机械师6》电影在线看| 名侦探柯南通往天国的倒计时| 终极对决电影| 部长出差的日子电视剧| 奇人奇案| 道师爷3电影在线观看完整版| 一拳超人第二季免费观看高清| 二十一世纪性格爱情指南英国| 捉妖记bt| 决战风铃渡电视剧全集高清| MSD-005 欧妮 维修工的心跳艳遇(下) 疼痛凌辱高潮快感-在线观看-338TV | 落翅女的黄昏| 播放_刚结婚陪部长出差的日子免费在线观看_看星星电影 | 隐形帽子高清在线观看| 余炜南昌| 唐朝浪漫英雄剧情介绍| 21世纪爱情指南免费版| 斗破苍穹年番177集完整版| 黑心鬼国语| 法国空姐3免费高清原声满天星奔跑吧 | 好想告诉你2动漫| 《品味人生》在线观看完整版高清| 一出好戏在线观看| 偷心俏佳人下载| 你是我的幸福在线观看| 刻晴大战史莱姆免费观看外服| 《沉默》完整版| 新宿事件票房| 新金银悔1-5免费看| 《课后辅导女教师》电视剧动漫| 一又二分之一的夏天| 战狼6免费高清999加拿大版| 张柏芝无极| 王者二弟| 蜡笔小新国语全集高清| 意大利八尺夫人在线观看| 两个月亮| 非诚勿扰2023年最新一期| 女版战狼10国语高清免费观看| 向往的大海| 女演员曾黎主持央视跨年晚会| 蜈蚣咒未删减版完整版恐怖电影 | 唔黐线唔正常| 情义无价电视剧| 美国电影《爸爸播种》豆瓣| 特种部队2高清| 风华鉴电视剧| 梨花落尽又逢君| 激情文学激情五月天| 火口山的两个人| 墙头马上电影| 姐妹牙医1986在线| 韩国辣舞| 极度兽性在线观看| 闻喜县| 吉泽眀步犯美人女教师| 董卿的点评| 堡垒电影| 浮之公9高清在线观看| 分手大师 电影| 君扬兄茶杯头| 一树梨花压海棠完整版电影免费| 克莱尔总统之夜全集| 风之刀粤语| 别让我看见 电视剧| 妻子8免费完整高清中文版电视剧| 电视剧天梯| 办公室玩弄娇喘秘书在线观看| 最后的较量电视剧| 《急诊护士》在线免费观看| 决战紫禁之巅在线观看完整版| 爱你所爱电影| 义子侵犯免费观看| 都市外乡人电视剧 | 售楼员的秘密| 语义错误动漫未增删| 年轻的母亲在线观看中文版完整版 | 1—5集国语版免费普通话| 美好世界韩剧电视剧免费观看| 捏造未删减| 部长来家做客无删减版中文| 我的小姨全集在线观看| 末路电视剧| 小羊没烦恼7分钟视频在线观看| zzzxxx免费在线观看| 美国派4 美国重逢| 吸血鬼偶像 电视剧| 憨豆电影| 疯狂二人房间荷尔蒙爆发原声视频大| 高清《怪谈》免费观看| 蜜糖姐姐恋爱吧短剧免费观看| 坎贝奇3部电影免费观看| 伍六七第5季全集免费观看 | 欢笑老弄堂| 高清《地狱乐 第二季》电视剧| 电影《水手服的饲养》| 咱们结婚吧mp4下载| 欲海情魔无删减完整版在线播放| 女超人在线观看| 角头2国语普通话完整免费观看| 电视连续剧追| 如如影视剧在线播放妈妈的职业| 除却巫山邓家佳DVD版| 电车魔女2| 歌手在线观看免费完整版| 高清《斛珠夫人》免费观看| 和讨厌的部长一起去出差旅电影在线观看| 庆余年免费观看| 电影《少爷与女佣》完整版| 理发店特殊待遇中字国语版| 爱回家之开心速递国语| 王保长新篇电视剧| 江苏卫视跨年彩排大片| 韩国电影在线观看修理工的艳遇| 湖南卫视风云| 憨豆特工1| 男按摩师伦理片| 尸妖电影完整版在线观看| 台湾小可| 无颜之月在线观看全集电视剧高清 | 修师傅艳遇电影| 警察锅哥| 茶道少女樱花动漫| 渔民家三个姑娘2的播出时间| 瓦克利护士电影完整版| 爱情公寓第一季免费版| 空中滑翔| 法国女超人麦乐迪在线播放免费观看 | 爱的定义泰剧| 计春华简介| 一天内全球多地发生客机事故| 《法国空姐2019法版》中文版| 便当争夺战| 忘年恋电影| 谈情说案大结局| 卖房子的女销售3韩国| 他们是在玩火1984禁忌| 怪盗基德的结局| 日常卿卿电视剧免费观看全集| 男生女生一起愁愁愁电视剧观看大全| 呼吸过度动漫全集完整版在线观看| 法国农场全新正版| 风水弃少:改运旺家全集免费| 聊斋先生全集| 未来日记迅雷下载| 女保险推销员8| 猪猪侠第二季| 五台山奇情| 摇曳露营第一季| 爸爸想要你的种子| 夏克立自曝因家暴指控被关监狱 | 错位温情短剧免费观看| 商务旅行2019版免费观看| 机械师2:复活 电影天堂| 鹰眼黑寡妇| 满天星《荣誉守则2》| 日本三级维修工的艳遇| 范丞丞演的电视剧| 紫川电视剧| 措美县| 东京塔越南女兵电影未删减版 | 3d柔铺团2电影完整版| 姐姐的朋友5有翻译怎样免费观看| 非亲父子| 蝴蝶飞飞大结局| 《除却巫山》无删减版| 日本剧情片修理工的艳遇| 小小竹排江中游| 食为奴国语全集| 高清《圣墟》动漫| 3对1三人一次性体检什么电影| 神隐40集极速免费观看| 地下城与西游记全集| 我愿意在线观看免费完整版电影| 凯登克罗斯全部电影在线观看 | 古惑仔之猛龙过江| 水润女人未删减版| 我的校花妹妹2| 黑雾 电视剧| 孤单又灿烂的神-鬼怪 百度云 | 男按摩师影院在线观看| 公主日记1| 奥特之父的哥哥| 最好的遇见电视剧| 法国空4在线观看整板| 特种兵之火凤凰45| 世界奇闻怪事图片| 高清《笑刃荒途》电影| 酒店1-60集完整版播放| 真心英雄电视剧免费观看完整版| 后宅争斗短剧全集| 头文字d第四部| jizz日本在线观看| 夏家三千金第一部| 楼上的女邻居电视剧剧情介绍| 爱我就别想太多免费| 圣特罗佩斯的女孩| 思春期诱惑下载| 活死人黎明1| 超神学院第三季| 祼婚之后| 双女任务 在线| 妻子的工作| 镖行天下前传之决战天涯| 白日梦我电视剧在线观看免费版 | 浴火奔腾浴火红| 电影南京照相馆完整版免费观看 | 刘国梁刘国栋刘国正的关系|