From 6c1c4c4628c253ac2bb0656096eef7e758205955 Mon Sep 17 00:00:00 2001 From: Mohammad Asif Siddiqui Date: Tue, 24 Jul 2018 04:26:50 +0530 Subject: [PATCH] Add CC plugin design (#284) --- docs/design-guides.rst | 9 +++++++++ docs/design-guides/cc-plugin.rst | 15 +++++++++++++++ docs/design-guides/images/CC-Plugin.png | Bin 0 -> 70801 bytes docs/dev-guides.rst | 14 +++++++------- docs/index.rst | 5 +++++ 5 files changed, 36 insertions(+), 7 deletions(-) create mode 100644 docs/design-guides.rst create mode 100644 docs/design-guides/cc-plugin.rst create mode 100644 docs/design-guides/images/CC-Plugin.png diff --git a/docs/design-guides.rst b/docs/design-guides.rst new file mode 100644 index 000000000..47c8d511c --- /dev/null +++ b/docs/design-guides.rst @@ -0,0 +1,9 @@ +Design guides +========================= + +.. toctree:: + :maxdepth: 4 + :glob: + + design-guides/cc-plugin + diff --git a/docs/design-guides/cc-plugin.rst b/docs/design-guides/cc-plugin.rst new file mode 100644 index 000000000..ceaa72484 --- /dev/null +++ b/docs/design-guides/cc-plugin.rst @@ -0,0 +1,15 @@ +Config Client Plugin +==================== + +Config Client +############# +Go-Chassis provides the functionality to pull the configs from different config-centers, to keep the go-chassis extensible to support multiple config-center this Client was implemented as a plugin. + +More Details of the plugin can be found `here <../dev-guides/archaius-config-source-plugin>`_ + +Currently Go-Chassis has two implementation of this plugin for Huawei Config-Center and Ctrip Apollo Config-Center. + +Basic Sequence diagram for this plugin is given below. + + .. image:: images/CC-Plugin.png + :alt: CC Plugin Sequence Diagram \ No newline at end of file diff --git a/docs/design-guides/images/CC-Plugin.png b/docs/design-guides/images/CC-Plugin.png new file mode 100644 index 0000000000000000000000000000000000000000..16213e1ade53bf3f3f535f18f41f36e6fa077b45 GIT binary patch literal 70801 zcmeFZcT`l{mOV_e04Wdzp#YJj1tOt{k`X0?B7)>lNRCRDETSMe=O{@e=bVw8BxjJE zL2?rKc6r}>eeHhT{rmp!G3wsI@SLi%&kk$PHP@Wm=lL^9{Oc6g(a_NFrKQAPprK(R zz<<&>5b!U9_r`Ccq0yj8i-{_|)!t0Fc5qw#sO&Wk#qIYj+gQiqkKY`(Oixea>RLHC zylG6xR(Ua;z6(6Fo-V*CiD>va*Sw@Vk@b$16(i*4 z>PXL16Rvz8C7tO=9HpDzJ@YPUFzBA&MJJD@Gucq5`!0&5kK~s!pEhkH4)$0(VWmN% zd(H^1KDOF;MfaT#byd=A`YTR*L*|W7?{G+@A3-vtCaNNFYze_#1UEIxCw5Uc)#2fQ zt1{r~^Qo$699sf#wYOj0feC{Hv5rYcgCTx1*yDa^S>8PiDlu@E=eLnudqHqh;0^`` z4aP^*Rg!X6I7Y$~aMh+{B*FI`)c@=q&ZkEq;P-vga?N}mVH1Hi(iGZdQ^|vy7OLN& zeR}j6T)p0s>*w=mg%Di5oon}njs`PT`2Sw>|8X?&wzBi8I*-QmZcG|PY2_I8B_1uu zy`H!ir8!UnCw|HmQhPLEc67RuG}%h|+I*+(+;W*ezheISq|-*OB;VEXta~}7Wkn;; zq)*P)5rD1PqjmaA=o-ALi#sLm|UtjoS;en=??d34UAZ6Z#1&^xHyDVL(3cyc!w z?yAi48K;eLjxOc}xo&xp3;pQ#xbWy?lK^5&&ZTh0iSk*ujc$cVy_27FJi|(gl|Htk z3oT?iB~J+WzHQeY&oIBlw(8B!uQPp+Q}EvPXxyl^mZzC%hm!x|U~p?x$Gz0^hVWSR zy2#~8vjn9D*T!gm(o@0RZ)Gcq&Q3`iiq9df-l3gfF_grDW@Y1MyAct3$Y6Y=h}N*I zY#|WXM4a!oQCo}~MA_*CoXS*B+fR;%$qSn_d*K(OdiCOzcfnuJVb--gF8Jzb@-@$( z9Orm?l=eD&M=QwmFpzsh)qe2l!%Clp@1LLGFT9!iNH%fXrd!u2(J`ZTuk%6c=;iT@ zb6*U}`VYS=T!wfg@iX4f7S&s2JeMa6L7y6?+^;Um&bO;4S5t#51-44U&SQI34#^Fp zb<>t>F3&c~E{-NA+o;_)CtQ{yR3`j6dyPx!5N&sybF^F!hXb4Uy4YTSNwAL%;9HKi zERxkQChNzUuvz`=JyErhw^29W$F~x1-zRiDRxvw(|>9d`#} zcld-$$V$b2ufSG2eUPnr`INP+hE>b0t;&@|o26d9mD@%Wyr!jJX7rv=32axS3W0v- znR&awS2uJ8hQC^hwAEMoS4N!W`ovGrm`P;~3j?#9LN6ikemutCX#~zUi?yoBwBPEs zS&pa~*)iKs+o_Owh(0*O?FOA>sA2jweG@c`D@EZjP~A0Ec{XeK;VJ{Ad4Wd&dn>H0 zhi7sOjF3*)u)0~UflZ%K`QV)yun4lu*e>!_^0mvrB)IJ+4j7KIQ1Rn-?JV(FF<(b4Y>xirdf|LcE6I)}1j}+&vTf z=8gMsxlq}8-R=#YoN-)9gfy?ZuG05+nb)z25ATM)cf8oH-kC}w#;1=(t5=73`3O+l zy{{VmY(l%QVQ8H)hd67vycbN{cFN3Uu#VD9;PD9R7(nL z;u%;ETQ@V&>AovqUFSqFB)JsD8MA-gbRy*AJ)W}B%If!`v|O!QOmdiUWF1gAZHdO+ zp?qC42Vdw=$ku-0@+nbC`}LGno86kM7^9R!)8d<-!$PN5rVy_VCKHtiyd7zU1-!TE z9*zF&js|oyhna>*sn0S4d5rScr%4p$=ICxrJ#?2m_(Xr|zP`(jh%cV9?iwf6FrOQk zLP(2AB5HT&oZ6JU7a@L4$Cl)>=kuVqvf~P@ z_6NBop@TGP$!?%cl|xldkPPM7hPxx{8V4;P=%BhUQ1}svsW+AVo8$6PZD&3k$whAx z1eEL~3J7GHG`N}%3c4SMtn8Rw43oE% zgTDq_LY31{R@4F2h{)Yh`uS$DxcssBu+|1dA%kh-Vwk5Alblj14)m)4jAg{7z}{P$ zXTvg!90m^yXLy>q5#sHkYklL%i?)-_`dPR0N?i78mwpL&wAiOlPGF-@VZ~6)7CL;< zj$kyF%ufKf&N)VMbd$Xz zy??yg-<)oExHUOyW%Ri142uqXzne2igG`i(q#ysq8>!=0uUfxFw@c+ZoxbSPk2i)8 zn~bOyWL_1v-JvvjF<}>~&Vup8_ER`}H%XW~4;|7~wg}=?N}g7)TV=d|dA_q#mr_g< zPg0?7hTN`LAP_iPP1Wjzebvnwq)qU%F(Z%efX8*`j(VVb`Qu=3AwTo3IWqt9W)G8; zqig+Wdk;EkJNR@33SE1eBcPk|l*HF28f(-{zSbKwE_<_bjB41TL+_al2_2k%a~n@zWRt@tIzA-fV1$s^x6aqA z$q5|}DOMXpM^h{|FF)YYPkXmZrfRiIeN2J&V|Ci>xSvnXno_{JVQWfkH9z0`vF^Uk zyZGUGqpFn8C8mw*?wVSTBTVpZ0q6VMa&9q*{dK7kOKI}R1gV;NTP`c(kmbW z6}lWI^zOat5&C2tod~OZIr3EPBoYoNWthWBijY}A1)H2=ZK`@w>gyrUm1hvMPy}&- zUR#xV4ii4qtWwqa1MYHzX6SWqg_aNfv#VF(Pq4c$=z|334{tQc1a8A|0pNr`>V}^mLS2R%QWkasUiwkiuSJ=XnktayaU}WF`Y5AIgzVV`IlvBMTM7X z%-&ErweS}L;*YSZK!&G~gi2vUK_Ck$v11`xrNQuRuniuo8V+Qj!5rMxdW0sH{2cVt z$N7;Kv1A*NblL`vR4Ia2Q=tCO-{e40-7T{$T>xER>q16|M#LBne)n^Q9XrwLZSWfj zsioUWATSJJi#@{fMQ!H4Q5pXya2K{uuEy3|a1+(+HLOQi*YAO=jFwt*Sp44L>WXo$ zz%B6Zhv)#;(}CY7k=7W!=|KR}%0bar8_EKS;HEYQbaX=xQ*Up#t#ULHw=KHnDNQl zNCYzmjN3mx$!TC9Wtie)Suns<|JNr$3LpyNm!m>{fF}6Y=aDoRlyD_pZjFC_{rB(i zhk#LI$jWmj1;hHUk4Gqqc=-CpwCr!c02)LGn2BdfTF1=)@ig$*d#H)>Vs6O%Z@+*} zv?_+0ZkbivYJWUX21SOXHGLibS9?)^eD?vb!mnUAUHr!b!%>r0`lDj;pYKhKn%ybu zRYre2knuifUFh{MhJU^{19+7+v0=NuKOXq}1! ThDs_eD7yqMGXF5NB?tz5#xrB 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 WHBu66>ttZyXZOy1JM!>$!G8zF3wX=` literal 0 HcmV?d00001 diff --git a/docs/dev-guides.rst b/docs/dev-guides.rst index 259ec9d73..66bc4cac9 100644 --- a/docs/dev-guides.rst +++ b/docs/dev-guides.rst @@ -2,12 +2,12 @@ Development guides ========================= .. toctree:: - :maxdepth: 4 - :glob: +:maxdepth: 4 + :glob: - dev-guides/how-to-implement-handler - dev-guides/archaius - dev-guides/archaius-config-source-plugin - dev-guides/how-to-write-cipher - dev-guides/how-to-extend-protocol + dev-guides/how-to-implement-handler + dev-guides/archaius + dev-guides/archaius-config-source-plugin + dev-guides/how-to-write-cipher + dev-guides/how-to-extend-protocol diff --git a/docs/index.rst b/docs/index.rst index c8307c6ec..cd16eecc1 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -22,6 +22,11 @@ Welcome to go-chassis's documentation! dev-guides +.. toctree:: + :maxdepth: 2 + :caption: Design Documentations + + design-guides