簡介: 閒魚增加有千面,看他72般變架構
做者:閒魚技術——劍辛
最近兩年用戶增加在互聯網行業受到愈來愈多的關注,各大互聯網公司都會成立專業團隊作用戶增加,閒魚也不例外。咱們常提到的用戶增加概念,其實包含兩層含義。第一層是用戶數量,用戶數量的增加有效的手段包括定位潛在客戶、擴展優質渠道、提高漏斗轉化效率等;第二層是用戶質量,這個層面咱們更關心用戶的價值和留存。而爲了用戶數量和質量,產品上須要足夠多的玩法覆蓋全部用戶,對於同一類用戶,產品也會但願多個玩法賽馬,因此增加玩法的特色就是豐富多樣又靈活多變。ide
通常狀況下技術同窗最不肯意遇到這種業務需求,由於若是case by case的開發,會致使項目週期長,沒法快速應對玩法變化而加班。所以須要將各種玩法總結抽象業務模型,沉澱通用基礎能力,下降玩法開發成本,閒魚用戶增加在最近半年進行了一些摸索實踐,接下來將從總體和具體玩法來闡述如何針對增加玩法作抽象和沉澱。阿里雲
閒魚用戶任務體系首先從總體來看,增加玩法繁多且多變,但也有必定規律,包括如下特徵:3d
經過對玩法的概括,我將增加玩法定義爲用戶任務,經過定義任務的生命週期,將增加玩法中共通的邏輯沉澱爲系統能力,具體玩法在任務生命週期節點開發定製邏輯,這套體系就是閒魚用戶任務體系。中間件
從圖中能夠看到系統中有兩類角色:blog
而任務的生命週期分爲如下幾個節點:生命週期
閒魚用戶任務體系與業務無關,是從增加玩法總體概括抽象,定義任務生命週期,沉澱玩法通用能力的任務系統。事件
閒魚逛賺玩法上一節介紹的是基於增加玩法總體抽象的任務體系,這一節主要介紹具體增加玩法如何經過任務體系擴展支持。以閒魚逛賺玩法來講,逛賺玩法爲週期類任務,週期爲7天,用戶在週期內天天可經過瀏覽10個商品完成當天任務,任務完成後領取現金紅包獎勵。在指定的第2天、第5天、第7天有特殊獎勵,吸引用戶連續參與活動,提高活躍和留存。開發
分層架構在閒魚用戶任務體系上擴展支持逛賺玩法,任務體系將逛賺玩法拆分的比較清晰,逛賺玩法強調週期和特殊節點獎勵。分層架構以下:同步
PS:基礎產品層爲閒魚業務系統,底層依賴層爲阿里內部封裝中間件服務,在阿里雲或開源基本都有對應產品。
經過具體逛賺玩法需求,我在任務體系之下抽象了三塊領域服務:週期域、權益域和排期域。
領域服務內部基於策略模式實現,好比周期域分爲滾動週期和滑動週期,計數模式分爲固定、連續和累計,都是週期模式的一種實現;權益域內部細分爲積分權益、紅包權益等。
邏輯實現基於分層架構的邏輯實現以下:
玩法服務是經過模板模式封裝的任務生命週期,對修改關閉,對擴展放開的方式定義了以下節點:
每一個節點會有任務級別的通用實現,並預留擴展點,逛賺玩法經過實現擴展點的方式定製功能,主流程經過任務體系串聯,實現了業務定製和開發效率在必定程度上的兼顧。
總結展望閒魚用戶增加團隊在最近半年發力增長大量玩法覆蓋閒魚用戶羣體,業務和技術上都在探索如何快速支持玩法快速開發配置上線,提升研發效率,支持業務快速試錯和實驗,閒魚用戶玩法體系爲技術側對於業務玩法的抽象總結和增加方法論沉澱的一部分,歡迎感興趣的同窗加入咱們一塊兒建設閒魚用戶增加技術體系。